86% found this document useful (7 votes)
7K views

Manual Técnico 640 PDF

Uploaded by

sabazioss
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
86% found this document useful (7 votes)
7K views

Manual Técnico 640 PDF

Uploaded by

sabazioss
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2795

Preliminary

Technical Manual

TNC 640

NC Software
34059x-05

January 2015
2 HEIDENHAIN Technical Manual TNC 640
Content

1 Update Information
1.1 General information..........................................................................23

1 Update Information No. 1


1.1 Overview............................................................................................25
1.1.1 Released service packs .......................................................25
1.1.2 Released NC software ........................................................25
1.2 NC software 34059x-01.....................................................................25
1.3 NC software 34059x-02.....................................................................26
1.3.1 Important notes on updating software................................26
1.3.2 Description of the new functions ........................................32

1 Update Information No. 2


1.1 Overview............................................................................................79
1.1.1 Released service packs .......................................................79
1.1.2 Released NC software ........................................................79
1.2 NC software 34059x-02.....................................................................79
1.3 NC software 34059x-03.....................................................................79
1.4 NC software 34059x-04.....................................................................80
1.4.1 Important notes on updating software................................80
1.4.2 Description of the new functions ........................................86

1 Update Information No. 3


1.1 Overview..........................................................................................103
1.1.1 Released service packs .....................................................103
1.1.2 Released NC software ......................................................103
1.2 NC software 34059x-05...................................................................104
1.2.1 Important notes on updating software..............................104
1.2.2 Description of the new functions ......................................107

January 2015 3
2 Introduction
2.1 Meaning of the symbols used in this manual ..............................129
2.2 Would you like any changes, or have you found any
errors? ..............................................................................................129
2.3 Proper and intended operation......................................................129
2.4 Trained personnel ...........................................................................129
2.5 General information........................................................................130
2.5.1 HSCI interface ...................................................................133
2.6 Overview of components ...............................................................134
2.6.1 MC main computer, HDR hard disk and SIK .....................134
2.6.2 CC 61xx controller units ....................................................147
2.6.3 UEC 11x(FS), UMC 11x(FS) controller unit with
integrated inverter and PLC ..............................................149
2.6.4 UMC 111(FS) controller unit with integrated inverter
and PLC.............................................................................152
2.6.5 PLC input/output systems with HSCI interface ................153
2.6.6 PLC input/output systems with PROFIBUS-DP ................157
2.6.7 SPI expansion modules.....................................................159
2.6.8 PSL 13x low-voltage power supply unit ............................160
2.6.9 BF 7xx display unit ............................................................162
2.6.10 TE 73x, TE 74xx keyboard units ........................................163
2.6.11 MB 7xx machine operating panel......................................166
2.6.12 HSCI adapter for PLB 6001(FS) OEM-specific
machine operating panel ...................................................167
2.6.13 Handwheels ......................................................................168
2.6.14 IPC 6641—Industrial PC for Windows ..............................175
2.6.15 Industrial Thin Clients ITC 7xx...........................................176
2.6.16 Key symbols for the TNC 640 ..........................................178
2.6.17 Key symbols for HR 410 ...................................................186
2.6.18 Touch probes ....................................................................192
2.6.19 MS 110 / MS 111 installation kit .......................................195
2.6.20 Other accessories .............................................................196
2.6.21 Documentation..................................................................197
2.7 Brief description ..............................................................................198
2.7.1 User functions ...................................................................211
2.8 Software ..........................................................................................212
2.8.1 Designation of the software..............................................212
2.8.2 PLC software ....................................................................213
2.8.3 Additional control loops or software options.....................213
2.8.4 NC software exchange on the TNC 640 ...........................222
2.8.5 Installing a service pack ....................................................230
2.8.6 Special features of the software .......................................231
2.8.7 HEROS 5 operating system ..............................................233
2.8.8 Media Player – support for special file formats .................236
2.8.9 SELinux .............................................................................237
2.8.10 Functional safety (FS) ........................................................242
2.8.11 Monitoring hardware changes ..........................................243
2.8.12 Data backup ......................................................................244
2.9 Released NC software ....................................................................245

4 HEIDENHAIN Technical Manual TNC 640


3 Mounting and electrical installation
3.1 General information........................................................................247
3.1.1 Safety precautions.............................................................247
3.1.2 Degrees of protection .......................................................248
3.1.3 Electromagnetic compatibility ...........................................249
3.1.4 ESD protection ..................................................................250
3.2 Environmental conditions ..............................................................252
3.2.1 Storage and operating temperatures.................................252
3.2.2 Heat generation and cooling..............................................254
3.2.3 Limit values for ambient conditions ..................................255
3.2.4 Installation elevation..........................................................255
3.2.5 Mounting attitude of components in the electrical
cabinet...............................................................................256
3.2.6 Mounting attitude of UMC 111 (FS) ..................................257
3.2.7 Mounting attitude of UEC 11x (FS) ...................................258
3.2.8 Mounting attitude of MC 7422, MC 7522, MC 7222,
MC 6222............................................................................259
3.2.9 Mounting attitude of BF 750 .............................................260
3.2.10 Mounting attitude of BF 760 .............................................261
3.2.11 Mounting attitude of PLB 6xxx..........................................262
3.3 Handling the HDR hard disk...........................................................263
3.4 Mounting the Solid State Disk (SSD)............................................264
3.5 Overview of components ...............................................................265
3.6 HSCI..................................................................................................271
3.6.1 Introduction .......................................................................271
3.6.2 Topology............................................................................275
3.6.3 HSCI interface ...................................................................276
3.7 TNC 640 connection overview .......................................................277
3.7.1 Designation of the MC and IPC main computer units.......277
3.7.2 MC 7522............................................................................278
3.7.3 MC 6241............................................................................279
3.7.4 MC 6242............................................................................280
3.7.5 MC 6341............................................................................281
3.7.6 MC 6542............................................................................282
3.7.7 MC 6541, MC 6641...........................................................283
3.7.8 IPC 6641............................................................................284
3.7.9 Industrial Thin Client ITC 755 ............................................286
3.7.10 Industrial Thin Client ITC 750 ............................................287
3.7.11 Industrial Thin Client ITC 760 ............................................288
3.7.12 Model numbers for the CC controller units.......................289
3.7.13 CC 6106.............................................................................289
3.7.14 CC 6108.............................................................................290
3.7.15 CC 6110.............................................................................291
3.7.16 UMC 111FS.......................................................................292
3.7.17 UMC 111 ...........................................................................293
3.7.18 UEC 11x ............................................................................294
3.7.19 UEC 113 with DC-link connection .....................................295
3.7.20 UEC 11xFS with DC-link connection .................................296
3.7.21 PLB 62xx ...........................................................................297
3.7.22 PLB 62xx FS ......................................................................297
3.7.23 PLB 61xx ...........................................................................298
3.7.24 PLB 61xx FS ......................................................................298
3.7.25 PLD-H and PLA-H I/O modules .........................................299

January 2015 5
3.8 Supply voltages in the HSCI system .............................................305
3.8.1 Current consumption of the HSCI components ................307
3.8.2 X90: +24 V-NC output of the UxC 11x(FS) ........................308
3.8.3 X101: NC power supply ....................................................309
3.8.4 Power supply of the CC 61xx............................................310
3.8.5 PSL 13x low-voltage power supply unit ............................316
3.9 MS 110 / MS 111 installation kit for double-row
configuration ...................................................................................327
3.9.1 General information...........................................................327
3.9.2 Double-row configuration ..................................................328
3.9.3 Connection overview ........................................................330
3.10 UxC 11x (FS): Power supply and motor connection....................334
3.10.1 UMC 111 (FS)....................................................................334
3.10.2 UEC 11x (FS) .....................................................................337
3.11 UxC 11x (FS): Meaning of the LEDs...............................................345
3.12 Power supply for PLC outputs .......................................................346
3.13 Power supply for PLB 6xxx (FS).....................................................348
3.14 Meaning of the LED on PLB 6xxx ..................................................349
3.15 Power supply for control-is-ready signal......................................350
3.16 Drive controller enable ...................................................................351
3.17 Digital PLC inputs/outputs.............................................................352
3.17.1 UxC 11x (FS): Digital PLC inputs/outputs..........................362
3.18 Analog PLC inputs/outputs............................................................369
3.19 Field bus systems............................................................................372
3.19.1 PROFIBUS-DP ...................................................................372
3.19.2 PROFINET-IO ....................................................................375
3.19.3 PROFINET-IO and Python .................................................380
3.20 IOconfig............................................................................................386
3.21 Buffer battery in MC 7xxx(T), MC 61xx(T) ....................................389
3.22 Buffer battery in MC 6441, MC 6541, MC 6641.............................391
3.23 Buffer battery of the MC 6542, IPC 6490 .......................................393
3.24 Buffer battery in MC 6240, MC 6241, MC 6341.............................395
3.25 Encoder connections .....................................................................397
3.25.1 General information...........................................................397
3.25.2 Position encoder input .....................................................398
3.25.3 Speed encoder input .......................................................401
3.26 Connecting the motor power modules (only CC 61xx) ...............407
3.27 Analog nominal value output ........................................................408
3.27.1 CMA-H 04-04-00—Pin layout ............................................410
3.28 Touch probes...................................................................................413
3.29 Data interfaces ................................................................................415
3.29.1 USB interface ....................................................................418
3.29.2 HDL interface ....................................................................419
3.30 MB 720(FS) machine operating panel ...........................................420
3.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine
operating panel ...............................................................................431

6 HEIDENHAIN Technical Manual TNC 640


3.32 TE 730, TE 720 keyboard unit.........................................................444
3.33 TE 735 (FS) keyboard unit ..............................................................446
3.34 TE 740 keyboard unit ......................................................................449
3.35 TE 745(FS) keyboard unit ...............................................................451
3.36 BF 750 15-inch TFT display unit .....................................................454
3.37 BF 760 19-inch TFT display unit .....................................................456
3.38 Handwheel input.............................................................................460
3.38.1 HR 4xx (FS) or HR 5xx (FS) portable handwheel ...............460
3.38.2 HR 520FS, HR 410FS safety-oriented electronic
handwheels .......................................................................464
3.38.3 HR 550FS handwheel with wireless transmission............470
3.38.4 HR 130 panel-mounted handwheel...................................489
3.38.5 HRA 110 handwheel adapter ............................................490
3.39 CML 110 capacitor module.............................................................492
3.40 Connecting cables: Specifications.................................................494
3.41 Dimensions ......................................................................................496
3.41.1 MC 6241............................................................................497
3.41.2 MC 6341, MC 6x51, IPC 6341 ..........................................498
3.41.3 MC 6541, MC 6641, IPC 6641 ..........................................499
3.41.4 MC 6242............................................................................500
3.41.5 MC 6542............................................................................501
3.41.6 MC 7522............................................................................502
3.41.7 MB 720(FS) .......................................................................503
3.41.8 TE 720 / TE 730 .................................................................504
3.41.9 TE 735(FS) .........................................................................505
3.41.10 TE 740 ...............................................................................506
3.41.11 TE 745(FS) .........................................................................507
3.41.12 BF 750 ...............................................................................508
3.41.13 BF 760 ...............................................................................509
3.41.14 ITC 755 ..............................................................................510
3.41.15 ITC 750 ..............................................................................511
3.41.16 ITC 760 ..............................................................................512
3.41.17 CC 6106.............................................................................513
3.41.18 CC 6108 / CC 6110............................................................514
3.41.19 UMC 111(FS).....................................................................515
3.41.20 UEC 113(FS), UEC 111FS ID 1075825-xx,
UEC 112FS ID 1038694-xx................................................516
3.41.21 PL 6xxx (FS).......................................................................517
3.41.22 PLB 6001 (FS)....................................................................518
3.41.23 PSL 130 .............................................................................519
3.41.24 PSL 135 .............................................................................520
3.41.25 MS 11x ..............................................................................521
3.41.26 Adapter block for the data interface ..................................522
3.41.27 USB hub ............................................................................523
3.41.28 Line-drop compensator .....................................................524
3.41.29 Handwheels ......................................................................525
3.41.30 Touch probes.....................................................................531
3.41.31 CML 110............................................................................546
3.41.32 USB hub for operating panel (ID 582884-xx) .....................546
3.42 Grounding diagram for TNC 640 with modular
HEIDENHAIN inverter system and PSL 130 ..................................547

January 2015 7
3.43 Grounding diagram for TNC 640 with modular
HEIDENHAIN inverter system and power supply unit
integrated in UV(R) .........................................................................548
3.44 Basic circuit diagram for TNC 640 .................................................549
3.45 TNC 640 cable overview, CC and MC in electrical cabinet..........550
3.46 TNC 640 cable overview, CC and MC in operating panel............551
3.47 TNC 640 cable overview, UEC and MC in electrical cabinet .......552
3.48 TNC 640 cable overview, UEC and MC in operating panel .........553
3.49 Cable overview for TNC 640—Accessories...................................554
3.50 Cable overview for TNC 640—Encoders .......................................555
3.51 Cable overview for TNC 640—Inverter system ............................556

4 Machine parameters
4.1 General information........................................................................557
4.2 The "Machine Parameters" mode of operation ...........................559
4.2.1 Calling the configuration editor .........................................559
4.2.2 Entering and changing machine parameters .....................561
4.2.3 Accessing machine parameters via MP numbers.............574
4.2.4 Managing configuration files .............................................577
4.2.5 Sorting file content............................................................578
4.2.6 Attribute information .........................................................579
4.2.7 Access protection / Options..............................................588
4.2.8 Update rules ......................................................................589
4.2.9 Removing syntax errors ....................................................609
4.2.10 Resetting the update version ............................................609
4.2.11 Backup of parameters .......................................................610
4.2.12 Saving OEM-specific backup with the configuration
editor and restoring it ........................................................612
4.2.13 Resetting system settings ................................................613
4.3 User parameters..............................................................................614
4.3.1 Configuration of the user parameters ...............................615
4.3.2 Example: ...........................................................................622
4.3.3 XML commands for creating the layout files ....................624
4.4 The KeySynonym function.............................................................627
4.5 Allocation of configuration data ...................................................629
4.6 Structure of a parameter file..........................................................631
4.7 MP subfiles ......................................................................................634
4.7.1 Syntax of machine-parameter subfile................................634
4.7.2 Load and edit an MP subfile via the configuration
editor .................................................................................635
4.7.3 Activating the MP subfile via PLC .....................................638
4.7.4 Displaying/editing data records in the configuration
editor .................................................................................639

8 HEIDENHAIN Technical Manual TNC 640


4.8 Reading and writing machine parameters in NC programs .......641
4.8.1 Reading machine parameters in NC programs
(CFGREAD)........................................................................641
4.8.2 Writing machine parameters in NC programs
(CFGWRITE) ......................................................................645
4.9 Reading or changing machine parameters via PLC
modules ...........................................................................................647
4.10 Switching parameter sets ..............................................................656
4.11 List of machine parameters ...........................................................667
4.11.1 "System" group ..................................................................667
4.11.2 "Channels" group ...............................................................812
4.11.3 "Axes" group ......................................................................851
4.11.4 KeySynonym .....................................................................957
4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers ....958
4.12.1 Measuring systems and machine axes .............................958
4.12.2 Positioning and feedback control ......................................961
4.12.3 PWM interface (DSP) ........................................................964
4.12.4 Spindle control (1st spindle) ..............................................969
4.12.5 Integrated PLC ..................................................................971
4.12.6 Serial interface...................................................................972
4.12.7 Touch probe ......................................................................972
4.12.8 Tool touch probe for tool measurement............................973
4.12.9 KinematicsOpt...................................................................973
4.12.10 Tapping..............................................................................974
4.12.11 Display and programming..................................................974
4.12.12 Machining and program run ..............................................976
4.12.13 Hardware...........................................................................977

5 Modules and PLC operands


5.1 Overview of modules......................................................................979
5.2 Overview of the PLC operands ......................................................988
5.2.1 Groups of PLC operands ...................................................988
5.2.2 PLC operands of the General Data group..........................988
5.2.3 PLC operands of the Operating Mode Group group .........990
5.2.4 PLC operands of the Machining Channels group ..............991
5.2.5 PLC operands of the Axis group........................................994
5.2.6 PLC operands of the Spindle group...................................996

January 2015 9
6 Configuring the axes and spindle
6.1 Machine structure ...........................................................................999
6.1.1 TNC 640 of the machine, adapting....................................999
6.1.2 Definition of axes ............................................................1000
6.2 Configuration of machining channels .........................................1003
6.2.1 Configuring a machining channel ....................................1003
6.2.2 Traversing the reference marks ......................................1008
6.2.3 Returning to the contour (block scan) .............................1009
6.3 Configuration of axes ...................................................................1013
6.3.1 Axis designations and coordinates..................................1015
6.3.2 Programmable axes ........................................................1018
6.3.3 Physical axes...................................................................1022
6.3.4 Display of axes on the screen .........................................1034
6.3.5 Kinematic properties of axes...........................................1040
6.3.6 Manually operated axis (counter axis) .............................1042
6.3.7 Introducing a new NC axis ..............................................1044
6.4 Encoders ........................................................................................1055
6.4.1 Type of position encoder.................................................1055
6.4.2 Signal period of encoders................................................1059
6.4.3 Distance-coded reference marks ....................................1068
6.4.4 Connecting the encoders ................................................1070
6.4.5 Connecting the encoders, PWM output on the CC 61xx 1072
6.4.6 Connecting the encoders to the UEC 11x.......................1077
6.4.7 Defining the traverse direction ........................................1079
6.4.8 Encoder monitoring.........................................................1083
6.4.9 Linear and torque motors ................................................1089
6.5 Analog Drives ................................................................................1091
6.6 Reading and writing axis information ........................................1093
6.6.1 Reading axis information.................................................1093
6.6.2 Writing axis information—activating and deactivating
axes.................................................................................1101
6.7 Traverse ranges.............................................................................1112
6.7.1 Configuring traverse ranges ............................................1113
6.7.2 Switching the traverse range ..........................................1120
6.7.3 Machines with several working spaces / alternating
table machining ...............................................................1121
6.7.4 Changing the milling heads .............................................1125
6.7.5 Comparison: Traverse range switchover / Changing
the head on the iTNC 530 andTNC 640 ..........................1128
6.8 Software limit switches ...............................................................1129
6.8.1 Overwriting software limit switches ...............................1130
6.9 Lubrication pulse...........................................................................1131
6.10 PLC axes.........................................................................................1132
6.10.1 Synchronizing Functions (Option #135) ..........................1147
6.10.2 Hirth coupling ..................................................................1161

10 HEIDENHAIN Technical Manual TNC 640


6.11 Axis-error compensation..............................................................1164
6.11.1 Backlash compensation...................................................1166
6.11.2 Linear axis error compensation .......................................1171
6.11.3 Nonlinear axis error compensation..................................1173
6.11.4 Compensation of thermal expansion...............................1180
6.11.5 Compensation of static friction .......................................1182
6.11.6 Compensation of sliding friction......................................1183
6.12 Machine kinematics ......................................................................1186
6.12.1 Configuring the machine kinematics ...............................1189
6.12.2 Reading / changing the kinematics in the NC program ...1209
6.12.3 Finding/activating kinematics through the PLC ...............1211
6.12.4 Kinematic switch-over .....................................................1213
6.12.5 Temperature compensation in the kinematics model .....1216
6.12.6 KinematicsOpt.................................................................1225
6.13 Tilting axes ....................................................................................1234
6.13.1 "Tilt working plane" function (software option #8) ...........1234
6.13.2 Virtual tool axis (VT) .........................................................1240
6.14 Parallel axes...................................................................................1241
6.15 Gantry/synchronized axes ...........................................................1243
6.15.1 Gantry axes .....................................................................1244
6.15.2 Master-slave torque control ............................................1255
6.15.3 Brake test for synchronized axes ....................................1263
6.16 Reference marks............................................................................1267
6.16.1 Definition .........................................................................1267
6.16.2 Traverse the reference marks .........................................1268
6.16.3 Defining the process of traversing the reference marks .....1272
6.16.4 "Traverse Reference Points" operating mode..................1283
6.17 The control loop ............................................................................1286
6.17.1 Block diagram of control loop..........................................1286
6.17.2 Relation between jerk, acceleration, velocity and
distance ...........................................................................1287
6.17.3 Geometry filter ................................................................1289
6.17.4 Feed-rate smoothing .......................................................1292
6.17.5 Nominal position value filter ............................................1295
6.17.6 Look-ahead ......................................................................1307
6.17.7 Advanced Dynamic Prediction (ADP) ..............................1325
6.17.8 Interpolator ......................................................................1327
6.17.9 Position controller............................................................1328
6.17.10 Activating and deactivating position control loops ..........1337
6.17.11 Feed-rate enable..............................................................1341
6.17.12 Speed controller ..............................................................1342
6.17.13 Filters in the speed controller and position controller
when using the CC 61xx .................................................1346
6.17.14 Filter order for separate low-pass filter in the speed
controller on the CC 61xx and CC 424 ............................1351
6.17.15 Dynamic determination of load .......................................1352
6.17.16 Peculiarities in weakened-field operation with
CC 61xx and CC 424 .......................................................1356
6.17.17 Active damping of low-frequency oscillations .................1358
6.17.18 Acceleration feedforward control ....................................1360
6.17.19 IPC, holding torque, following error in the jerk phase .....1363
6.17.20 HSCI: Switching drives on and off, enabling the drive
controller .........................................................................1368

January 2015 11
6.17.21 Current controller ............................................................1378
6.17.22 Braking the drives in case of an EMERGENCY STOP
and a power failure..........................................................1384
6.17.23 Limiting the power, braking power and torque ...............1386
6.17.24 Controller parameters for manual traverse .....................1396
6.17.25 Controller parameters for analog axes ............................1397
6.17.26 Weakened-field operation ...............................................1409
6.17.27 Motor with wye/delta switchover ...................................1420
6.17.28 Speed-dependent switching of the PWM frequency ......1423
6.17.29 LIFTOFF function ............................................................1426
6.17.30 Torque Ripple Compensation (TRC) ................................1429
6.17.31 Torsion compensation.....................................................1432
6.17.32 Crossover Position Filter (CPF)........................................1434
6.17.33 Dynamic Precision, Dynamic Efficieny ............................1437
6.17.34 AFC – Adaptive Feed Control (option #45) ......................1438
6.17.35 CTC – Cross Talk Compensation (option #141) .............1459
6.17.36 Position Adaptive Control (PAC), option #142.................1464
6.17.37 Load Adaptive Control (LAC), option #143 ......................1465
6.17.38 Motion Adaptive Control (MAC), option #144 .................1476
6.17.39 Active Chatter Control (ACC), option #145).....................1478
6.17.40 AVD – Active Vibration Damping (option #146) ...............1481
6.17.41 KinematicsComp (software option #52) –introduction ....1484
6.17.42 KinematicsComp (software option #52) – configuration .1494
6.18 Monitoring functions ....................................................................1503
6.18.1 Monitoring the drives ......................................................1503
6.18.2 Position monitoring .........................................................1505
6.18.3 Movement monitoring ....................................................1511
6.18.4 Standstill monitoring .......................................................1513
6.18.5 Positioning window .........................................................1514
6.18.6 Temperature monitoring .................................................1518
6.18.7 I2t monitoring ..................................................................1522
6.18.8 Current utilization of drive motors ...................................1533
6.18.9 Status of HEIDENHAIN hardware and software .............1535
6.18.10 Motor brake.....................................................................1539
6.18.11 Emergency stop monitoring............................................1551
6.18.12 Monitoring functionswhen using the CC 61xx and
CC 424 ............................................................................1562
6.18.13 EN 13849-1 on the TNC 640 with HSCI without
functional safety (FS).......................................................1564

12 HEIDENHAIN Technical Manual TNC 640


6.19 Spindles .........................................................................................1565
6.19.1 Configuring spindles........................................................1565
6.19.2 Spindle in position control loop .......................................1567
6.19.3 Spindle in speed feedback control ..................................1576
6.19.4 Filtering the acceleration values ......................................1583
6.19.5 Controlling the spindle.....................................................1584
6.19.6 Switching the operating modes ......................................1600
6.19.7 Analog axis/spindle with unipolar motor..........................1603
6.19.8 Spindle Synchronism (option #131).................................1605
6.19.9 Spindle of the kinematic model.......................................1609
6.19.10 Gear shifting ....................................................................1610
6.19.11 Tapping............................................................................1610
6.19.12 Alternating operation of several spindles ........................1615
6.19.13 C-axis operation...............................................................1617
6.19.14 Volts-per-hertz control mode ...........................................1619
6.19.15 Tools with gears ..............................................................1621
6.19.16 Advanced spindle interpolation (option #96) ...................1623
6.20 Turning operations on milling machines (option #50) ..............1624
6.20.1 Toggling between milling and turning modes .................1625
6.20.2 Aligning the workpiece coordinate system and the
tool (Cycle 800)................................................................1632
6.21 Measuring the unbalance, monitoring the unbalance,
balancing........................................................................................1639
6.21.1 Unbalance in turning operations......................................1639
6.21.2 Overview of functions .....................................................1640
6.21.3 Applicability of the unbalance detection..........................1643
6.21.4 Unbalance calibration ......................................................1643
6.21.5 Machine parameters for measuring the unbalance.........1645
6.22 Configuring the controller unit and drive motors......................1651
6.22.1 Specifications of CC 61xx / UEC 1xx...............................1651
6.22.2 Structure of the CC 61xx and UEC 11x controller units ..1653
6.22.3 Single-speed and double-speed (software option #49) ...1655
6.22.4 PWM frequencies with the CC 61xx...............................1659
6.22.5 PWM frequency with INDRAMAT "POWER DRIVE"
inverters ..........................................................................1661
6.22.6 PWM frequency with SIEMENS "SIMODRIVE"
inverters ..........................................................................1661
6.22.7 Comparison of the CC 61xx and CC 424 controller units 1664
6.22.8 Configuring the drive motor ............................................1666
6.22.9 Configuring HEIDENHAIN drive components using
the electronic ID label......................................................1669
6.22.10 Field orientation...............................................................1671
6.22.11 Field angle determination on the CC 61xx ......................1674
6.22.12 Reading or setting the field angle via the PLC ................1686

January 2015 13
6.23 Commissioning .............................................................................1688
6.23.1 Tables for power modules, supply modules and
motors.............................................................................1688
6.23.2 Field orientation...............................................................1705
6.23.3 Preparation ......................................................................1705
6.23.4 Commissioning of digital axes ........................................1710
6.23.5 Commissioning of analog axes .......................................1727
6.23.6 Configuring the nominal position value filter and
look-ahead parameters ....................................................1747
6.23.7 Commissioning the digital spindle ..................................1769
6.24 Integrated oscilloscope ................................................................1774
6.24.1 Fundamentals..................................................................1774
6.24.2 Preparing a recording ......................................................1777
6.24.3 Recording signals ............................................................1781
6.24.4 Analyzing the recording ...................................................1784
6.24.5 Saving and loading recordings.........................................1787
6.24.6 Operation via NC program...............................................1788
6.24.7 Circular interpolation test with the integrated
oscilloscope.....................................................................1790
6.24.8 Configuring the colors of the oscilloscope display ..........1791
6.25 Diagnosis with the online monitor (OLM) ..................................1794
6.25.1 Introduction .....................................................................1794
6.25.2 Using the OLM................................................................1795
6.25.3 Screen layout ..................................................................1797
6.25.4 Group of NC axes ............................................................1800
6.25.5 Group of spindle commands ...........................................1820
6.25.6 Group of NC channels .....................................................1822
6.25.7 Hardware group ..............................................................1827
6.25.8 Group of drive commands...............................................1840
6.25.9 Auxiliary group.................................................................1841
6.25.10 PLC group .......................................................................1847
6.25.11 Queue trace ....................................................................1850
6.25.12 Frequent causes of error .................................................1852
6.26 Block diagram for TNC 640 with CC 61xx...................................1853

14 HEIDENHAIN Technical Manual TNC 640


7 Machine interfacing
7.1 Display and operation...................................................................1854
7.1.1 General settings for the display screen...........................1854
7.1.2 Settings for soft-key rows ...............................................1857
7.1.3 Settings for 3-D simulation graphics ...............................1858
7.1.4 Position and status display ..............................................1859
7.1.5 Unit of measurement for display and operation ..............1867
7.1.6 Conversational language .................................................1868
7.1.7 File management.............................................................1871
7.1.8 Format for NC programs .................................................1872
7.1.9 Settings for the Programming mode of operation...........1873
7.1.10 Defining the output path for the function FN16: F-PRINT ...1881
7.1.11 Binary file management ..................................................1882
7.1.12 Access rights to drives and directories ...........................1884
7.1.13 Code numbers.................................................................1886
7.1.14 Programming station mode.............................................1890
7.1.15 Operating modes / control operation in the operating
mode group .....................................................................1893
7.1.16 Retracting after power failure..........................................1901
7.1.17 Control operation in the machining channel ....................1904
7.1.18 Error messages and log files ...........................................1923
7.1.19 PLC pop-up window ........................................................1955
7.1.20 TNCguide—Context-sensitive help system (user
documentation) ...............................................................1957
7.1.21 Table editor......................................................................1968
7.1.22 Machine datum ...............................................................1974
7.1.23 Cycles..............................................................................1979
7.1.24 Diagnostic functions........................................................1983
7.1.25 Bus Diagnosis..................................................................2007
7.1.26 HwViewer........................................................................2012
7.1.27 Window manager (XFCE) ................................................2017
7.1.28 Remote Desktop Manager (Option #133) ......................2019
7.1.29 ITC 7xx – Connection and Configuration .........................2044
7.2 Small PLC window........................................................................2051
7.3 PLC soft keys .................................................................................2056
7.3.1 Soft-key resource file ......................................................2057
7.3.2 Soft-key project file for HR 420, HR 5xx .........................2064
7.4 Switching the control on/off .......................................................2066
7.4.1 Starting up the control.....................................................2066
7.4.2 Shutting down the control...............................................2070
7.5 Keystroke simulation....................................................................2081
7.5.1 Control keyboard .............................................................2081
7.5.2 Machine operating panel .................................................2088

January 2015 15
7.6 DCM - Dynamic Collision Monitoring (Option #40) ...................2089
7.6.1 DCM – monitoring the working space for collisions .......2089
7.6.2 Limited DCM—important notes ......................................2090
7.6.3 CMO – Collision Monitored Object .................................2095
7.6.4 DCM with M3D (Mesh3D) ..............................................2097
7.6.5 DCM – Function and operation .......................................2105
7.6.6 Optimizing the DCM performance ..................................2108
7.6.7 Integration of CMOs in the kinematics ...........................2110
7.6.8 Configuration of the CMOs .............................................2111
7.6.9 DCM – Additional settings / information / PLC modules .2120
7.6.10 Using KinematicsDesign on the control ..........................2124
7.7 Pallet management.......................................................................2125
7.8 Electronic Handwheel...................................................................2133
7.8.1 Serial handwheel.............................................................2133
7.8.2 Handwheel at position encoder input .............................2140
7.8.3 Traverse per handwheel revolution.................................2146
7.8.4 Assigning a handwheel to an axis ...................................2147
7.8.5 HR 410 portable handwheel............................................2151
7.8.6 HR 420 portable handwheel............................................2153
7.8.7 HR 520 portable handwheel............................................2158
7.8.8 HR 550 handwheel with wireless transmission ..............2160
7.8.9 HR 150 panel-mounted handwheels with HRA 110
handwheel adapter..........................................................2167
7.9 Override .........................................................................................2170
7.9.1 Override devices .............................................................2170
7.9.2 Override functions...........................................................2173
7.9.3 Compensation for potentiometers ..................................2178
7.10 Incremental jog positioning .........................................................2180
7.11 Operating times and system times .............................................2182
7.11.1 Measuring operating times .............................................2182
7.11.2 Date/time ........................................................................2188
7.12 Tool changer..................................................................................2189
7.12.1 Tool table and pocket table .............................................2189
7.12.2 Automatic tool recognition ..............................................2225
7.12.3 Tool usage test................................................................2226
7.12.4 Controlling the tool changer ............................................2232
7.12.5 Extended tool management............................................2244
7.13 Touch probe...................................................................................2266
7.13.1 Using the touch probes...................................................2271
7.13.2 Touch probe cycles .........................................................2279
7.13.3 Tool measurement .........................................................2282
7.13.4 Nominal position value filters during measurement
with TS and TT ................................................................2296

16 HEIDENHAIN Technical Manual TNC 640


8 PLC programming
8.1 PLC functions.................................................................................2298
8.1.1 The API 3.0 symbolic memory interface .........................2300
8.1.2 HEIDENHAIN PLC basic program ...................................2308
8.1.3 Selecting the PLC programming mode of operation .......2311
8.1.4 PLC main menu...............................................................2312
8.1.5 File management.............................................................2314
8.1.6 The API DATA function ...................................................2315
8.1.7 The WATCH LIST function ..............................................2317
8.1.8 The I/O-FORCE LIST........................................................2320
8.1.9 The TABLE function ........................................................2322
8.1.10 The TRACE function ........................................................2325
8.1.11 The COMPILE function ...................................................2328
8.1.12 The EDIT function............................................................2329
8.2 PLC compiler..................................................................................2332
8.2.1 Configuration file for the PLC compiler ...........................2332
8.2.2 Conditional compilation ...................................................2337
8.3 Configuring PLC input/output systems ......................................2339
8.4 Operands........................................................................................2341
8.4.1 Overview of operands .....................................................2341
8.4.2 Operand addressing (byte, word, double word) ..............2346
8.4.3 Detecting array overflow ................................................2346
8.4.4 Timers and counters .......................................................2347
8.4.5 Fast PLC inputs ...............................................................2357
8.5 Data organization..........................................................................2359
8.5.1 Data organization on the HDR hard disk..........................2359
8.5.2 Data organization on the SSDR hard disk........................2359
8.5.3 Encrypted PLC partition (PLCE:)......................................2360
8.5.4 Compressing graphic files ...............................................2368
8.5.5 Configuring the displayed drives and directories in
the file manager ..............................................................2370
8.5.6 PLC system files .............................................................2372
8.6 M functions (M strobe) .................................................................2381
8.6.1 Assigning M functions to the machining channels..........2381
8.6.2 Configuration of M functions...........................................2382
8.6.3 Overview of M functions of the TNC ..............................2390
8.7 S function (S strobe).....................................................................2395
8.7.1 Assigning S functions to the machining channels...........2395
8.7.2 Configuration of S function..............................................2396
8.8 T functions (T strobe) ...................................................................2409
8.8.1 Assigning T functions to the machining channels ...........2409
8.8.2 Configuration of T functions ............................................2410
8.9 Alias functions (Alias strobe) ......................................................2419
8.9.1 Assigning alias functions to the machining channels ......2419
8.9.2 Configuration of alias functions .......................................2420
8.10 General settings for the PLC run-time system...........................2423
8.11 Python settings (option 46)..........................................................2426

January 2015 17
8.12 Tables .............................................................................................2429
8.12.1 Notes on the tables .........................................................2430
8.12.2 Table types of the TNC 640 ............................................2432
8.12.3 Creating a new table type ...............................................2435
8.12.4 Freely definable tables ....................................................2451
8.12.5 Configuring table filters ...................................................2453
8.12.6 Defining a table prototype...............................................2458
8.12.7 Creating a new table with the file manager ....................2460
8.12.8 Inserting or deleting additional columns in/from an
existing table ...................................................................2460
8.12.9 Removing column names and column descriptions .......2463
8.12.10 Defining the path for OEM tables ...................................2464
8.12.11 Symbolic names for tables ..............................................2464
8.12.12 Editing tables via the PLC ..............................................2466
8.12.13 Access to tables via SQL commands..............................2481
8.12.14 PLC modules for the SQL statements ............................2497
8.13 Data transfer NC => PLC, PLC => NC...........................................2516
8.13.1 Introduction .....................................................................2516
8.13.2 Data transfer NC program => PLC ("FN19: PLC =" or
"FN29: PLC =").................................................................2517
8.13.3 Q parameters ..................................................................2519
8.13.4 Data transfer NC program <=> NC (FN17:
SYSWRITE and FN18: SYSREAD) ...................................2521
8.13.5 Data transfer machine parameters => PLC ....................2554
8.13.6 Data transfer PLC operand <=> NC program .................2558
8.13.7 Access to data from the NC program .............................2563
8.14 NC macros .....................................................................................2564
8.14.1 CANCEL cycle .................................................................2568
8.14.2 INIBLOCK cycle...............................................................2569
8.14.3 INICYCLE cycle ...............................................................2570
8.14.4 INIPROG cycle ................................................................2571
8.14.5 Pallet control cycle ..........................................................2571
8.14.6 PROGEND cycle..............................................................2574
8.14.7 PROGSELECT cycle ........................................................2574
8.14.8 TOOLCALL cycle.............................................................2575
8.14.9 TOOLDEF cycle...............................................................2579
8.14.10 STARTUP cycle ...............................................................2582
8.14.11 Calling OEM macros with the TT cycle ...........................2584
8.15 Program creation ..........................................................................2585
8.15.1 ASCII editor .....................................................................2585
8.15.2 Program format ...............................................................2586
8.15.3 Program structure ...........................................................2587

18 HEIDENHAIN Technical Manual TNC 640


8.16 Command set ................................................................................2588
8.16.1 Overview .........................................................................2588
8.16.2 LOAD (L)..........................................................................2591
8.16.3 LOAD NOT (LN)...............................................................2593
8.16.4 LOAD TWO'S COMPLEMENT (L–) .................................2595
8.16.5 LOAD BYTE (LB) .............................................................2596
8.16.6 LOAD WORD (LW)..........................................................2596
8.16.7 LOAD DOUBLE WORD (LD) ...........................................2597
8.16.8 ASSIGN (=) ......................................................................2597
8.16.9 ASSIGN BYTE (B=)..........................................................2598
8.16.10 ASSIGN WORD (W=) ......................................................2599
8.16.11 ASSIGN DOUBLE WORD (D=) .......................................2599
8.16.12 ASSIGN NOT (=N) ...........................................................2600
8.16.13 ASSIGN TWO'S COMPLEMENT (=–) .............................2600
8.16.14 SET (S).............................................................................2601
8.16.15 RESET (R) ........................................................................2602
8.16.16 SET NOT (SN)..................................................................2603
8.16.17 RESET NOT (RN) .............................................................2604
8.16.18 AND (A) ...........................................................................2605
8.16.19 AND NOT (AN) ................................................................2606
8.16.20 OR (O) .............................................................................2608
8.16.21 OR NOT (ON) ..................................................................2609
8.16.22 EXCLUSIVE OR (XO) .......................................................2610
8.16.23 EXCLUSIVE OR NOT (XON) ............................................2612
8.16.24 ADDITION (+) ..................................................................2613
8.16.25 SUBTRACTION (–)...........................................................2614
8.16.26 MULTIPLICATION (X)......................................................2614
8.16.27 DIVISION (/) .....................................................................2615
8.16.28 REMAINDER (MOD) .......................................................2616
8.16.29 INCREMENT (INC)...........................................................2616
8.16.30 DECREMENT (DEC) ........................................................2617
8.16.31 EQUAL TO (==)...............................................................2617
8.16.32 LESS THAN (<)................................................................2618
8.16.33 GREATER THAN (>) ........................................................2618
8.16.34 LESS THAN OR EQUAL TO (<=) ....................................2619
8.16.35 GREATER THAN OR EQUAL TO (>=).............................2620
8.16.36 NOT EQUAL (<>) ............................................................2621
8.16.37 AND [ ] (A[ ]) ....................................................................2622
8.16.38 AND NOT [ ] (AN[ ]) .........................................................2623
8.16.39 OR [ ] (O[ ]) ......................................................................2623
8.16.40 OR NOT [ ] (ON[ ]) ...........................................................2624
8.16.41 EXCLUSIVE OR [ ] (XO[ ]) ................................................2624
8.16.42 EXCLUSIVE OR NOT [ ] (XON[ ]) .....................................2624
8.16.43 ADDITION [ ] (+[ ]) ...........................................................2624
8.16.44 SUBTRACT [ ] (–[ ]) ..........................................................2625
8.16.45 MULTIPLY [ ] (x[ ]) ...........................................................2625
8.16.46 DIVIDE [ ] (/[ ])..................................................................2626
8.16.47 REMAINDER [ ] (MOD[ ]) ................................................2626
8.16.48 EQUAL TO [ ] (==[ ])........................................................2626
8.16.49 LESS THAN [ ] (<[ ]).........................................................2627
8.16.50 GREATER THAN [ ] (>[ ]) .................................................2627
8.16.51 LESS THAN OR EQUAL TO [ ] (<=[ ]) .............................2627
8.16.52 GREATER THAN OR EQUAL TO [ ] (>=[ ])......................2628
8.16.53 NOT EQUAL [ ] (<>[ ]) .....................................................2628
8.16.54 SHIFT LEFT (<<)..............................................................2628
8.16.55 SHIFT RIGHT (>>) ...........................................................2629

January 2015 19
8.16.56 BIT SET (BS)....................................................................2629
8.16.57 BIT CLEAR (BC)...............................................................2630
8.16.58 BIT TEST (BT) ..................................................................2631
8.16.59 PUSH DATA ONTO THE DATA STACK (PS) ...................2632
8.16.60 PULL DATA FROM THE DATA STACK (PL) ....................2633
8.16.61 PUSH LOGIC ACCUMULATOR ONTO THE DATA
STACK (PSL)....................................................................2633
8.16.62 PUSH WORD ACCUMULATOR ONTO THE DATA
STACK (PSW) ..................................................................2634
8.16.63 PULL LOGIC ACCUMULATOR FROM THE DATA
STACK (PLL)....................................................................2634
8.16.64 PULL WORD ACCUMULATOR FROM THE DATA
STACK (PLW) ..................................................................2635
8.16.65 UNCONDITIONAL JUMP (JP) .........................................2635
8.16.66 JUMP IF LOGIC ACCUMULATOR = 1 (JPT)...................2636
8.16.67 JUMP IF LOGIC ACCUMULATOR = 0 (JPF)...................2637
8.16.68 CALL MODULE (CM) ......................................................2637
8.16.69 CALL MODULE IF LOGIC ACCUMULATOR = 1 (CMT)..2637
8.16.70 CALL MODULE IF LOGIC ACCUMULATOR = 0 (CMF)..2638
8.16.71 END OF MODULE, END OF PROGRAM (EM) ...............2639
8.16.72 END OF MODULE IF LOGIC ACCUMULATOR = 1 (EMT) ..2639
8.16.73 END OF MODULE IF LOGIC ACCUMULATOR = 0 (EMF) ..2639
8.16.74 LABEL (LBL)....................................................................2639
8.17 INDEX register (X register)...........................................................2640
8.18 Commands for string processing ................................................2642
8.19 LOAD string (L)..............................................................................2644
8.20 ADD string (+) ................................................................................2644
8.21 STORE string (=)............................................................................2644
8.22 OVERWRITE string (OVWR) .........................................................2645
8.23 EQUAL TO command for string processing (==)........................2646
8.24 LESS THAN command for string processing (<) ........................2646
8.25 GREATER THAN command for string processing (>) ................2646
8.26 LESS THAN OR EQUAL TO command for string
processing (<=) ..............................................................................2647
8.27 GREATER THAN OR EQUAL TO command for string
processing (>=) ..............................................................................2647
8.28 NOT EQUAL command for string processing (<>).....................2648
8.29 Modules for string processing .....................................................2649
8.30 Submit programs ..........................................................................2653
8.31 Calling the submit program (SUBM)...........................................2654
8.32 Interrogating the status of a submit program (RPLY)...............2654
8.33 Canceling a submit program (CAN) ............................................2655
8.34 Cooperative multitasking.............................................................2657
8.34.1 Starting a parallel process (SPAWN) ...............................2657
8.34.2 Control of events.............................................................2657
8.35 Constants field (KF).......................................................................2664

20 HEIDENHAIN Technical Manual TNC 640


8.36 Program structures .......................................................................2665
8.36.1 IF ... ELSE ... ENDI structure ...........................................2666
8.36.2 REPEAT ... UNTIL structure ............................................2666
8.36.3 WHILE ... ENDW structure..............................................2667
8.37 CASE branch..................................................................................2668
8.38 Linking files....................................................................................2669
8.39 USES statement (USES)...............................................................2669
8.40 GLOBAL statement (GLOBAL) .....................................................2671
8.41 EXTERN statement (EXTERN) .....................................................2671
8.42 PLC modules..................................................................................2672
8.42.1 Markers, bytes, words, and double words......................2672
8.42.2 Number conversion .........................................................2675

9 Data interfaces
9.1 Introduction ...................................................................................2680
9.2 The Ethernet interface ..................................................................2681
9.3 Connecting the TNC 640 to the network ....................................2682
9.3.1 Settings at the TNC 640 ..................................................2682
9.3.2 DHCP server....................................................................2691
9.3.3 Sandbox...........................................................................2698
9.3.4 VNC settings ...................................................................2700
9.3.5 Configuring network access to other devices (mount)....2710
9.3.6 Firewall ............................................................................2715
9.4 HSCI interface................................................................................2720
9.5 The USB interface of the TNC 640...............................................2722
9.6 The serial interface of the TNC 640 .............................................2726
9.6.1 RS-232-C/V.24 interface ..................................................2726
9.7 Configuring the serial interface ...................................................2729
9.7.1 Control characters ...........................................................2729
9.7.2 Configuration of interfaces ..............................................2730
9.8 Data transmission protocols........................................................2742
9.8.1 Standard communications protocol.................................2742
9.8.2 Communications protocol with block check character....2744
9.8.3 LSV2 transmission protocol.............................................2747
9.9 Saving and loading files ...............................................................2748
9.10 External access administration....................................................2749
9.11 Configuring the control for TeleService 2.0 (or higher).............2750
9.12 Data transfer by the PLC ..............................................................2753
9.12.1 PLC modules ...................................................................2753

January 2015 21
10 TNC 640 and Windows
10.1 General information and important notes .................................2764
10.2 IPC 6641—Industrial PC for Windows .........................................2765
10.2.1 Installing a Windows operating system ..........................2769

11 Error messages
11.1 DSP/NC error messages...............................................................2776
11.2 TNC 640 error messages during data transfer ...........................2777
11.3 Error messages of the file system ...............................................2778

12 Subject Index ........................................2780

22 HEIDENHAIN Technical Manual TNC 640


1 Update Information

1.1 General information


Update Information for the TNC 640 appears at irregular intervals, often as part
of a new software version. This is preliminary information in PDF format,
containing brief descriptions of new software functions as well as new
hardware components. After the Update Information has been published, the
new items are included in the TNC 640 Technical Manual.
Each Update Information is saved in "HESIS-WEB including FileBase" on the
Internet, where registered users can access it at http://filebase.heidenhain.de.
Registered users of the HEIDENHAIN FileBase on the Internet receive an
e-mail notification when a new Update Information appears.

January 2015 1.1 General information 23


24 HEIDENHAIN Technical Manual TNC 640
1 Update Information No. 1

1.1 Overview

1.1.1 Released service packs


The following service packs were released for NC software 34059x-01:
 Service pack 1: 34059x-01 SP1 September 2012
 Service pack 2: 34059x-01 SP2 November 2012
 Service Pack 3: 34059x-01 SP3 December 2012

1.1.2 Released NC software


The following NC software has been released:
 NC software 340590-02 (NCK software version: 597110-06)
 NC software 340591-02 (NCK software version: 597110-06)
 NC software 340594-02 (NCK software version: 597110-06)

1.2 NC software 34059x-01

Service packs

Attention

When needed, HEIDENHAIN prepares service packs for the various


versions of the NC software. Registered customers can download these
service packs from the HEIDENHAIN FileBase on the Internet. Installation
of a service pack in addition to the already installed NC software
implements important error fixes. Please ensure that the NC software
always contains the latest service pack before you ship the machine.
Perform all tests required of the machine or the NC software again after
having installed the service pack.

The following service packs were released for NC software 34059x-01:

Service pack NC software Release


34059x-01 SP1 34059x-01 September 2012
34059x-01 SP2 34059x-01 November 2012
34059x-01 SP3 34059x-01 December 2012

January 2015 1.2 NC software 34059x-01 25


1.3 NC software 34059x-02

1.3.1 Important notes on updating software


Please remember the following important information when updating the
software version listed below:
 TNC 640: 34059x-01 to 34059x-02

Note

HEIDENHAIN recommends:
Making a backup of the control (e.g. with TNCbackup) before updating the
NC software.
Saving your current machine configuration. The configuration editor (DATA
BACKUP soft key) can be used for this purpose.
If you later want to undo the software update and return to the previous
software version, you need the saved configuration data of the old version!

Note

Please perform the update of the NC software as described in the Technical


Manual in Chapter 2 "NC Software Exchange."

Note

Keep in mind the important information about the software update, which
is provided on the following pages.

26 HEIDENHAIN Technical Manual TNC 640


Loading new You must check and save the new machine parameters the first time that the
machine TNC 640 is started after a software update. The TNC 640 displays the MOD
parameters dialog on the screen:
 Enter the MOD code number 95148 and press the ENT key
The changes made to the machine configuration by the software update must
be checked and saved.
 Press the CONFIG DATA soft key
All new machine parameters are marked with a red exclamation point in the
configuration editor. The TNC 640 displays a message in green for every new
or edited parameter, indicating the change made.
 Important step: Press the SAVE soft key
 Press the END soft key and exit the Machine Parameter Programming
operating mode by pressing the END soft key again.
The control loads the new machine parameters and continues the boot
process.

Note

After startup, further changes to the machine configuration might be


necessary. Please note the following information.

Firmware update of During the first restart of the control after the software update, important
HSCI devices firmware updates of connected devices may be necessary.
 Follow the instructions given in the messages on the screen
 Acknowledge the message displayed for the firmware update by pressing
the "RUN UPDATE" button.
 The control starts loading the new firmware.

Attention

Never shut down the control while a firmware update is running—


otherwise the control will require servicing!
After the update is finished, the control displays another message on the
screen. For the changes to go into effect, the machine's power must be
switched off for at least one minute. Switch off the main switch of the
machine and do not switch it on again until one minute has expired.

 Please note the detailed information on firmware updates under “Firmware"


on page 231.

January 2015 1.3 NC software 34059x-02 27


Replacing the The definition file of the symbolic programming interface API 3.0 has been
definition file of the expanded. The step described below must be taken for the PLC program to
symbolic memory be compiled successfully after the update.
interface
During the update of the NC software, a new version of the apimarker.def file
was automatically copied to the PLC partition of the control. Proceed as
follows:
 Switch to the Programming mode of operation
 Enter the MOD code number 807667 to switch to the PLC Programming
mode of operation.
 Press the PGM MGT key to open the file manager
 Switch to the PLC:\proto\plc directory
 Copy the apimarker.def file to the program directory of your PLC program.
Overwrite the existing apimarker.def file:

Note

You also need to copy the apimarker.def file to your PC, and add it to the
PLCdesignNT project. Otherwise, during the next transfer of PLC project
files to the control, the file might be overwritten by the old version.

28 HEIDENHAIN Technical Manual TNC 640


Checking the PLC
basic program

Note

Please note the following information if you


are using the HEIDENHAIN PLC basis program in the Basic-NCK-V05-00-
Mill version.

Please check the following sections in the PLC basic program and modify the
PLC program if required:
 New: Checking operands for correct field size:
As of NC software 34059x-02, the operands in the user parameters
CfgOemBool, CfgOemInt, CfgOemString and CfgOemPosition are checked
for whether in the control's memory map their field size matches the field
size of the corresponding variables from the PLC basic program. Therefore,
please check the field sizes of the user parameters and, if required, adjust
them to the sizes from the PLC basic program by using MP_value.
Otherwise, the error message "Operand field ... in datum CfgOem... too
large (or too small)" appears if an error occurs.
 Change in MP_READ.SRC
Please check and, if required, change the PLC basic program if your machine
uses an external reference run for the spindle.
As of NC software 34059x-02 the MP_externRefPulse machine parameter
has been moved to the new MP_refAuxFunctions list parameter. The
parameter is read in the PLC basic program to select the type of referencing
for the spindle. To read out the new parameter, the following request needs
to be changed: Module 9433 must be used instead of Module 9431.

English: MP_READ.SRC

Old:
PS S"CfgReferencing"
PS K &SG_spindle_parameter_set
PS S"externRefPulse"
PS KL_Index_0
PS KL_factor_x1
CM 9431
PLW
== KL_SpindleRef
= Spindle[BL_spindle_index].MG_reference_using_sensor
= Spindle[BL_spindle_index].MG_reference_with_sensor
PL WL_stack_synchronize

January 2015 1.3 NC software 34059x-02 29


New:
PS S"CfgReferencing"
PS K &SG_spindle_parameter_set
PS S"refAuxFunctions-externRefPulse"
PS KL_Index_0
PS K &SG_general
CM 9433
PLW
<> KL_config_data_does_not_exist
PSL
IFT
M_display_module_error(KG_error_module_9433)
ENDI

L SG_general
== S"spindleRef"
= Spindle[BL_spindle_index].MG_reference_with_sensor
= Spindle[BL_spindle_index].MG_reference_using_sensor

 Change in T_STATUS.SRC:
As of NC software 34059x-02 the format of the TYPE column in the touch
probe table has been changed from INT to TXT. This change makes it
necessary to modify the following request in the PLC basic program:

English: T_STATUS.SRC

Old:
L Spindle[KG_S1].DG_Touch_Probe_No
> K+0
A[
L DG_T_type
== KL_WZ_Typ_Tchp
]
= Spindle[KG_S1].MG_touch_probe_active
IFT
PS Spindle[KG_S1].DG_Touch_Probe_No
PS K+0
PS K &SG_Touch_Probe_No
CM 9050
M_display_module_error(KG_error_module_9050)

M_SQL_read_int(S"SELECT TYPE FROM TCHPROBE WHERE NO == ",


SG_Touch_Probe_No, K&Spindle[0].DG_Touch_Probe_TYPE)
ENDI

30 HEIDENHAIN Technical Manual TNC 640


New:
L Spindle[KG_S1].DG_Touch_Probe_No
> K+0
A[
L DG_T_type
== KL_WZ_Typ_Tchp
]
= Spindle[KG_S1].MG_touch_probe_active
IFT
PS Spindle[KG_S1].DG_Touch_Probe_No
PS K+0
PS K &SG_Touch_Probe_No
CM 9050
M_display_module_error(KG_error_module_9050)

M_SQL_read_str(S"SELECT TYPE FROM TCHPROBE WHERE NO == ",


SG_Touch_Probe_No, K&SG_T_number_pre_selection)

L SG_T_number_pre_selection
== S"'TS444'"
IFT
L K+6
= Spindle[KG_S1].DG_Touch_Probe_TYPE
ENDI

L SG_T_number_pre_selection
== S"'OEM'"
IFT
L K+9
= Spindle[KG_S1].DG_Touch_Probe_TYPE
ENDI
ENDI

January 2015 1.3 NC software 34059x-02 31


1.3.2 Description of the new functions

New software You can enable the following new software options by entering a code
options number. HEIDENHAIN can give you the code number after having been
informed of the SIK number:

Option Description ID
#40 DCM Collision Monitoring 526452-01
The dynamic collision monitoring function (DCM)
enables you to integrate collision monitoring of
different machine parts in the TNC by using
kinematics tables. When DCM is active, the TNC
interrupts machining whenever a collision is
imminent, thereby increasing the safety for the
machine and its operator.
#42 DXF Converter 526450-01
The DXF converter enables you to open DXF files
directly on the control, in order to extract contours
and machining positions.
#45 Adaptive Feed Control (AFC) 579648-01
Adaptive feed rate control (AFC) controls the
contouring feed rate, taking into account the spindle
power. An automatic increase of the feed rate in
machining zones with less material removal can
reduce total machining time. In addition, tool
monitoring can be realized that uses the spindle
current profile to detect worn or broken tools.
#101 to OEM option 579651-01
130 to 579651-
The OEM options 101 to 130 enable the machine
30
manufacturer to protect his own software functions
that are not enabled and do not become usable until
a keyword is entered.
#141 Cross Talk Compensation CTC 800542-01
Dynamic acceleration processes can cause axis
coupling to briefly deform parts of the machine and
result in deviations at the tool center point (TCP). With
the CTC controller function, this acceleration-
dependent position error at the TCP can be
compensated.
#142 Position Adaptive Control (PAC) 800544-01
Depending on the positions of the axes in a working
space, the kinematic conditions of a machine give it a
variable dynamic behavior that can adversely affect
the stability of the servo-control.
To exploit the machine’s dynamic possibilities, you
can use the PAC option to change machine
parameters depending on position.

32 HEIDENHAIN Technical Manual TNC 640


Option Description ID
#143 Load Adaptive Control (LAC) 800545-01
In order to optimize changed control behavior under
various load and friction conditions, the LAC option
enables the control to automatically apply adaptive
feed-forward depending on the current workpiece
mass and frictional forces.
#144 Motion Adaptive Control (MAC) 800546-01
The MAC option provides a way to change machine
parameters depending on motion-dependent input
quantities (e.g speed or following error). This makes
it possible, for example, to realize a velocity-
dependent adaptation of the kV factor on motors
whose stability changes through the various
traversing velocities.
#145 Active Chatter Control (ACC) 800547-01
With the ACC option you can significantly reduce a
machine's inclination to chattering and increase the
attainable metal removal rate during heavy cutting by
25 % and more, depending on the type of machine.

Overview of the A summary of the improvements in NC software 34059x-02 is given below.


improvements For more detailed information about the function in this Technical Manual,
please refer to the links indicated in the brief descriptions given below.

Operation and  New: Software option 40—Dynamic Collision Monitoring (DCM)


technology The dynamic collision monitoring function (DCM) enables you to integrate
collision monitoring of different machine parts in the TNC by using
kinematics tables. When DCM is active, the TNC interrupts machining
whenever a collision is imminent, thereby increasing the safety for the
machine and its operator.
 New: Software option 42—DXF converter
The DXF converter enables you to open DXF files directly on the control, in
order to extract milling and turning contours or machining positions. The
application is started on the 3rd desktop and data can be output both in the
XY plane and in the ZøX rotary coordinate system. For more information,
refer to the User’s Manual for your control.
 New: Software option 45—Adaptive Feed Control (AFC)
With adaptive feed rate control (AFC), the contouring feed rate is controlled
depending on the respective spindle power in percent. Automatic
adaptation of the feed rate to the different amounts of material removed in
the different machining zones enables the TNC to maintain the spindle
power at a constant reference value. The main benefit of this AFC process
control, along with ensuring the quality of the machining operation (e.g.
detection of cutter breakage or wear), is the optimization of the machining
time, which is intended to ensure or improve productivity and efficiency. A
risk exists that the main spindle becomes overloaded due to material
deviations, harder sections, oversize deviations and tool wear; AFC can be
effectively implemented against this.

January 2015 1.3 NC software 34059x-02 33


 New: Support of HR 420, HR 520 and HR 550 display handwheels
Handwheels with display can now also be connected to the TNC 640. With
HEROS 5, the SET UP WIRELESS HANDWHEEL soft key in the MOD menu calls
a separate dialog for setting up the HR 550 wireless handwheel. For detailed
information about connecting the handwheels HR 420, HR 520 and 550.
 New: Support of the wireless TT 449 tool touch probe
The wireless TT 449 tool touch probe can now also be connected to the
control via the SE 642 transmitter-receiver unit. The new calibration cycle
484 that does not contain parameters is available for calibration. This cycle
uses the current position of the calibration tool as the starting position,
instead of the position saved in CfgTTRoundStylus. For more information on
the configuration of touch probes, see "Touch probe" on page 2266.
 New: Selection of a virtual tool axis
The active tool axis direction can now be activated as a virtual tool axis in
manual mode of operation and during handwheel superimposition.
Use MP_selectAxes to assign an axis key on the handwheel in order to
control the virtual tool axis with the HR 5xx/HR 410 handwheels. In
MP_selectAxes, you enter the keyword "VT_Axis" instead of a physical axis,
see "MP_selectAxes" on page 2138.
 New: Activate external access via MOD dialog
In the MOD dialog, you can now use the "External access" menu item to
define which external connections are permitted to access the control, see
"External access administration" on page 2749.
 New: Configuration of a DHCP/DNS server
A DHCP/DNS server can now also be configured on all existing Ethernet
interfaces of the TNC 640, except for the primary interface. This makes it
possible to supply devices in the machine network with dynamic IP
addresses and device names. The configuration is made in the network
dialog, see "DHCP server" on page 2691.
 New: Protection for the configuration of the Ethernet interfaces
The settings of the non-primary Ethernet interface(s), the selection of the
primary interface and the DHCP server settings are now password
protected. This protects the settings from unauthorized changes. The code
number 807667 or the PLC password defined by the OEM are now required
for these settings. The code number is entered using the OEM
authorization button or soft key, see "Connecting the TNC 640 to the
network" on page 2682.
 New: Dialog for setting the VNC server
A configuration dialog for the VNC server is now available in the HEROS
program menu under "Settings" (see "VNC settings" on page 2700). The
following properties of the VNC server can be configured there:
• List of permitted clients (IP addresses or names)
• Password for the connection. The password is encrypted and stored
• Additional server options (e.g. type of connection)
• Additional settings for assigning the focus
 New: Asian conversational languages
The TNC 640 now also supports the Chinese, Korean and Taiwanese
conversational languages, see "Conversational language" on page 1868.

34 HEIDENHAIN Technical Manual TNC 640


 New: Support of PROFINET I/O components
PROFINET I/O components can be connected directly to the MC main
computer via the PROFINET interface. If the control detects a discrepancy
between the configuration and the actual condition of the terminals
connected via PROFINET, a dialog showing the discrepancies is started
automatically. The dialog also provides basic commissioning functions on
PROFINET terminals. The PROFINET bus system is also part of the bus
diagnostics of the TNC 640. It is configured using the IOconfig software as
of version 3.0 (prototypes are available as of mid-2013). For information
about the connection of PROFINET devices, refer to “PROFINET-IO" on
page 375.
 New: "unixtime" data type for extended tool management
To be able to display any numerical value in the format "YEAR.MONTH.DAY
HOUR:MINUTE", the "unixtime" table column type was introduced in the
extended tool management.
 Enhanced: Improvement of reference run
The machine parameters in the parameter object CfgReferencing were
revised in order to simplify the configuration of the reference run. This
included replacing the selection options in MP_refType by the following
new referencing modes:
• Mode1 replaces without Switch
• Mode2 replaces Switch, changing Dir
• Mode3 replaces distance coded
• Mode5 replaces Endat Encoder
Also, Mode10, a procedure alternative to Mode2, for traversing the reference
marks with encoders with one or more reference marks was introduced. In all
new modes, the traverse direction from MP_refDirection is reversed when
the "reference end position" trip dog is reached.
Furthermore, the machine parameter MP_externRefPulse was moved to the
new parameter object refAuxFunctions that provides additional parameters,
e.g. for double reference run. MP_posEncoderRefDist was moved from
CfgAxisHardware to the parameter object CfgReferencing. For more
information, see "Reference marks" on page 1267.
If the software is updated, your previous configuration will automatically be
converted to the new parameterization. If you downgrade to a lower software
version, no automatic conversion to the previous configuration will take place,
however.

Note

HEIDENHAIN recommends making a backup of the control (e.g. with


TNCbackup) before updating the NC software.

January 2015 1.3 NC software 34059x-02 35


 Enhanced: Revised MOD dialog of the software versions
The MOD dialog for displaying the installed software version has been
revised and now includes the following information:
• NC-SW: NC software version and date
• FCL: Currently set Feature Content Level (FCL)
• PLC-SW: Number of the PLC program
• CC-SW: Software version of the CC, UEC and UMC controller units and
date

If the HEIDENHAIN integrated functional safety is active:


• MC-FS: SKERN software version of the MC main computer
• CC-FS: SKERN software version of the CC, UEC, UMC controller units
• SPLC-SW: Number of the SPLC program
 Enhanced: Backing up and restoring operating system settings
During backup and restoring via TNCremo or TNCcmd, the following
operating system settings are now also saved and restored:
• System time settings via Settings/Date/Time dialog
• Language settings via Settings/Language dialog
• Network settings via Settings/Network dialog
• Settings for the connected network drives via Settings/Shares dialog
• Settings of the VNC server via Settings/VNC server dialog
• Screen saver settings via Settings/Screen Saver dialog
• Settings of the XFCE Window Manager via Settings/
WindowManagerConfig dialog
• Settings of the diagnostic tools under HELogging
• Settings of the Remote Desktop Manager
 Enhanced: New function for HE Logging
The new tab Memcheck is now available in the HE Logging menu. Just like the
existing tabs for the settings regarding Syslog, FTrace, and TCPDump, these
diagnostic possibilities and the associated settings are to be used only
together with HEIDENHAIN service personnel, see "HE Logging" on page
233.
 Enhanced: Calculator
The integrated calculator can now be activated on each screen in each
process and also remains active after a change in operating modes. The Get
current value and Load current value soft keys enable you to fetch
numerical values from an active background process or to transfer them
from the calculator to the background process. You can display all current
axis values and use them in a calculation with the Axis value soft key.
 Enhanced: Input range for DL, DR and DR2 in the tool table
The input range for the columns DL, DR and DR2 in the tool table was
extended from +/– 99.9999 to +/– 999.9999.
 Enhanced: Inserting table lines
In the table editor, you can now insert up to 999 lines into an existing table
simultaneously.

36 HEIDENHAIN Technical Manual TNC 640


 Changed: Operation of the preset table
In the Manual Operation mode, the behavior of the preset table was
changed such that the END_BLOCK key is used to exit the table. Columns
describing spatial angles can now always be edited, regardless of the
configuration of the programmable axes. The Confirm position and Enter
new preset soft keys do no longer have any function for these columns.
Refer to the User's Manual for your control for more information about this.
 Changed: Activation of Reference Run mode
The Reference Run mode is now also always called in the Programming
operating modes after the startup cycle has been completed. If a position
error of the axes is found when the machine is switched on, an NC stop
error that prompts the user to activate the machine screen with the
Reference Run mode is now displayed in the Programming operating modes
so that the "encoder evaluation" dialog can be displayed. The Reference Run
mode can be activated by pressing the screen switchover key or any
operating mode key; the displayed NC stop error will then be cleared
automatically.
 Changed: Automatic connection of network drives
The waiting time for the automatic connection (mounting) of network drives
was increased. Up to now, after start-up of the operating system the control
tried to connect the network drives automatically for approx. 7 seconds.
Now it keeps trying for up to a minute. In this way, the automount succeeds
even when a device in the network (e.g. a switch in the machine) does not
start up until the machine switches on.

January 2015 1.3 NC software 34059x-02 37


Machine  New: Encryption of OEM partition
configuration It is possible to encrypt part of the PLC partition in order to protect the
machine manufacturer’s know-how. The encrypted drive "PLCE:" is visible
only after entry of an individual code number that has previously been
defined by the OEM and saved in encrypted form on the control or in the SIK
(i.e. programming station dongle), see "Encrypted PLC partition (PLCE:)" on
page 2360.
 New: Input of formula (currently only for MP_distPerMotorTurnF)
The configuration editor (Machine Parameter Programming mode of
operation) supports entering a formula for MP_distPerMotorTurnF in order
to make it possible to define a variable gear ratio for the distance covered in
one motor revolution. If a formula is defined in this machine parameter, this
formula is evaluated cyclically, see "Special case: Entering a formula" on
page 567.
 New: Update of machine parameter subfiles
In the configuration editor, the new "UPDATE AND SELECT" soft key
enables you to update the selected MP subfile and simultaneously open the
file for editing. Since the changes made by the update are not saved yet, you
subsequently need to check and save them, see "MP subfiles" on page 634.
 New: OEM-specific "Inverter.inv" and "Supply-spy" tables
Similar to the OEM motor table, the tables for power modules and power
supply modules can now additionally be stored on the OEM partition under
PLC:\table. If there is a table under PLC:\table, the equivalent entries in the
tables on the SYS partition are not evaluated anymore.
 New: Switching the units of measure for rotary axes and spindles
In the configuration editor (Machine Parameter Programming mode of
operation), the units [°], [°/min], [°/s2] and [°/s3] are now used for rotary axes
depending on the type of parameter. For spindles, the units [°], [1/min], [1/
min/s] and [1/min/s2] are used. When editing a parameter of a rotary axis or
a spindle, the units for the rotary axis or the spindle can now also be
switched by soft key.
 New: Navigation with the mouse wheel and scroll bars in the
configuration editor
In the configuration editor (Machine Parameter Programming operating
mode) you can now use the mouse wheel and the scroll bars to move the
display area. The column width for the name, unit of measure and value of
the machine parameters can be changed by dragging with the mouse. You
can now also navigate through the tree structure of the machine parameters
and start editing editable parameters by double-clicking the mouse.
 Enhanced: Update rules for tables
The table updater supports the new rules "UPDATE CONVERT" and
"UPDATE MODIFY" for converting table values when updating tables.
 Enhanced: Five decimal places in the "inch" input system
In the configuration editor (Machine Parameter Programming operating
mode) the number of decimal places in the field for length entries in the
"Inch" system was increased to five.
 Enhanced: Location for saving parameters can be selected
The function of the KEYNAME/CHANGE FILE soft key in the configuration editor
(Back up parameter files operating mode) was enhanced such that the
location for saving a selected data object can now also be moved to another
file.

38 HEIDENHAIN Technical Manual TNC 640


 Changed: Touch probe configuration
The machine parameter MP_maxTouchFeed was moved from the System/
CfgHardware area to the new entity CfgProbes in the System/ProbeSettings
area. The parameters mStrobeUTurn and MP_mStrobePos were moved
from the entity CfgTouchProbe to the new entity CfgTS. All other
parameters were removed from CfgTouchProbe. The new entity CfgTS can
be configured as a function of the spindle. The assigned spindle key must
therefore be configured as a key name for CfgTS. The parameters from the
entity CfgToolMeasurement were moved to the new entity CfgTT. The
entity CfgTT is assigned the new attributes type and port. In order to support
multiple tool touch probes, CfgTT and CfgTTRoundStylus are assigned a key
name. The attribute activeTT in CfgProbes is used to select the currently
active tool touch probe, see "Touch probe" on page 2266.

January 2015 1.3 NC software 34059x-02 39


Machine Enhanced/Modified machine parameters:
parameters
new/enhanced/
changed

MP Config object Parameter Description of change


number
100001 CfgAxes MP_axisList The input range was increased from
100003 MP_specCoordSysList 20 to 24 (first element is 0).
100104 CfgHardware MP_maxTouchFeed Moved to CfgProbes under
ProbeSettings.
100601 CfgHandwheel MP_type The machine parameter now also
supports the HR 420, HR 520 and
HR 550 display handwheels.
100610 MP_selectAxes VT_Axis was added to make it
possible to select a virtual tool axis
as the handwheel axis. The input
range was increased from 8 to 24
(first element is 0).
100801 CfgDisplayData MP_axisDisplayOrder The input range was increased from
100802 MP_axisDisplayOrderRef 20 to 24 (first element is 0).
100809 MP_axisDisplayRule
101501 CfgStartupData MP_powerInterruptMsg The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
101601 CfgShutDown MP_shutdownOnConfig The behavior was changed from
101602 MP_shutdownOnError "PLC/Pgm run is locked" to "Change
at any time."
101603 MP_shutdownOnUser
101604 MP_shutdownOnOem
101605 MP_maxTermTime
101608 MP_powerOffDevice
101609 MP_powerOffSlot
101606 MP_powerOffPort
101607 MP_powerOffDelay
101701 CfgTable MP_tableView The behavior was changed from
101702 MP_enableNotify "PLC/Pgm run is locked" to "Change
at any time."
101703 MP_dispComplCol
120601 CfgClockView MP_displayMode The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
120701 CfgInfoLine MP_infoLineEnabled The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
102401 CfgSimModelPath MP_simModelPath The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."

40 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
102701 CfgOemScript MP_path The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
102801 CfgBinFileCache MP_cachePath The behavior was changed from
102802 MP_maxFiles "PLC/Pgm run is locked" to "Change
at any time."
102803 MP_freeSpace
102901 CfgFileType MP_unitOfMeasure The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
102902 MP_standardEditor The input range was extended by
the value "EXTERNAL VIEWER." The
selection option
"PATTERN EDITOR" was removed.
The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
102903 MP_fileSize The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
102904 MP_alternateEditor The selection option
"PATTERN EDITOR" was removed.
The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
102905 MP_softkeyIcon The behavior was changed from
102906 MP_softkeyIconVariant "PLC/Pgm run is locked" to "Change
at any time."
102907 MP_protect
103101 CfgPathProtection MP_protection The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
103201 CfgPlcOptions MP_trackMState The behavior was changed from
103203 MP_trackApiState "PLC/Pgm run is locked" to "Change
at any time."
103204 MP_revokeMState
103202 MP_apiErrorReaction
103301 CfgPlcOemError MP_notifyInfo The behavior was changed from
103302 MP_notifyWarning "PLC/Pgm run is locked" to "Change
at any time."
103303 MP_notifyError
103404 CfgPlcPeriphery MP_pt100Discrete The behavior was changed from
103405 MP_tempCompensation "PLC/Pgm run is locked" to "Change
at any time."
103406 MP_overrideFullRatio
103411 MP_override100Ratio
103407 MP_overrideDelta
103408 MP_overrideIntegDelta
103601 CfgPlcDeferCutoff MP_port The behavior was changed from
103602 MP_time "PLC/Pgm run is locked" to "Change
at any time."

January 2015 1.3 NC software 34059x-02 41


MP Config object Parameter Description of change
number
104301 CfgPlcOverrideDev MP_source The input range was extended by
the value "PLC." The behavior was
changed from "Shut down control"
to "Change at any time."
104302 MP_mode The behavior was changed from
104303 MP_values "Shut down control" to "Change at
any time."
104401 CfgPlcOverrideS MP_minimal The behavior was changed from
104402 MP_maximal "Shut down control" to "Change at
any time."
104403 MP_source The input range was increased to
"0 to 3." The behavior was changed
from "Shut down control" to "Change
at any time."
104901 CfgOemString MP_value The behavior was changed from
104902 MP_ignorePlc "PLC/Pgm run is locked" to "Change
at any time."
120401 CfgSoftkeyOverlay MP_path The behavior was changed from
120402 MP_jobName "PLC/Pgm run is locked" to "Change
at any time."
120403 MP_parameter
120404 MP_memLimit
120405 MP_runControl
118303 CfgPythonScript MP_path The behavior was changed from
118304 MP_jobName "PLC/Pgm run is locked" to "Change
at any time."
118301 MP_parameter
118302 MP_memLimit
105001 CfgPlcOperTimes MP_displayPlcTimes The behavior was changed from
105002 MP_resetPlcTimes "PLC/Pgm run is locked" to "Change
at any time."
105003 MP_resetNcTimes
105004 MP_textNumber

42 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
105112 CfgSafety MP_comissioning The behavior was changed from
"Shut down control" to "Program run
is locked."
105101 MP_timeToEmStopTest Maximum value for the time until
the next test of the cutout channels
is due was increased to 60000
[min]. The behavior was changed
from "Shut down control" to
"Program run is locked."
105113 MP_permitSom4 The behavior was changed from
105115 MP_handwheelNoPB "Shut down control" to "Program run
is locked."
105116 MP_handwheelMultiAx
105117 MP_testBrakesCoupled
105118 MP_testWithOpenDoor
105119 MP_testNotBrakeLine
105120 MP_testNotCurrent
105121 MP_testNotStoGlobal
105130 MP_testNotStoAIntrnl
105122 MP_splcTimer
105123 MP_splcPgmCrcSrc
105124 MP_splcPgmCrcMc
105125 MP_splcPgmCrcCc
105126 MP_splcApiVersion
105127 MP_inpNoInverseA The maximum value for the PLC
105128 MP_inpNoInverseB operand address was increased to
255. The behavior was changed
105129 MP_inpNoDynTest
from "Shut down control" to
"Program run is locked."
105200 CfgSystemTime MP_offsetToUTC The parameter was removed from
the machine configuration.
105401 CfgEditorSettings MP_createBackup The behavior was changed from
105402 MP_deleteBack "PLC/Pgm run is locked" to "Change
at any time."
105403 MP_cursorAround
105404 MP_lineBreak
105405 MP_stdTNChelp
105406 MP_toggleCyclDef
105407 MP_warningAtDEL
105408 MP_maxLineGeoSearch
105409 MP_blockIncrement
105411 MP_enableStraightCut
105412 MP_maxLineCommandSrch The maximum value was changed
from 500 to 100 000.
The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."

January 2015 1.3 NC software 34059x-02 43


MP Config object Parameter Description of change
number
105501 CfgTablePropertie MP_columnKeys The behavior was changed from
105502 s MP_primaryKey "PLC/Pgm run is locked" to "Change
at any time."
105503 MP_foreignKey
105504 MP_modificationKey
105601 CfgColumnDescrip MP_width The behavior was changed from
105602 tion MP_unit "PLC/Pgm run is locked" to "Change
at any time."
105603 MP_initial
105604 MP_minimum
105605 MP_maximum
105606 MP_charset
105607 MP_unique
105608 MP_readonly
105609 MP_unitIsInch
105701 CfgColumnText MP_dialogText The behavior was changed from
105702 MP_softkeyIcon "PLC/Pgm run is locked" to "Change
at any time."
105703 MP_iconVariant
105704 MP_choice The input range was increased to
"0 to 41."
The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
105705 MP_lockValue The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
106001 CfgTableFilter MP_softkeyText The behavior was changed from
106002 MP_softkeyIcon "PLC/Pgm run is locked" to "Change
at any time."
106003 MP_iconVariant
106004 MP_helpColumn
106005 MP_helpValue
106006 MP_helpPicture
106007 MP_select
106010 MP_exclude
106008 MP_from
106009 MP_option
106101 CfgTablePrototype MP_path The behavior was changed from
106103 MP_pathInch "PLC/Pgm run is locked" to "Change
at any time."
106102 MP_enableReset
106201 CfgTableSelect MP_filter The behavior was changed from
106202 MP_column "PLC/Pgm run is locked" to "Change
at any time."
106203 MP_target

44 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
106501 CfgConfigSettings MP_undoListSize The behavior was changed from
106502 MP_suppressUserMsg "PLC/Pgm run is locked" to "Change
at any time."
106503 MP_dispParamNumbers
106504 MP_hideWriteProtected
114601 CfgServiceRequest MP_name The behavior was changed from
114602 MP_host "PLC/Pgm run is locked" to "Change
at any time."
114603 MP_port
114604 MP_content
114605 MP_period
114606 MP_timeout
114607 MP_serverIp
114608 MP_serverIpMask
120501 CfgChange MP_replaceWith The behavior was changed from
120502 Password MP_hideOriginal "PLC/Pgm run is locked" to "Change
at any time."
107201 CfgCfgEdit MP_layoutFile The behavior was changed from
107202 Activate MP_dispLangText "PLC/Pgm run is locked" to "Change
at any time."
107203 MP_readOnly
122602 CfgProbes MP_maxTouchFeed The parameter was moved from the
entity "CfgHardware" to
"CfgProbes".
The MP number was changed from
100104 to 122602. The behavior
was changed from "Program run is
locked" to "Change at any time."
108001 CfgTouchProbe MP_mStrobeUTurn Was moved to CfgTS.
108002 MP_mStrobePos The MP number was changed from
108001 to 122501 and from 108002
to 122502, respectively. The
behavior was changed from "PLC/
Pgm run is locked" to "Allowed in
strobe."
108003 MP_posAngle Has been removed from the revised
108004 MP_posTolerance touch probe management.
108201 CfgRingGauge MP_centerCoord Has been removed from the revised
108202 MP_plungingDist touch probe management.

January 2015 1.3 NC software 34059x-02 45


MP Config object Parameter Description of change
number
114101 CfgTool MP_stylusType Has been moved to CfgTT in the
114102 Measurement MP_spindleOrientMode revised touch probe management.
This changed the MP numbers.
114118 MP_probingRoutine
114103 MP_probingDirRadial
114104 MP_offsetToolAxis
114105 MP_rapidFeed
114106 MP_probingFeed
114107 MP_probingFeedCalc
114108 MP_spindleSpeedCalc
114109 MP_maxPeriphSpeedMeas
114111 MP_maxSpeed
114112 MP_measureTolerance1
114113 MP_measureTolerance2
114114 MP_stopOnCheck
114115 MP_stopOnMeasurement
114116 MP_adaptToolTable
114117 MP_disableFilter Has been removed from the revised
touch probe management.

46 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
120101 CfgUnbalance MP_spindle The behavior was changed from
MP_maxSpeed "PLC/Pgm run is locked" to "Change
at any time."
MP_radialPosition
MP_offset
MP_axisOfMeasure
MP_triggerMin
MP_triggerMax
MP_maxUnbalance
MP_minUnbalance
MP_maxUnbalanceUsr
MP_limitUnbalanceUsr
MP_maxUnbalanceOem
MP_limitUnbalanceOem
MP_mStrobeSpindleCCW
MP_mStrobeSpindleCW
MP_mStrobeSpindleStop
MP_mStrobeOrient
MP_tableCalibrate
120102 MP_timeOut
200304 CfgChannelAxes MP_refAllAxes The behavior was changed from
200307 MP_deactFastClamping "Shut down control" to "Program run
is locked."
200801 CfgNcPgmBehavio MP_operatingTimeReset Access was changed from "LEVEL3"
ur to "LEVEL2."
200802 MP_permitS0 The parameter was removed from
the machine configuration.
204701 CfgToolUsageFile MP_usageFile The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
204601 CfgPresetSettings MP_chkTiltingAxes The options available were changed
from "On" or "Off" to "NoCheck,"
"CheckIfTilted" or "CheckAlways."
204801 CfgKinematicsOpt MP_maxModification The behavior was changed from
204802 MP_maxDevCalBall "PLC/Pgm run is locked" to "Change
at any time."
204803 MP_mStrobeRotAxPos
201901 CfgPlcOverrideF MP_minimal The behavior was changed from
201902 MP_maximal "Shut down control" to "Change at
any time."
201903 MP_source The input range was increased to
"0 to 3." The behavior was changed
from "Shut down control" to "Change
at any time."

January 2015 1.3 NC software 34059x-02 47


MP Config object Parameter Description of change
number
202001 CfgPlcOverrideR MP_minimal The behavior was changed from
202002 MP_maximal "Shut down control" to "Change at
any time."
202003 MP_source The input range was increased to
"0 to 3." The behavior was changed
from "Shut down control" to "Change
at any time."
300103 CfgAxis MP_isHirth The unit of measure is now
displayed depending on the type of
axis.
300105 MP_axisMode The selection option "Virtual" was
removed.
300112 advancedSettings The configuration datum CfgAxis/
advancedSettings was converted
from a bit line (BINARY type) to a
sub-entity (bit 0 to bit 4).
noBreakAtProbe (bit 0) Specifies whether the axis moved
by the PLC is to be stopped during
deflection of the touch probe (by
another axis).
manFilterEnhanced (bit 1) Specifies whether a movement of
this axis commanded by the PLC is
to be made with a bell-shaped or a
ramp-shaped acceleration curve.
countLagOverflow (bit 2) Specifies whether the following
error for a spindle in the position
control loop is to be calculated in
modulo counting mode.
analogPWM (bit 3) Reserved for special settings of
analog drives.
backlashOnMC (bit 4) Specifies whether the reversal error
is to be taken into account in the NC
software or in the DSP software (on
the CC).

48 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
300305 CfgAxisSafety MP_positionDiffRef The unit of measure is now
300306 MP_positionMatch displayed depending on the type of
axis.
300314 MP_positionDiffNom
300316 MP_speedLimitSom2 The unit of measure is now
displayed depending on the type of
axis.
The maximum value was changed
from 2000 to 15000.
300329 MP_speedLimitSom3 The unit of measure is now
300317 MP_speedLimitSom4 displayed depending on the type of
axis.
The maximum value was changed
from 5000 to 15000.
300330 MP_rpmLimitSom2 The maximum value was changed
from 2000 to 16000.
300331 MP_rpmLimitSom3 The maximum value was changed
300332 MP_rpmLimitSom4 from 6000 to 16000.
300308 MP_absLimitPos The unit of measure is now
300309 MP_absLimitNeg displayed depending on the type of
axis.
300310 MP_positionRangeVmin The unit of measure is now
displayed depending on the type of
axis.
The minimum value was changed
from 0.0001 to 0.001.
300319 MP_distLimitJog The unit of measure is now
displayed depending on the type of
axis.
300321 MP_timeLimitStop2 The maximum value was changed
from 2 to 10.
300322 MP_distLimitStop2 The unit of measure is now
displayed depending on the type of
axis.
The maximum value was changed
from 30 to 100.
300326 MP_relSpeedTolerance The parameters were moved
300327 MP_absSpeedTolerance to CfgSpindle. The MP number
changed from 300326 to 401513,
and from 300327 to 401514.
300501 CfgMachDatum MP_distFromMachDatum The unit of measure is now
Extra displayed depending on the type of
axis.

January 2015 1.3 NC software 34059x-02 49


MP Config object Parameter Description of change
number
400004 CfgAxisHardware MP_distPerMotorTurn The unit of measure is now
displayed depending on the type of
axis.
The minimum value was changed
from 0 to 0.000 000 001, and a
maximum value of 2000 was
defined.
400005 MP_posEncoderDist The unit of measure is now
displayed depending on the type of
axis.
The minimum value was changed
from 0 to 0.000 000 001, and a
maximum value of 99999.9999 was
defined.
400006 MP_posEncoderIncr The minimum value was changed
from 0 to 1, and the maximum value
from 2147483647 to 16 777 215.
400007 MP_posEncoderRefDist The parameter was moved to
CfgReferencing.
400017 MP_genExtIntPolFactor A minimum value of 0 was defined.
The maximum value was changed
from 2147483647 to 99.
400802 CfgPosControl MP_servoLagMin1 The unit of measure is now
400803 MP_servoLagMax1 displayed depending on the type of
axis.
400804 MP_servoLagMin2
400805 MP_servoLagMax2
400807 MP_ctrlOutputLimit The parameter was renamed from
controlOutputLimit to
ctrlOutputLimit.
The unit of measure is now
displayed depending on the type of
axis.
400104 CfgAxisAnalog MP_kvSpeedLimit The unit of measure is now
400105 MP_maxFeedAt9V displayed depending on the type of
axis.
400107 MP_compStrength
400108 MP_compWidth
400109 MP_compTimeOffset
400110 MP_compFFAdjust
400111 MP_compRefAcc
400113 MP_unipolar "clip positive" and "clip negative"
were added to the available options.

50 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
400201 CfgAxisHand MP_input The behavior was changed from
400210 wheel MP_hsciCcIndex "PLC/Pgm run is locked" to "Change
at any time."
400202 MP_countDir
400203 MP_distPerRevol The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
The minimum value was changed
from 0 to 0.000 000 001.
The unit of measure is now
displayed depending on the type of
axis.
400204 MP_incrPerRevol The behavior was changed from
400205 MP_rasterPerRevol "PLC/Pgm run is locked" to "Change
at any time."
400206 MP_encoderSignal
400207 MP_encoderFreq
400208 MP_encoderResistor
400209 MP_decToSoftLimit The behavior was changed from
"PLC/Pgm run is locked" to "Change
at any time."
The unit of measure is now
displayed depending on the type of
axis.
400301 CfgFeedLimits MP_minFeed The unit of measure is now
400302 MP_maxFeed displayed depending on the type of
axis.
400303 MP_rapidFeed
400304 MP_manualFeed
400305 MP_maxAcceleration
400311 MP_maxAccSpeedCtrl:
400312 MP_maxDecSpeedCtrl
400313 MP_limitSpeedAcc
400314 MP_limitSpeedDec
400315 MP_limitAccSpeedCtrl
400316 MP_limitDecSpeedCtrl
400309 MP_restoreFeed

January 2015 1.3 NC software 34059x-02 51


MP Config object Parameter Description of change
number
400401 CfgReferencing MP_refType The selection parameters were
changed because the functional
sequence for traversing the
reference marks has been revised.
400403 MP_refPosition The unit of measure is now
displayed depending on the type of
axis.
400404 MP_refSwitchActive The parameter was removed from
the machine configuration.
400413 MP_externRefPulse The parameter was moved to the
subentity "refAuxFunctions."
400405 MP_endatDiff The unit of measure is now
400406 MP_refFeedLow displayed depending on the type of
axis.
400407 MP_refFeedHigh
400416 MP_posEncoderRefDist The parameter was moved from the
entity "CfgAxisHardware" to
"CfgReferencing." As a result, the
MP number changed from 400007
to 400416.
The minimum value was changed
from 0 to –65535, and the maximum
value from 2147483647 to 65535.
400411 MP_moveAfterRefPos The unit of measure is now
400412 MP_moveAfterRefFeed displayed depending on the type of
axis.
400501 CfgPositionLimits MP_swLimitSwitchPos The unit of measure is now
400502 MP_swLimitSwitchNeg displayed depending on the type of
axis.
400503 MP_lubricationDist
400602 CfgControllerAuxil MP_checkPosStandstill The unit of measure is now
400605 MP_maxPosDiff displayed depending on the type of
axis.
400604 MP_posDiffCountDir The option "automatic" was added
to the available options.
400705 CfgEncoder MP_movementThreshold The unit of measure is now
400706 Monitor MP_thresholdDistance displayed depending on the type of
axis.

52 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
401513 CfgSpindle MP_relSpeedTolerance The parameter was moved from the
entity "CfgAxisSafety" to
"CfgSpindle." As a result, the MP
number changed from 300326 to
401513.
The behavior was changed from
"Shut down control" to "Program run
is locked," and the maximum value
was changed from 10000 to 100.
401514 MP_absSpeedTolerance The parameter was moved from the
entity "CfgAxisSafety" to
"CfgSpindle." As a result, the MP
number changed from 300327 to
401514.
The behavior was changed from
"Shut down control" to "Program run
is locked," and a minimum value of 0
was defined.
401802 CfgAxisComp MP_backLash The unit of measure is now
displayed depending on the type of
axis.
401806 MP_posCtrlRevErr A minimum value of
"–1" and a maximum value of "1"
were defined.
401807 MP_posCtrlRevErrTime A minimum value of
"0" and a maximum value of "1000"
were defined.
400902 CfgSpeedControl MP_vCtrlIntGain The maximum value was modified
from
"10 000 000" to "1 000 000 000".
400906 MP_vCtrlEncInputFilt A minimum value of
"0" was defined and the maximum
value was modified from
"2147483647" to "19".
400907 MP_vCtrlFiltType1 A minimum value of
400911 MP_vCtrlFiltType2 "0" was defined and the maximum
value was modified from
400915 MP_vCtrlFiltType3
"2147483647" to "13".
400919 MP_vCtrlFiltType4
400923 MP_vCtrlFiltType5
400931 MP_vCtrlSpinMinSpeed The maximum value was changed
from 16666.666666667 to
166666.5.
401101 CfgControllerTol MP_posTolerance The unit of measure is now
401105 MP_syncTolerance displayed depending on the type of
axis.
The minimum value was changed
from 0 to 0.000 000 001.

January 2015 1.3 NC software 34059x-02 53


MP Config object Parameter Description of change
number
401203 CfgPowerStage MP_ampBusVoltage A minimum value of "0" and a
maximum value of "3000" were
defined.
401206 MP_ampReadyWaitTime A minimum value of "0" and a
maximum value of "4,999" were
defined.
401208 MP_ampFactorI2t A minimum value of "0" and a
maximum value of "1000" were
defined.
401209 MP_powStatusCheckOff If the maximum power of a UV is
exceeded, setting bit 10 enables
you to activate a reduction of the
spindle power if the spindle is
supplied by the same UV.
401304 CfgServoMotor MP_motFactorI2t A minimum value of "0" and a
maximum value of "1000" were
defined.
401306 MP_motEmergencyStop The unit of measure is now
Ramp displayed depending on the type of
axis.
401307 MP_motPbrMax A minimum value of "0" and a
401308 MP_motPMax maximum value of "3000" were
defined.
401309 MP_motPbrMaxAcFail
401310 MP_motMMax A maximum value for 30000 was
defined.
401313 MP_motStr A minimum value of "0" was
defined, and the maximum value
was changed from "2147483647" to
"999999".
401316 MP_motPhiRef A minimum value of "0" was
defined, and the maximum value
was changed from "2147483647" to
"36864000".
401319 MP_motSpeedSwitchOver A minimum value of "0" and a
401320 MP_motSpeedSwitchBack maximum value of "999999" were
defined.
401324 MP_testBrakeTolerance The unit of measure is now
displayed depending on the type of
axis.

54 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
401401 CfgController MP_compFriction0 A minimum value of "0" and a
Comp maximum value of "30" were
defined.
401402 MP_compFrictionT1 A minimum value of "0" and a
maximum value of "1" were defined.
401403 MP_compFrictionT2 The unit of measure is now
displayed depending on the type of
axis.
A minimum value of "0" and a
maximum value of "100" were
defined.
401404 MP_compFrictionNS A minimum value of "0" and a
maximum value of "30" were
defined.
401405 MP_compCurrentOffset A minimum value of
"–30" and a maximum value of "30"
were defined.
401406 MP_compAcc A minimum value of "0" and a
maximum value of "100" were
defined.
401407 MP_compIpcT1 A minimum value of "0" and a
401408 MP_compIpcT2 maximum value of "1" were defined.
401409 MP_compIpcJerkFact A minimum value of "0" and a
maximum value of "10" were
defined.
The permissible input range was
increased from 0.5 to 0.8.
401413 MP_compTorsionFact A minimum value of "0" and a
maximum value of "30" were
defined.
402305 CfgAxisCoupling MP_posOffset The unit of measure is now
402306 MP_offsetFeed displayed depending on the type of
axis.
402307 MP_maxPosDiff
402308 MP_ultimatePosDiff
402201 CfgCCAuxil MP_miscCtrlFunct0 The behavior was changed from
402202 MP_miscCtrlFunct1 "PLC/Pgm run is locked" to "Change
at any time."
A maximum value of 65535 was
defined.

January 2015 1.3 NC software 34059x-02 55


New machine parameters:

MP Config object Parameter Description


number
100108 CfgHardware MP_setupADP Specifies the level of computing
power for ADP and therefore the
feed rate quality.
100405 CfgFilter MP_maxHscOrder Determines the maximum filter
100406 order if an HSC or AdvancedHSC
filter is configured.
100408 MP_disableForMeasure In order to have a quicker reaction
to the measuring signal, the
nominal position value filter and
the filter in the speed and position
controller of the CC controller unit
can be deactivated during
measurement with TS and TT.
100611 CfgHandwheel MP_plcInputs For handwheels with display, the
parameter specifies whether the
PLC markers are set by the NC for
the keys on the handwheel only if
the handwheel was switched on
with the handwheel key.
100612 MP_plcPlusMinus For handwheels with the "+" and
"–" keys, the parameter specifies
whether the NC is to interpret
pressing the "+" and "–" keys as
manual traverse jobs for the
selected axis, or whether they are
to be evaluated by the PLC.
100613 MP_plcStartStop For handwheels with display, the
parameter specifies whether the
NC start and NC stop keys are to
be evaluated by the NC or PLC.
100614 MP_plcTeachIn For handwheels with display, the
parameter specifies whether the
TEACH IN key is to be evaluated
by the NC or PLC.
100615 MP_plcCtrlKey For handwheels with display, the
parameter specifies whether the
CTRL key is to be evaluated by the
NC or PLC.
100616 MP_lockPlcSoftkeys For handwheels with display, the
parameter specifies whether the
vertical PLC soft-key row is to be
disabled when the handwheel is
active.
100704 CfgAutoStart MP_hideSoftkey Specifies whether the
AUTOSTART soft key is to be
hidden or is to appear dimmed
when autostart is deactivated.

56 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description
number
101610 CfgShutDown MP_timeoutShutdownSK Defines the delay time after
pressing the "Machine off" soft
key until the shutdown dialog is
displayed.
101611 MP_timeoutShutdown Defines the delay time after
confirming the "Do you really want
to switch off?" dialog until the
shutdown of the PLC program.
123301 CfgPgmRunGraphics MP_displayLevel Specifies the type of graphic
display in the Program Run modes
of operation.
123101 CfgSoftkeys MP_leftSoftkeyRow Specifies the behavior of the left
vertical OEM soft-key row.
122101 CfgPgmMgt MP_dependentFiles Specifies whether dependent
files (with the additional extension
".DEP") are to be displayed.
102908 CfgFileType MP_freeDefinableTable Specifies whether the current file
type is to be handled as a freely
definable table.
104305 CfgPlcOverrideDev MP_device Defines the operating panel
(MOP1 to MOP4) or handwheel
on which the override source is
located.
105131 CfgSafety MP_timerSInpAntivlt Defines the maximum period of
time within which the two input
terminals of an FS input are
allowed to transmit differing
logical values, and therefore a
cross-comparison error.
106011 CfgTableFilter MP_lockedColumns The list contains the names of
table columns that must not be
edited by the end user.
123403 CfgAccessControl MP_denyAllConnections Activates the computer-specific
access control.
122601 CfgProbes MP_activeTT Enter here the key name from
CfgTT for the tool touch probe to
be activated.
122501 CfgTS MP_mStrobeUTurn Specifies the M function for
probing from opposite
orientations. The behavior was
changed from "PLC/Pgm run is
locked" to "Allowed in strobe."
122502 MP_mStrobePos Specifies the M function for
orienting the touch probe before
each probing procedure. The
behavior was changed from "PLC/
Pgm run is locked" to "Allowed in
strobe."

January 2015 1.3 NC software 34059x-02 57


MP Config object Parameter Description
number
122701 CfgTT MP_type Specifies the type of TT tool touch
probe connected.
122702 MP_port Specifies the control input to
which the TT is connected.
122703 MP_stylusType Has been moved from
122704 MP_spindleOrientMode CfgToolMeasurement to CfgTT in
the revised touch probe
122705 MP_probingRoutine
management.
122706 MP_probingDirRadial
122707 MP_offsetToolAxis
122708 MP_rapidFeed
122709 MP_probingFeed
122710 MP_probingFeedCalc
122711 MP_spindleSpeedCalc
122712 MP_maxPeriphSpeedMeas
122714 MP_maxSpeed
122715 MP_measureTolerance1
122716 MP_measureTolerance2
122717 MP_stopOnCheck
122718 MP_stopOnMeasurement
122719 MP_adaptToolTable Has been moved from
CfgToolMeasurement to CfgTT in
the revised touch probe
management. The initial value
was changed from "TRUE" to
"AdaptOnBoth". The choice was
changed from "TRUE" or "FALSE"
to "AdaptNever," "AdaptOnBoth"
or "AdaptOnMeasure."
120001 CfgAfc MP_enable Switch for (de)activation of AFC.
120002 MP_plcControl Specifies the PLC operand that—
as an alternative method for
controlling with AFC—can be
used as control input variable,
instead of using the spindle
power in percent (value in tenths
of percent).

58 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description
number
119401 CfgCMO MP_primitives Enter here the references to the
"primitive" collision objects from
CfgCMOCylinder,
CfgCMOCuboid and the half-
space from CfgCMOPlane, which
compose the CMO (Collision
Monitored Object). In this
attribute you can also enter
references to coordinate
transformations in order to
position the local coordinate
system.
119402 MP_dontTest Enter here the references to
Collision Monitored Objects
(CMOs) or objects within other
CMOs that are not to be checked
for collision with the present
CMO, because, for example, the
machine design prevents any
contact with them.
119403 MP_active Specifies whether this CMO is to
be included in the collision
calculation.
119404 MP_property A single CMO can be identified as
a touch probe in order to prevent
it from being monitored for
collisions during tool
measurement.
119405 MP_name Enter here the name of the CMO
that is to appear in the error
message on the screen if a
collision occurs.
119101 CfgCMOCylinder MP_dir For cylinders within a collision
object, this parameter defines the
direction of the cylinder axis in the
local coordinate system.
119102 MP_bottomCenter Defines the position of the center
of the cylinder floor surface in the
local coordinate system.
119103 MP_radius Specifies the radius of the
cylinder.
119104 MP_height Defines the cylinder height in the
axis direction from MP_dir in the
local coordinate system.
119105 MP_name Enter here the name of the
cylinder that is to appear in the
error message on the screen if a
collision occurs.

January 2015 1.3 NC software 34059x-02 59


MP Config object Parameter Description
number
119201 CfgCMOCuboid MP_vertex For cuboids within a collision
object, this parameter defines the
position of a corner of the cuboid
in the local coordinate system.
119202 MP_edgeLengths Defines the edge lengths of the
cuboid along the positive
coordinate axes in the local
coordinate system.
119203 MP_name Enter here the name of the cuboid
that is to appear in the error
message on the screen if a
collision occurs.
119301 CfgCMOPlane MP_axis Defines the limit plane to be
aligned perpendicular to the
coordinate axis from MP_axis in
the local coordinate system.
119302 MP_value Defines the intersection of the
plane with the coordinate axis
from the MP_axis.
119303 MP_type Defines the alignment of the half-
space defined by the plane.
119304 MP_name Enter here the name of the half-
space defined by the plane, which
is to appear in the error message
on the screen if a collision occurs.
204002 CfgActivateKinem MP_kinemAtStartup Enter here the key name of a
default kinematic model that is
activated during every start-up of
the control (regardless of which
key name is entered in
MP_kinemToActivate).
201208 CfgRotWorkPlane MP_enableVTaxis Specifies whether handwheel
superimposed traverse is possible
in the active tool axis system
(Virtual Tool Axis VT).
201517 CfgLaPath MP_pathMeasJerk Defines the maximum jerk on the
path during measurement.
113604 CfgThreadSpindle MP_limitSpindleSpeed For limiting the spindle speed
with Cycles 17, 18 and 207.

60 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description
number
300112 CfgAxis/ noBreakAtProbe (bit 0) Specifies whether the axis moved
advancedSettings by the PLC is to be stopped during
deflection of the touch probe (by
another axis).
manFilterEnhanced (bit 1) Specifies whether a movement of
this axis commanded by the PLC
is to be made with a bell-shaped
or a ramp-shaped acceleration
curve.
countLagOverflow (bit 2) Specifies whether the following
error for a spindle in the position
control loop is to be calculated in
modulo counting mode.
analogPWM (bit 3) Reserved for special settings of
analog drives.
backlashOnMC (bit 4) Specifies whether the reversal
error is to be taken into account in
the NC software or in the DSP
software (on the CC).
300335 CfgAxisSafety MP_revLimitStop2Som2 Specifies the maximum
permissible path or revolutions of
the spindle with an SS2 reaction in
the SOM2 operating mode.
300336 MP_revLimitStop2Som3 Specifies the maximum
permissible path or revolutions of
the spindle with an SS2 reaction in
the SOM3 operating mode.
300337 MP_revLimitStop2Som4 Specifies the maximum
permissible path or revolutions of
the spindle with an SS2 reaction in
the SOM4 operating mode.
300333 MP_encoderForSafety Defines whether the encoder
system specified in the axis
configuration or only the motor
encoder (safe rotary encoder with
EnDat 2.2 required) is to be used
for functional safety.
300334 MP_timeToBrakeTest Defines the maximum time until
the test of the motor holding-
brakes.
400020 CfgAxisHardware MP_distPerMotorTurnF Instead of the fixed value from
MP_distPerMotorTurn, enter here
a formula for the transmission
ratio.

January 2015 1.3 NC software 34059x-02 61


MP Config object Parameter Description
number
400811 CfgPosControl MP_servoLagGainFactor Enter here an optional
multiplication factor for the kv
factor.
400812 MP_servoLagKinkSpeed Characteristic curve kink point in
% of rapid traverse
400414 CfgReferencing MP_onTheFly Specifies whether the reference
mark is to be evaluated during any
movement of the axis/spindle or
only in the "Traverse reference
points" mode.
400415 refAuxFunctions Subentity, bit 1 to bit 5
refSwitchLowActive (bit 0) Trip dog (reference end position)
is low active
endatSerial (bit 1) Encoder connection over
HEIDENHAIN EnDat Interface
Box
moveOnAfterSwitch (bit 2) Specifies whether the reference
mark is not to be evaluated until
the axis has moved on by half the
distance from
MP_distPerMotorTurn after
reaching the trip dog.
doubleRef (bit 3) For activating double reference
run. First, the absolute position of
the speed encoder is read over
the EnDat interface. If at a later
time the reference mark of the
position encoder is traversed, the
control continues to work with
this reference.
doubleRefOffset (bit 4) Enter here the distance between
the speed encoder and the
position encoder (only evaluated if
double reference run is active).
externRefPulse (bit 5) Specifies whether the reference
signal is to be evaluated via the
external inputs -SP.REF+ and -
SP.REF- of the PL, or internally via
the connected motor and position
encoders.
400609 CfgControllerAuxil MP_maxSpeedDiff Specifies the max. velocity
difference between position and
speed encoder.

62 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description
number
401606 CfgPositionFilter/ MP_maxHscOrder A maximum filter order can be
axisPosition defined for HSC and
AdvancedHSC filters to ensure a
faster reaction to stop events or
changes in the feed-rate override
during program run, provided that
such a filter is configured.
401607 CfgPositionFilter/ MP_maxHscOrder Specifies the maximum filter
axisCutterLoc order for HSC and AdvancedHSC
filters if such a filter is configured.
401705 CfgLaAxis MP_axMeasJerk Defines the axis-specific
maximum permissible jerk during
measurement.
401808 CfgAxisComp MP_backlashDistance Specifies the distance that needs
to be traversed for compensating
the dynamic backlash.
401809 MP_backlashTimeConst Specifies the time within which
the dynamic backlash is
compensated.
400934 CfgSpeedControl MP_vCtrlFiltType6 Defines the filter type for filter 6.
400935 MP_vCtrlFiltFreq6 Defines the center frequency of
band-rejection filter for filter 6.
400936 MP_vCtrlFiltBandWidth6 Defines the bandwidth of band-
rejection filter for filter 6.
400937 MP_vCtrlFiltDamping6 Defines the damping of band-
rejection filter for filter 6.
401325 CfgServoMotor MP_motPMax2 Defines the maximum motor
power after a PLC request.
401328 MP_motSeriesInduct Specifies the additional series
inductance for the spindle motor.
401329 MP_motInertia Overwrites the value of the mass
moment of inertia J of the motor
from the motor table.
401326 MP_maxSpeedBrakeOpen Reserved
401327 MP_spindleAxisMode Reserved

January 2015 1.3 NC software 34059x-02 63


MP Config object Parameter Description
number
401410 CfgControllerComp MP_compActDampFact Defines the factor for active
damping of low-frequency
oscillations.
401411 MP_compActDampTime Defines the time constant for
active damping of low-frequency
oscillations.
401416 MP_compActDampFreq Defines the separation frequency
for the Crossover Position Filter
(CPF).
401417 MP_compTimeLimit For limiting the values for
backlash, stiction and hysteresis.
401415 MP_enhancedComp For axis-specific activation of
adaptive control functions.
401418 MP_compAccMode For changing the weighting of
active chatter control of the CC
auto-mode.
402317 CfgAxisCoupling MP_compOnlySlave Specifies whether in master-slave
torque control the speed
compensation value is to be
transmitted only to the slave or
distributed to master and slave.

64 HEIDENHAIN Technical Manual TNC 640


Machine interfacing  New: Freely definable tables
Freely definable tables (*.TAB) can be created and data read from within an
NC program or saved in the table. The settings for a column layout can be
configured as well as the functions for conveniently sorting the columns via
dialog window.
For reading and writing data, the Q parameter functions FN26/FN27/FN28
are available for access from the NC program, see "Freely definable tables"
on page 2451.
 New: FN26:TABOPEN —Opening a freely definable table
The FN26: TABOPEN function enables you to open any freely definable
table to be written to with FN27, or to be read from with FN28.
• FN26: TABOPEN <File path>
Only one table can be opened in an NC program at any one time. A new
block with TABOPEN automatically closes the last opened table. The
table to be opened must be of the type .TAB.
 New: FN27: TABWRITE —Writing to a freely definable table
After you have opened a table with FN26: TABOPEN, you can use the
function FN27: TABWRITE to write to it. You can write to up to 8 column
names in a TABWRITE block. The column names must be written between
quotation marks and separated by a comma. You use Q parameters to
define the value the TNC 640 is to write to the respective column. You can
write only to numerical table fields. If you wish to write to more than one
column in a block, you must save the values under successive Q parameter
numbers.
• FN27: TABWRITE <row>/"<column 1>,<column 2,..."=Q/QL/QR
<number>
By default the FN27: TABWRITE function writes values to the currently
open table also in the Test Run mode. Using the FN18 ID990 NR2
IDX16=1 function you can specify that the TNC 640 performs the FN27
function only in the Program Run modes.
 New: FN28: TABREAD —Reading a freely definable table
After you have opened a table with FN26: TABOPEN, you can use the
function FN28: TABREAD to read from it. You can read up to 8 column
names in a TABREAD block. The column names must be written between
quotation marks and separated by a comma. In the FN28 block you define
the Q parameter number to which the TNC 640 is to write the value that is
first read.

January 2015 1.3 NC software 34059x-02 65


 New: Integrated oscilloscope—Operation from the NC program
The following new syntax elements are available in the Programming
operating mode after entering the code number 555343 (see also
“Operation via NC program" on page 1788):
• FUNCTION SCOPE START JOB "initializing file" (or QS1) RESULT "result file"
(or QS2)
For starting the oscilloscope; the file specified in "JOB" contains the
initialization data (channels, measurands to be recorded, trigger
conditions, sampling time, ...). The path to which the oscilloscope is to
save the measured data is indicated in "RESULT." Both parameters are
mandatory. However, you can specify them independently of each
other as explicit text or as a QS reference.
• FUNCTION SCOPE STORE
Calling the FUNCTION SCOPE STORE function that does not contain
parameters explicitly enforces the storage of the data from the circular
oscilloscope buffer from within the NC program. The function writes the
determined results to the file given under RESULT. The oscilloscope
must be stopped to execute this function.
• FUNCTION SCOPE STOP Q1
Stops a recording. If the execution of an NC program is to vary
depending on whether a trigger condition is met, an optional Q
parameter can be transferred. The oscilloscope management writes the
value 0 to the transferred parameter, if the oscilloscope had already
stopped at the time the syntax is being processed, and the value 1, if
the oscilloscope had not stopped. If the trigger had also been triggered,
the value is incremented by 2. If the NC program is structured
appropriately, this makes it possible for the user to derive whether a
trigger condition has been met and to select appropriate branches that,
for example, restart the oscilloscope or write the oscillograms to a file.
 Enhanced: Integrated oscilloscope—Recording with TNCscope
Simultaneous recording of up to 16 signal channels is now possible in
conjunction with TNCscope.
 New: Using string parameters (QS) in NC functions
String parameters (QS) can now be used as an alternative to text elements
enclosed in quotation marks for the following NC functions. Since the syntax
of a "PGM CALL" does not enclose the name in quotation marks, the
additional syntax "SEL PGM" and "CALL SELECTED PGM" has been
introduced.
SEL PGM QS...
DECLARE STRING QS... = QS...
FN27: TABWRITE ... / QS... = Q...
FN28: TABREAD Q... = ... / QS...
FN38: SEND / QS... / +Q... / +1 / +QL... / -QR...
 New: STRING parameter type
In order to transfer a text string for machining cycles, the new parameter
type STRING is supported now.

66 HEIDENHAIN Technical Manual TNC 640


 Enhanced: FN17/FN18 functions, see page 2521.
• FN17: SYSWRITE ID230 NR12, NR13 and NR14 were added:
In order to overwrite software limit switches from the NC program,
function FN17: ID 230 NR12, NR13 and NR14 now provides a way to
overwrite the values in the configuration editor under CfgPositionLimits
permanently. Otherwise, NR12, NR13 and NR14 function in the same
way as the previous system data numbers NR2, NR3 and NR4.
• FN17: SYSWRITE ID355 NR1 = <value> was added:
For performing probing operations (also with rotary axes). An "L" block
describing the probing movement must be programmed between the
start and the end of the probing operation. The measuring feed rate
must be set beforehand with FN17: ID 355 NR2. The probing results
can be read with FN18: ID 360. Possible entries for <value>:
0 = The probing operation is terminated.
1 = The probing operation is started.
• FN17: SYSWRITE ID355 NR2 = <feed rate> was added:
For setting the measuring feed rate during probing.
• FN18: SYSREAD ID360 NR6 = <value> was added:
For reading out the probe results in the form of coordinates / axis values
in the input system of probing operations that were activated with
FN17: ID 355 NR1 = 1.
1 to 9 (X, Y, Z, A, B, C, U, V, W) are possible entries for <value>.
 Enhanced: FN16: F-PRINT —Formatted output of texts and Q
parameters
• Up to now, FN16 F-Print overwrote any previously existing file during
program start if the function M_APPEND was not entered in the mask
file. Now an existing file is no longer overwritten. Instead, the data are
appended to the file. This new behavior is the same as the M_APPEND
function. After a program selection the file is overwritten once. To
restore the previous behavior, the new function M_TRUNCATE must be
entered in the mask file.
• The following new function will immediately be available for the output
format of FN 16: F-PRINT: "M_APPEND_MAX<Maximum file size>".
This function causes new texts to be appended to an existing log file
until the maximum file size to be defined in kilobytes is exceeded. In
this case the file is written to from the beginning again and the existing
text is transferred to a backup file with the extension "old". The
definition of the file size does not have any effect, unless a file is written
to.
Example: "M_APPEND_MAX1024" limits the file size to 1 MB.
 Enhanced: FN16: F-PRINT – Keywords with lowercase letters
In the format file for FN16, keywords like "M_CLOSE" can now also be
written in lower case, meaning that "M_Close" as well as "m_close" are
equivalent to "M_CLOSE".
 Enhanced: New attributes for SQL syntax
The new attributes IGNORE UNBOUND and UNDEFINE MISSING have
been introduced for the SQL FETCH read command (see "SQL FETCH" on
page 2487), and the attribute RESET UNBOUND for SQL UPDATE (see
"SQL UPDATE" on page 2488).

January 2015 1.3 NC software 34059x-02 67


Configuring the  Enhanced: Look-ahead with Advanced Dynamic Prediction (ADP)
axes and spindle In the look-ahead function, the precalculation of the permissible, maximum
feed rate profile was expanded by an Advanced Dynamic Prediction (ADP)
function, see "Advanced Dynamic Prediction (ADP)" on page 1325. The
dynamic parameters of the previous motion control are also valid for the
ADP, which means that it is usually not necessary to change the
configuration. The processing time required by ADP can be adapted to the
available processing capacity of the main computer (e.g. machines with
multiple axes in combination with FS and DCM) by selecting an appropriate
performance level in MP_setupADP. By default, the highest performance
level ("premium") is always used because restrictions can negatively affect
the quality of the feed-rate calculation.
If an MC 61xx or MC 71xx main computer is detected during start-up of the
NC software (clock frequency < 1.1 GHz), ADP is automatically deactivated.
In this case the previous motion control continues to be effective.
These are the most important benefits of ADP:
• Symmetrical feed-rate behavior on forward and backward paths
(important during bidirectional finish-milling)
• Especially smooth feed rates changes for parallel cutting paths
• Improved reaction to negative effects (e.g. short, step-like stages,
coarse chord tolerances, heavily rounded block end-point coordinates)
in NC programs generated by CAM system
• Exact compliance of the dynamic characteristics even in difficult
conditions in the segmentation of the NC program
• Additional optimization in the treatment of 5-axis programs under
consideration of the dynamic influence of tool center point
management on linear axes
The transition to ADP does not entail any configuration changes. However, the
following improvements can be made for fine adjustment. Please note,
however, that it is not possible to give optimization recommendations of
general validity. The usefulness of a parameter optimization must rather be
checked on an individual basis for the respective machine when changing to
ADP.
• Axis-jerk values
Since ADP can predict the axis-jerk values more precisely than the
previous motion control, even with complex movements, the axis-jerk
values can be raised slightly under CfgLaAxis/axTransJerk, if required.
• curveJerkFactor
The factor CfgLaPath/curveJerkFactor should not be set higher than
5 because higher values can impair the effectiveness of the feed-rate
smoothing of ADP.
• curveTolFactor
The factor CfgLaPath/curveTolFactor should not be set higher than 5
because higher values can impair the effectiveness of the feed-rate
smoothing of ADP.
• reduceCornerFeed
If CfgLaPath/reduceCornerFeed=TRUE, ADP can move through
corners and arcs at a slightly lower speed but with full utilization of the
tolerance.

68 HEIDENHAIN Technical Manual TNC 640


• Filter settings
The effect of the feed-rate smoothing is generally better with soft filters
(triangle with low frequency) than with hard filters (HSC with high
frequency). When soft filters are used in combination with high
tolerances, for example during roughing, the productivity can be
increased even with difficult NC programs that contain inaccurate, noisy
blocks.
Both for 3-axis and for 5-axis machining it is advisable (also with ADP)
to use only the settings in CfgFilter for the interpolating linear and
rotary axes and to do without individual settings in CfgPositionFilter.
Only then can ADP predict the dynamics of the movement with high
accuracy.
 New: Software option 141—Cross Talk Compensation (CTC)
Dynamic acceleration processes can cause axis couplings to briefly deform
parts of a machine and result in deviations at the tool center point (TCP).
With the CTC controller function, this acceleration-dependent position error
at the TCP can be compensated, see "CTC – Cross Talk Compensation
(option #141)" on page 1459.
 New: Software option 142—Position Adaptive Control (PAC)
Depending on the positions of the axes in a working space, the kinematic
conditions of a machine give it a variable dynamic behavior that can
adversely affect the stability of the servo-control.
To exploit the machine’s dynamic possibilities, you can use the PAC option
to change machine parameters depending on position, see "Position
Adaptive Control (PAC), option #142" on page 1464.
 New: Software option 143—Load Adaptive Control (LAC)
In order to optimize changed control behavior under various load and friction
conditions, the LAC option enables the control to automatically apply
adaptive feed-forward depending on the current workpiece mass and
frictional forces, see "Load Adaptive Control (LAC), option #143" on page
1465.
 New: Software option 144—Motion Adaptive Control (MAC)
The MAC option provides a way to change machine parameters depending
on motion-dependent input quantities (e.g velocity or following error). This
makes it possible, for example, to realize a velocity-dependent adaptation of
the kV factor on motors whose stability changes through the various
traversing velocities, see "Motion Adaptive Control (MAC), option #144" on
page 1476.
 New: Software option 145—Active Chatter Control (ACC)
With the ACC option you can significantly reduce a machine's inclination to
chattering and increase the attainable metal removal rate during heavy
cutting by 25 % and more, depending on the type of machine. The new
column "ACC" is available in the tool table to activate this function for certain
tools, see "Active Chatter Control (ACC), option #145)" on page 1478.

January 2015 1.3 NC software 34059x-02 69


 New: Crossover Position Filter (CPF)
To increase the stability of the position control loop in systems with
resonances, the position signal from the position encoder, which is filtered
through a low-pass filter, is combined with the position signal from the
motor speed encoder, which is filtered through a high-pass filter. This signal
combination is made available to the position controller as actual position
value. This results in a significant increase in the possible position controller
gain (kV factor). The filter separation frequency is set specifically for each
axis using the machine parameter MP_compActDampFreq. The CPF can
be used only in dual-encoder systems, i.e. on drive motors with speed
encoder and position encoder, see "Crossover Position Filter (CPF)" on page
1434.
 New: Active damping of low-frequency oscillations
The active damping of low-frequency oscillations is suitable for damping
noise oscillations of approx. 10 to 30 Hz. The damping factor can be set in
MP_compActDampFact, and the damping time constant in
MP_compActDampTime, see "Active damping of low-frequency
oscillations" on page 1358.
 New: Monitoring the velocity difference between position and speed
encoder
The TNC 640 monitors any velocity difference that might occur between the
position and speed encoder (e.g. when using a belt drive). The maximum
permissible difference is set in MP_maxSpeedDiff.
 New: Operation of two motors with the same position input
For special applications (e.g. externally driven C axis), it is necessary that an
axis or spindle can be driven alternately by two drive motors. If one drive is
switched off, the other drive can move the axis. If the same position
encoder is used for both drives at the same position input, bit 9, i.e. a value
of 512, must be set in MP_miscCtrlFunct1 under CfgCCAuxil.
 Enhanced: Operation of analog axes/spindles
Analog and digital axes can now be interpolated with each other in the HSCI
system, because nominal value generation (analog voltage output) at the
output of the CMA-H 04-04-00 SPI plug-in module has been synchronized
with the voltage output of the digital axes via the power module.
 Enhanced: Backlash compensation
The compensation values for backlash can now also be calculated
dynamically depending on the acceleration. For acceleration-dependent
backlash compensation enter the distance within which the complete
compensation value should be covered in MP_backlashTimeConst. This
makes it possible to apply the compensation value more rapidly at high
acceleration, and more slowly at low acceleration.
 Enhanced: Speed monitoring for spindles
For monitoring the spindle speed, MP_relSpeedTolerance enables you to
monitor for a maximum relative overshoot of the spindle speed (in percent).
In addition, MP_absSpeedTolerance makes it possible for you to define an
absolute value for the permissible overshoot of the spindle speed. This
value is used for speed monitoring only if the relative value that results from
MP_relSpeedTolerance is less than the absolute value from
MP_absSpeedTolerance, see "Monitoring the spindle speed" on page
1594.

70 HEIDENHAIN Technical Manual TNC 640


 Enhanced: Number of multifunction filters
A sixth multifunction filter (nominal current value filter or nominal speed
value filter) has been added, which can be configured using the machine
parameters MP_vCtrlFiltType6, MP_vCtrlFiltFreq6,
MP_vCtrlFiltBandWidth6 and MP_vCtrlFiltDamping6, see "Filters in the
speed controller and position controller when using the CC 61xx" on page
1346.
 Enhanced: Checking the rotary axis position
In MP_chkTiltingAxes for checking the rotary axis position during datum
setting, you can now define whether the current tilting situation and the
rotary axis position are to be checked only if the "Tilt machining plane"
function is active. In addition, the rotary axis position can also be checked
for the position 0 if the "Tilt machining plane" function is inactive, see
"MP_chkTiltingAxes" on page 1978.
 Enhanced: Central drive for digital axes (with CC 61xx)
In order to support central drives, a second or more position inputs can be
used for a drive motor. In this case, the spindle position encoder must be
connected with the CC 61xx's position input belonging to the PWM output.
 Enhanced: Compensation values in compensation tables (*.COM)
Compensation values with six decimal places (1 nm) can now be entered in
the compensation tables (*.COM).
 Changed: Counting direction of axes with position encoders
To avoid problems in adapting the direction of traverse (polarity and counting
direction) of axes with position encoders, the MP_posDiffCountDir
machine parameter is now determined internally from
MP_signCorrNominalVal and MP_signCorrActualVal. The default value
of MP_posDiffCountDir has been changed to Automatic for this purpose.
 Changed: Configuration of master-slave torque control
The new parameter MP_compOnlySlave will be introduced to replace the
removed MP_torqueDistrFactor and MP_speedCorrectRatio machine
parameters that were not evaluated for the CC 61xx. This new parameter
can be used to distribute the output of the torque balancing controller (=
speed compensation value) evenly to the master and the slave or
exclusively to the slave, see "Gantry axes" on page 1244.

January 2015 1.3 NC software 34059x-02 71


PLC  Enhanced: Symbolic memory interface (API 3.0) – New operands
programming introduced:

PLC operand / Description Type

NN_GenTchProbeMonitoring M
Touch probe monitoring active
PP_ChnTchProbeMonitorOff M
Disable touch probe monitoring temporarily
NP_GenShutdownActive M
Control is being shut down
NP_GenShutdownRequest M
Soft key for control shutdown was pressed
NN_GenCtrlVoltageOnRequest M
Request for machine control voltage ON
NN_ChnAfcSpindleLoad D
Filtered value in tenths of percent of rated spindle load
NN_ChnAfcOverrideOutput D
Override factor for interpolator (= AFC output value)
NN_ChnAfcCuttingState D
Cutting state of AFC (value 0 to 5)
NN_ChnAfcSoftkey D
Setting of the AFC soft key
NN_ChnAfcIdleLoad D
Idle load determined by AFC
NN_ChnAfcPlcValTab D
Values from column PLC in table AFC.TAB
NN_ChnAfcMode D
Current AFC status (0=inactive, 1=learn, 2=control)
NP_ChnAfcError D
Error from AFC that led to NC stop
NP_ChnAfcToolWearLimit M
Tool-wear limit exceeded
PP_ChnAfcIntFact D
Setting of I factor
PP_ChnAfcTimeConstant D
Time constant of IIR filter for AFC
PP_ChnAfcPlcControl D
Alternative control input variable for AFC

72 HEIDENHAIN Technical Manual TNC 640


 New: Machine operating panel can now also be used for PLC output to
be set after shut-down
The 24 V outputs of HSCI machine operating panels (X7) can be used for the
switch-off function of a machine. Until now, only the single-channel outputs
of a PL 62xx could be used.
However, the following must be kept in mind:
• The maximum current of an output on a machine operating panel is
limited to 150 mA (500 mA with the PL 62xx).
• Galvanic isolation of the PLC supply must be ensured. The machine
operating panels and their outputs are supplied with +24 V NC.
 New: Updating the operating times upon shutdown
The operating times of the control will now also be updated when the
control is shut down by the PLC.
 Enhanced: Configuration of override devices
The PLC run-time system now supports override potentiometers on up to
four machine operating panels or HR 420/HR 5xx handwheels. In
MP_device under CfgPlcOverrideDev, you need to enter the key name of
the operating panel or HR on which the override potentiometer is located.
For the potentiometers on the HR 420 and HR 5xx display handwheels you
must enter individual key names under CfgPlcOverrideDev. For each
override potentiometer, you can now enter up to four different parameter
sets with symbolic key names in MP_source under CfgPlcOverride. You
can switch between them with PLC Module 9132.
During start-up the NC always activates the first parameter set from
MP_source. If the operator switches to the overrides of the HR 420 or
HR 5xx, the NC always activates the second parameter set from
MP_source.
If the values of override devices are evaluated linearly, a maximum and a
minimum value can now be specified in MP_values. These values should
correspond to the labeling on the machine operating panel. If only one value
is entered in MP_values, it is assigned to the maximum value and the
minimum value is assumed to be 0 %. If no value is entered, the control
additionally uses 150 % for the maximum value. It is now also possible to
emulate a source for the override values in the PLC program. To do this,
select "PLC" in MP_source under CfgPlcOverrideDev. The value of the
assigned API marker that transfers the override value from the PLC program
to the run-time system of the control will then be used as input value for the
next PLC cycle, see "Override" on page 2170.
 Enhanced: Number of PLC error messages
The TNC 640 now supports up to 10000 PLC error messages from the PET
table (PLC error table).
 Enhanced: PP_GenHandwheelLocked for disabling the axis direction
keys
The marker PP_GenHandwheelLocked now disables the axis direction
keys of a handwheel in addition to the handwheel pulses. Movements that
are started by the PLC program are no longer influenced by the velocity level
of the handwheel. It influences only those movements that are started with
the handwheel or the traverse keys of the handwheel (if the handwheel is
operated in NC mode).
 Enhanced: API DATA function for diagnosis of the SPLC
The API DATA function now calls a submenu with the SPLC API and PLC
API soft keys. The PLC API soft key is used to display the PLC API data as
usual. SPLC API is used to display the SplcApiFromSafety and
SplcApiToSafety data structures.

January 2015 1.3 NC software 34059x-02 73


 Changed: Designation of marker NN_GenTchProbeX13
The marker NN_GenTchProbeX13 has been renamed to
NN_GenTchProbeTT, because TT tool touch probes can now be connected
to input X12 or X13 as desired. The previous designation will be continued
to be supported for reasons of compatibility.
 Changed: Designation of marker PP_AxFeedMax
The marker PP_AxManualFeedMax has been renamed to
PP_AxFeedMax. The previous designation will be continued to be
supported for reasons of compatibility. The value of this marker is used by
the PLC for defining a maximum feed rate for an axis.
 Changed: Behavior when an NC program is started
If the tool data in the pocket table do not match the loaded tool data of the
PLC run-time system when an NC program is started, the start of the NC
program is canceled by the run-time system with an error message.
 Changed: Behavior when configuration data is changed
The handling of the configuration data that is used during compilation of the
PLC program, assigned to PLC markers or read by the PLC program using
PLC modules, has been redesigned. The run-time system records the
configuration data that has been used since the start of the control and sets
the PLC marker NN_GenCycleAfterReConfig only if it is informed about
changes made to this configuration data. The run-time system does not set
the marker if this information is given while the PLC program is changing the
configuration data by calling a PLC module. The PLC program now no longer
stops if a change is made to an instance of the configuration entities
CfgOemBool, CfgOemInt or CfgOemPosition. The new values are
automatically linked to PLC markers. When configuration data that is used
during the compilation of the PLC program is changed, the PLC program no
longer stops. Instead, a warning is displayed, informing you that the PLC
program must be recompiled. If assigning configuration data to PLC markers
fails, a warning is displayed, but the PLC program is still started (or
continued). The configuration data cache can be read using the PLC server
API. The complete tree, including the configuration data used, is written to
the file %SYS%/runtime/PlcDataTree.log when service files are created.
 Changed: Handling of locked pockets in the pocket table
If the pocket of a tool is locked in the pocket table, an error message is now
displayed if this tool is called with a TOOL CALL. The same applies to a
TOOL CALL for a tool in the spindle, which is to be reinserted into a locked
pocket. Please keep in mind that locking a pocket in the pocket table does
not automatically result in deleting the tool in this pocket.
 Changed: Tool change with T0 strobe and tool T0
If no tool is in the spindle when a TOOL CALL T0 is performed, the PLC run-
time system now assumes that a tool T0 (without geometry) is to be
removed from the spindle, and therefore outputs a TOOL CALL T0.

74 HEIDENHAIN Technical Manual TNC 640


PLC modules  Enhanced: Module 9035
modified/enhanced (Read NC status information)
Additional new return value for function number 9 (handwheel axis):
999: Virtual tool axis
 Changed: Module 9036
(Write NC status information)
Additional new return values for function number 6 (select handwheel axis):
998: Deselect all axes
999: Select virtual tool axis
 Changed: Module 9048
(Interrogate the operating states of axes)
Additional new return values added:
7: Last brake test was successful
8: Last brake test failed
 Changed: Module 9180
(Keystroke simulation)
In order to support keys with override functions (value "KEY" in
CfgPlcOverrideDev/MP_source), Module 9180 can now also process the
key codes 256 (override at 100 %), 257 (increase override) and 258 (reduce
override).
 Changed: Module 9221
(Start a PLC positioning movement)
Additional new return value:
Bit 3 = 1: Collision monitoring deactivated
 Changed: Module 9222
(Status request of a PLC positioning movement)
Additional new request options for all axes:
–7: PLC positioning not started due to collision monitoring (bit-encoded for
all axes)
–8: PLC positioning has not reached probe point (bit-encoded for all axes)
Additional new return values:
7: PLC positioning not started due to collision monitoring
8: PLC positioning has not reached probe point
 Changed: Module 9227
(Positioning of auxiliary and NC axes)
New transfer value only for NC axes:
Bit 3 = 1: Collision monitoring deactivated
A deactivation of collision monitoring (bit 3) only has an effect, if all axes
positioned by the PLC at the same time were started with collision
monitoring inactive. For PLC positioning movements, the deactivation of
DCM with bit 3 does not affect the status information returned by Module
9064 (collision monitoring status). With active DCM the module still reads
"Monitoring active".
 Enhanced: Module 9421
(Interrogate the probing position of an auxiliary axis)
New error code has been added:
62: Invalid measured value

January 2015 1.3 NC software 34059x-02 75


New PLC modules  Module 9046
Configuration of CC data channels
Module 9046 is used to configure data channels from the CC to the PLC,
which are copied cyclically to the PLC double word memory.
 Module 9047
Initialization of CC algorithms
Module 9047 can reinitialize algorithms on a CC or reset them.
 Module 9063
Activate collision monitoring
Module 9063 is used to activate and deactivate collision monitoring (DCM)
for the Program Run modes.
 Module 9064
Status information about collision monitoring
Module 9064 is used to determine the current status of collision monitoring
(DCM).
 Module 9132:
Assignment of operating panels
Module 9132 is used to assign operating panels that are used to select the
respective potentiometer values for the override calculation from
MP_source.
 Module 9286
Select the VNC participant and control the focus assignment if there
are several operator terminals
Module 9286 is used to program the following status requests regarding
checking and control of multiple VNC clients (IPC, thin client):
• Enable or disable selection of the active VNC client and manual focus
assignment (e.g. Connect key, mouse operation).
• Enable or disable focus assignment (mouse operation, touchpad) for the
user
 Module 9287
General status requests regarding VNC clients
Module 9287 is used to program the following status requests regarding
checking and control of multiple operator terminals (IPC, thin client):
• Number of VNC clients
• Status of focus assignment
• Name of the active VNC client (master)
• List of VNC clients
• Individual name of a VNC participant from the participant list
 Module 9288
Status requests regarding an individual VNC client
Module 9288 interrogates the status of an individual operator terminal (IPC,
thin client):
• Properties of a client (master / can be master / can be displayed)

76 HEIDENHAIN Technical Manual TNC 640


 Module 9490
Select TT tool touch probe
Module 9490 is used to select or deselect the tool touch probe indicated in
the configuration data in MP_activeTT under CfgProbes.
 Module 9491
Assign input for TS touch probe
Module 9491 is used to assign an input port (X112, X113) for TS touch
probes via the PLC.
 Module 9492
Switch the touch probe on/off
Module 9492 is used to switch the touch probe on or off if the control is not
aware of the non-HEIDENHAIN touch probe's trigger properties.
 Module 9493
Read status information of TS/TT probes
Module 9493 enables you to request status information about the
connected touch probes.

January 2015 1.3 NC software 34059x-02 77


78 HEIDENHAIN Technical Manual TNC 640
1 Update Information No. 2

1.1 Overview

1.1.1 Released service packs


The following service packs have been released for NC software 34059x-02:
 Service pack 1: 34059x-02 SP1 September 2013
 Service pack 2: 34059x-02 SP2 September 2013

1.1.2 Released NC software


The following NC software has been released:
 NC software 340590-04 January 2014
 NC software 340591-04 January 2014

1.2 NC software 34059x-02

Service packs

Attention

When needed, HEIDENHAIN provides service packs for the various


versions of the NC software. Registered customers can download these
service packs from the HEIDENHAIN FileBase on the Internet. Installation
of a service pack in addition to the already installed NC software
implements important error fixes. Please ensure that the NC software
always contains the latest service pack before you ship the machine.
Perform all tests required of the machine or the NC software again after
having installed the service pack.

The following service packs have been released for NC software 34059x-02:

Service pack NC software Release


34059x-02 SP1 34059x-02 September 2013
34059x-02 SP2 34059x-02 September 2013

1.3 NC software 34059x-03

Note

The NC software 34059x-03 of the TNC 640 (NCK software version


597110-07) is not released by HEIDENHAIN. All functionality
enhancements planned for NC software 34059x-03 are contained in NC
software 34059x-04.

January 2015 1.3 NC software 34059x-03 79


1.4 NC software 34059x-04

1.4.1 Important notes on updating software


Please remember the following important information when updating the
software version listed below:
 TNC 640: 34059x-02 to 34059x-04

Note

HEIDENHAIN has introduced a new generation of main computer units


with powerful Intel Celeron and Core i7-3 processors on the basis of the
proven HSCI hardware platform. These new main computers MC 6541,
MC 6542, MC 6641 and MC 7522 are supported as of NC software 34059x-
04.
The previous main computers MC 62xx and MC 63xx are only supported up
to and including NC software 34059x-02. NC software 34059x-02 can be
upgraded to 34059x-04, provided that a subsequent hardware change to
the new main computers is performed, see page 84.
For an overview of the new main computers, please refer to "MC main
computer, HDR hard disk and SIK" on page 134.
NC software 34059x-04 can be installed on the previous main computers,
but the acknowledgeable error message NC software not supported by
hardware will be issued every time the control is started. HEIDENHAIN
cannot provide support for this combination of hardware and software. In
this case, the main computer needs to be exchanged; please get in touch
with your contact partner at HEIDENHAIN.

Note

HEIDENHAIN recommends:
Making a backup of the control (e.g. with TNCbackup) before updating the
NC software.
Saving your current machine configuration. The configuration editor (DATA
BACKUP soft key) can be used for this purpose.
If you later want to undo the software update and return to the previous
software version, you need the saved configuration data of the old version!

Note

Please perform the update of the NC software as described in the Technical


Manual in Chapter 2 "NC Software Exchange."

Note

Keep in mind the important information about the software update, which
is provided on the following pages.

80 HEIDENHAIN Technical Manual TNC 640


Loading new You must check and save the new machine parameters the first time that the
machine TNC 640 is started after a software update. The TNC 640 displays the MOD
parameters dialog on the screen:
 Enter the MOD code number 95148 and press the ENT key
The changes made to the machine configuration by the software update must
be checked and saved.
 Press the CONFIG DATA soft key
All new machine parameters are marked with a red exclamation point in the
configuration editor. The TNC 640 displays a message in green for every new
or edited parameter, indicating the change made.
 Important step: Press the SAVE soft key.
 Press the END soft key and exit the Machine Parameter Programming
operating mode by pressing the END soft key again.
The control loads the new machine parameters and continues the boot
process.

Note

After startup, further changes to the machine configuration might be


necessary. Please note the following information.

Firmware update of During the first restart of the control after the software update, important
HSCI devices firmware updates of connected devices are necessary.
 Follow the instructions given in the messages on the screen
 Acknowledge the message displayed for the firmware update by pressing
the RUN UPDATE button
 The control starts loading the new firmware.

Attention

Never shut down the TNC 640 while a firmware update is running—
otherwise the TNC will require servicing!
After the update is finished, the TNC 640 displays another message on the
screen. For the changes to go into effect, the machine's power must be
switched off for at least one minute. Switch off the main switch of the
machine and do not switch it on again until one minute has expired.

 Please note the detailed information on firmware updates under "Firmware"


on page 231.

January 2015 1.4 NC software 34059x-04 81


Replacing the The definition file of the symbolic programming interface API 3.0 has been
definition file of the expanded. The step described below must be taken for the PLC program to
symbolic memory be compiled successfully after the update.
interface
During the update of the NC software, a new version of the apimarker.def file
was automatically copied to the PLC partition of the control. Proceed as
follows:
 Switch to the Programming mode of operation
 Enter the MOD code number 807667 to switch to the PLC Programming
mode of operation
 Press the PGM MGT key to open the file manager
 Switch to the PLC:\proto\plc directory
 Copy the apimarker.def file to the program directory of your PLC program.
Overwrite the existing apimarker.def file:

Note

Add the new apimarker.def file to the PLCdesignNT project for your
machine. Otherwise, during the next transfer of PLC project files to the
control, the file might be overwritten by the old version.

Checking the PLC


basic program

Note

Please observe the following note if you


are using the "Basic-NCK-V05-00-Mill" HEIDENHAIN PLC basic program
version!

Please check the following section in the PLC basic program and modify the
PLC program if required:

82 HEIDENHAIN Technical Manual TNC 640


 Change in MP_READ.SRC:
To make it possible to start the brake test separately for each axis in
systems without functional safety FS, the PLC basic program reads the
information about the brake test from the CfgServoMotor/
testBrakeCurrent machine parameter. As of NC software 34059x-04 this
parameter has been moved to the new configuration object CfgBrake. This
leads to incompatibility with the released PLC basic program.
English: MP_READ.SRC

Old:
[…]
PS S"CfgServoMotor"
PS K &SG_axis_parameter_set
PS S"testBrakeCurrent"
PS KL_index_0
PS KL_factor_x1
CM 9431
PLW
> K+0
= axes[BL_axis_index].MG_brake_test_active
PLW
<> KL_config_data_does_not_exist
IFT
M_display_module_error(KG_error_module_9431)
ENDI
[…]
New:
[…]
PS S"CfgBrake"
PS K &SG_axis_name
PS S"testBrakeCurrent"
PS KL_index_0
PS KL_factor_x1
CM 9431
PLW
> K+0
= axes[BL_axis_index].MG_brake_test_active
PL BG_module_error_code
L BG_module_error_code
<> KL_config_data_does_not_exist
IFT
M_display_module_error
ENDI
[…]

January 2015 1.4 NC software 34059x-04 83


New MC 65xx, The new NC software 34059x-04 of the TNC 640 requires a high-performance
MC 66xx and MC 65xx, MC 66xx or MC 75xx main computer.
MC 75xx main
computers

Note

If a TNC 640 is upgraded from NC software 34059x-02 to NC software


34059x-04, the main computer needs to be exchanged. NC software
34059x-04 is not supported by the previous main computers MC 62xx and
MC 63xx.

Note

Do not ship machines with main computers of type MC 62xx or MC 63xx


and NC software 34059x-04. Exchange the main computer when updating
the software from NC software 34059x-02 to 34059x-04 in the field.

Proceed as follows:
 Update the NC software from 34059x-02 to 34059x-04, using the existing
MC 6241, MC 6242 or MC 6341 main computer. When updating the
software, please follow the procedure described in "NC software exchange
on the TNC 640" on page 222.
In addition, please note the important information about the new NC
software 34059x-04, which is provided in this Update Information No. 2.

Note

If you run the new NC software 34059x-04 with the previous main
computers MC 62xx or MC 63xx, the error message NC software not
supported by hardware will be displayed every time the TNC 640 is started.
The error message can be acknowledged and the main computer can be
used temporarily.

 After the software update is finished, shut down the TNC 640 and switch
off the machine to ensure that it is not under power.

Danger

Ensure that the main switch of the control or machine is switched off when
you engage or disengage connecting elements or connection clamps.

84 HEIDENHAIN Technical Manual TNC 640


 Only relevant to previous main computers with PROFIBUS interface:
The new main computers have a slot for an optional PROFIBUS module.
Install the optional PROFIBUS module ID 828539-01 in the new main
computer.
 Remove the SIK and the HDR or SSDR hard disk from the previous main
computer and install them in the new main computer.
Previous SIK, HDR and SSDR components of the TNC 640 are compatible
with the new main computers.
 Exchange the main computer.
 Reconnect the power supply and switch on the machine.
 Perform the required configuration, modifications and tests on the TNC 640
with NC software 34059x-04. Note the detailed information about the
improvements for the TNC 640, which are provided in this documentation.

Important On systems with functional safety FS, additional configuration and


information on commissioning steps are required after updating the software.
systems with
NC software 34059x-04 introduces many enhancements, including
functional safety FS
improvements in the configuration of safe systems (e.g. safe machine
parameter switchover). You will find a summary of all improvements in
functional safety in the Update Information No. 12 of the Technical Manual for
Functional Safety FS.

Note

Please note the additional information on updating the NC software on


systems with FS. This information is provided in the "Updating to NC
software 34059x-04" section of the Update Information No. 12 in the
Technical Manual for Functional Safety FS.

January 2015 1.4 NC software 34059x-04 85


1.4.2 Description of the new functions

New software You can enable the following new software options by entering a code
options number. HEIDENHAIN can give you the code number after having been
informed of the SIK number:

Option Description ID
#135 Synchronizing Functions 1085731-01
(Real-time coupling function)
Extended synchronizing and coupling of axes or
spindles.
The option currently only provides a real-time
coupling function (RealTimeCoupling, RTC).
The real-time coupling function makes it possible to
cyclically calculate a position offset for an axis from
the actual and nominal values of any other axes in
the system. This enables complex, simultaneous
movements for several axes to be implemented.
See "Synchronizing Functions (Option #135)" on
page 1147.
#146 Active Vibration Damping (AVD) 800548-01
With option #146 you can activate a new active
damping process (AVD), which simplifies the
damping adjustment with only a few parameters
(frequency, damping, type of damping). AVD
provides an effective way to reduce machine
vibration. The damping types "machine setup
vibrations" and "resonances in the drive train" are
damped. For more information, please refer to "AVD
– Active Vibration Damping (option #146)" on
page 1481.

Changed software
option
Option Description ID
#41 Additional language 530184-xx
Additional conversational languages are available as
standard in the new NC software 34059x-02 of the
TNC 640. The following conversational languages
are now available without enabling option 41:
Korean, Norwegian, Romanian, Slovak, Slovenian,
Turkish
The following conversational languages are no
longer available due to lack of demand:
Estonian, Latvian, Lithuanian

86 HEIDENHAIN Technical Manual TNC 640


Overview of the On the following pages you will find a summary of the improvements in NC
improvements software 34059x-04.
For more detailed information about the function in this Technical Manual,
please refer to the page numbers indicated in the brief descriptions given
below.

Operation, NC  New: 3-D simulation graphics in full detail


programming and With the new finely detailed 3-D graphic simulation, you can exactly
technology evaluate the result of milling, drilling or turning processes even before actual
machining. For more detailed information about the new Test Run mode of
operation, please refer to the User's Manual for the TNC 640. The
advantages of the new graphic simulation:
• High resolution 3-D view
• Tool paths as 3-D line graphics
• Tool or workpiece transparency
• Tool-oriented coloring of the workpiece
• Accentuation of edges

 New: Define rotation-symmetric workpiece blanks


Two new NC commands permit the definition of a rotation-symmetric
workpiece blank for the graphic simulation and the program-run graphics
(refer to the User's Manual for more information):
• BLK FORM CYLINDER allows defining a workpiece blank as a cylinder or
hollow cylinder
• BLK FORM ROTATION allows defining any rotation-symmetric workpiece
blank
 New: Simple cutting data calculator
A simple cutting data calculator now enables users to calculate the spindle
speed and feed rate for a machining process. The calculated values can then
be automatically entered in an open feed-rate or spindle-speed dialog in the
NC program. For more detailed information about using the cutting data
calculator, please refer to the User's Manual for the TNC 640.

January 2015 1.4 NC software 34059x-04 87


 New: Support of 15'' components
The new NC software now supports the 15'' components for the TNC 640,
in particular the BF 750 15'' visual display unit (resolution 1024 x 768 pixels,
see page 162). A 15'' solution is also available with the new MC 7522 main
computer, if the main computer and the visual display unit are to be
integrated in the panel as a unit, see page 134.
 New: Cycle 275 TROCHOIDAL SLOT MILLING
In conjunction with Cycle 14 CONTOUR GEOMETRY, this cycle facilitates
the complete machining of open and closed slots or contour slots using
trochoidal milling. With trochoidal milling, large cutting depths and high
cutting speeds are possible because the equally distributed cutting
conditions prevent wear-increasing influences on the tool. When tool inserts
are used the entire cutting length is exploited to increase the attainable chip
volume per tooth. For more information about the new cycle, please refer to
the User's Manual for the TNC 640.
 Enhanced: Position display
New display options are available for the position displays 1 and 2, see page
1036:
• ACTDST:
Distance-to-go in the input system
• REFDST:
Distance-to-go in the machine system
• M118:
Traverses that were carried out with handwheel superimpositioning
(M118)
 New: Retraction mode of operation
The special Retraction mode of operation gives users the possibility to
retract a tool after a power failure. If line power fails during a machining
operation (e.g. thread cutting), the tool can be retracted from the workpiece
after a restart of the control, already before the brake test is performed and
the axes need to be referenced, see page 1901.
 New: "keylog.txt" keylog file with significantly improved readability
The new "keylog.txt" keylog file is now available in addition to the previous
"keylog.xml" keylog file. When the KEYLOG soft key is pressed, the new
"keylog.txt" file is displayed in the error window instead of the previous
"keylog.xml" file, see "Keystroke log file (keylog.txt)" on page 1929.
The new keylog offers the following advantages:
• The key names in the log are now displayed in an easy-to-understand
form.
• The keylog file now has a clearer structure, which makes it easier to
read.
 New: Daily keying element instead of code numbers and passwords
With the new HEIDENHAIN OEM daily keying element generator tool for
PCs you can generate a daily keying element for any HEIDENHAIN code
number and for any code number or password you have changed. The
created daily keying element can be used on the control instead of the code
number or password, see page 1889.

88 HEIDENHAIN Technical Manual TNC 640


 New: Touch-probe cycle 4: MEASURING IN 3-D
The touch-probe cycle 4 MEASURING IN 3D is now available. Touch probe
cycle 4 measures any position on the workpiece in the probing direction
defined by a vector. Unlike other measuring cycles, Cycle 4 enables you to
enter the measuring distance and feed rate directly. Also, the touch probe
retracts by a definable value after determining the measured value. For
more information, see the User's Manual for the TNC 640.
 New: Keyboard combinations for searching in the configuration editor
The following keyboard combinations are now available for searching in the
config editor:
• Start a search: CTRL + F
• Find the next match: CTRL + SHIFT + F
 New: NC syntax for AFC (Adaptive Feed Control, option #45)
Up to now, AFC could only be controlled by using FN17 commands. Now
new NC commands are available for controlling AFC through the NC
program:
• FUNCTION AFC CUT BEGIN TIME1 DIST2 LOAD3:
This NC command starts a sequence of cuts with active AFC. The TNC
640 determines the reference power of the spindle during machining
from this NC block in a so-called learning phase. In controlled operation
the feed rate is controlled by the TNC 640 so that the spindle assumes
the reference load. Closed-loop mode operation begins as soon as the
reference power was determined in the learning phase, or earlier if one
of the TIME, DIST or LOAD conditions was fulfilled. TIME specifies the
maximum duration of the learning phase in seconds, DIST specifies a
maximum cutting path for the learning phase and LOAD explicitly
specifies the reference load.
• FUNCTION AFC CUT END:
This NC command deactivates AFC.
• FUNCTION AFC CTRL:
This NC command activates closed-loop mode starting with this block,
even if the learning phase had not been completed yet.
 New: Copy blocks while the NC program is running
Up to now, it was not possible to copy and paste blocks within an NC
program while the NC program was being executed in the Programming
mode of operation. The new NC software of the TNC 640 now supports this
feature.
 Enhanced: Tool table
Up to 32 characters can now be entered in the DOC column of the tool table,
see page 2191.
 Enhanced: Symbol and soft key for Active Vibration Damping (ACC)
The TNC 640 now displays an ACC symbol in the status display when the
ACC function (option #145) is enabled and actively preventing chatter
vibration. In addition, a new ACC ON/OFF soft key is available in the machine
operating modes. Machine operators can enable and disable the ACC
function with this soft key.
 New: Firewall
As of this software version, a firewall can be implemented for the primary
network interface of the TNC 640. The firewall can be configured to block
incoming network traffic depending on the sender and service, and/or to
display a message, see page 2715.
 Enhanced: Time/date settings
These settings can now also be accessed from the MOD dialog and have
been expanded by the possibility to synchronize the time over an NTP
server, see page 2188.

January 2015 1.4 NC software 34059x-04 89


 Changed: Web browser and PDF Viewer
The HeROS 5 operating system provides additional software tools. With this
NC software version, the web browser and the PDFViewer are updated to
new versions.
 Changed: Reserved names for network drives
Network drives cannot be named PLCE: or USB<n>: because these names
are reserved for internal functions, see page 2710.
 Changed: Service files
The service files have been expanded by additional control files, including
e.g. screen dumps of the current screen content, see page 1936
 New: NC syntax DATA READ and DATA WRITE
The NC blocks DATA READ and DATA WRITE enable you to access specific NC
or PLC data from within the NC program, see page 2563.
 Changed: CAPTURE ACTUAL POSITION
With the CAPTURE ACTUAL POSITION key, an L block is generated
in the Programming mode of operation that only contains axes from the
active kinematics.
 New: NAME column in the TOOLTURN.TRN table for turning tools
In the TOOLTURN.TRN table for turning tools there is now a NAME column for
the tool names. The names of the turning tools are taken from the
corresponding column of the tool table.
 Changed: Improved operation of the integrated oscilloscope
The following improvements have been made to the integrated oscilloscope
of the TNC 640 to simplify its operation:
• The signal configuration menu is now displayed on the start page of the
oscilloscope.
• The use of keys for signal configuration was simplified: With the ENT
key you select the type of signal, and with the arrow keys you can
switch channels.
• Buttons were removed; the oscilloscope is now fully operated using
soft keys.
• The MITOC CONFIG. and SIGNAL CONFIG. soft keys enable you to
easily switch between the configuration of analog and digital signals.
• The soft keys for loading and saving messages have been rearranged.
Both soft keys are now provided on the first soft-key row, which
simplifies navigation.

90 HEIDENHAIN Technical Manual TNC 640


 New: Selection of turning or milling kinematics during mode change
The NC commands FUNCTION MODE MILL and FUNCTION MODE TURN have been
expanded. A text string or a QS parameter specifying the desired kinematics
for the mode can now be entered after the commands. The selected
kinematics can be read in the switching macro via new FN18 functions:
• As index from CfgKinList/kinCompositeModels:
FN18: SYSREAD ID290 NR10 (default: -1)
• As key name from CfgKinList/kinCompositeModels with:
FN18: SYSREAD ID10290 NR10 (system string)
 New: Display information and error messages in two lines
If the info line is disabled with the MOD key (Display settings – Show the
info line), you can now also display error messages in two lines in the
mode display.

January 2015 1.4 NC software 34059x-04 91


Machine  New: Load the default configuration of a machine
configuration A new function for loading an OEM default configuration is available in the
configuration editor. When you use the Copy default data function (DATA
BACKUP soft key), a configuration of the TNC 640 is loaded from the SYS
partition by default.
If there are configuration files in the %OEM%\default\oem or
%OEM%\default\usr directory (directories with files), this data is copied to the
corresponding directories on %OEM% or %USR% when the function is executed.
In this case, no default data of the NC software is copied from the SYS
partition.
Before the default data is loaded, a backup of the previous configuration is
stored in %OEM%\CONFIG.BAK.
 New: Save OEM-specific backup via config editor and restore it via file
manager
New functions are available for saving and restoring an OEM-specific
machine backup. In this way you can create a *.ZIP backup file containing
the machine configuration and any other OEM-specific files. Your customer
can then use the file manager to install this backup, e.g. in the TNC 640
programming station.
The backup is created with the Back up parameter files function (DATA
BACKUP soft key) in the Machine Parameter Programming mode of
operation.
The new CfgConfigBackup/backupFiles parameter makes it possible to
add further files or directories to the backup of the configuration data. As the
backup file may also contain tables, an emergency stop now must be
performed before creating the backup.
The backup can be restored as before by using the configuration editor. As
an alternative, you can now also restore the backup directly by selecting it
in the file manager. Before the restore process can be started, the MOD
code RESTORE must be entered.
 New: Delete parameters protected by software option
Some machine parameters are only displayed in the configuration editor
after the associated software option has been enabled. Parameters that are
hidden by an option and that still have a value are now marked with a red x.
The value is not displayed and cannot be edited, but it can be deleted.
Restriction: Parameters that are not optional and that are protected by a
software option cannot be deleted. Deletion resets these parameters to
their default values.
 Changed: Maximum key length for OEM parameters
The length of the key names of attribute information "CfgAttr..." was
previously limited to 40 characters. For OEM parameters, e.g. under
CfgOemInt, 40 characters were sometimes not enough. The maximum
length of key names for OEM parameters (CfgAttr...) has therefore been
increased to 60 characters.
 Changed: Effect of MP_manualFeed
If the MP_manualFeed machine parameter has different settings in
different parameter sets, the value defined in MP_manualFeed in the
currently active parameter set is now effective. Up to now, the value in the
parameter set with index [0] was active.

92 HEIDENHAIN Technical Manual TNC 640


 Changed: Improved help information for lists in the configuration
editor
The following information is now displayed for lists that may also be empty:
List (empty or index 0 to index nn)
The following information is displayed for lists that cannot be empty: List
(index 0; 1 to index nn)
nn is the maximum index for the list.
 Enhanced: Entry of a formula—Syntax check
As of NC software 34059x-02, the TNC 640 supports the input of a formula
instead of a fixed value for specific parameters. This makes it possible, for
example, to define a variable transmission ratio for the distance covered in
one motor revolution. The configuration editor now also checks the entered
formula. If the configuration editor detects an error, e.g. an unknown
function, a syntax error, etc., it issues an error message.
 Enhanced: Update rules for tables
The table updater supports the new rules ’INSERT COLUMN FROM’ for the
conversion of tables and ’UPDATE CONFIRM’ for the confirmation of
changed tables during startup of the control.
 Enhanced: Import rules for tables
The ’IMPORT INDEX’ rule is now supported for the import of tables.

Machine
parameters
Enhanced/Changed machine parameters:
new/enhanced/
changed

MP Config object Parameter Description of change


number
100611 CfgHandwheel MP_plcInputs With the HR 410, you can now use
this parameter in NC mode to define
whether the axis keys are mapped
to the PLC inputs, see page 2151.
The previous function for
handwheels with display remains
unchanged.
300112 CfgAxis MP_advancedSettings usePmax2ForM19 (bit 5) and
ignoreKinematics (bit 6) newly
added, see page 1030.
401311 CfgServoMotor MP_motEncType The parameterization possibility
was ambiguous. The choice off has
been renamed to From Table.
401316 MP_motPhiRef The maximum input value for the
parameter has been increased from
36 864 000 to 2 147 483 647.
402305 CfgAxisCoupling MP_posOffset The unit of measure is now
displayed depending on the type of
axis.

January 2015 1.4 NC software 34059x-04 93


New machine parameters:

MP Config object Parameter Description


number
100810 CfgDisplayData MP_axisDisplay Defines the display sequence and
the display rules for axes, see
page 1034.
100811 MP_axisDisplayRef Defines the display sequence and
the display rules for axes before
traversing the reference marks,
see page 1035.
122101 CfgPgmMgt MP_dependentFiles Specifies whether dependent
files (with the additional extension
.DEP) are to be displayed.
123901 CfgWorkingRange MP_kinCompositeModel Traverse range switchover:
Kinematics to be activated for
traverse range, see page 1114.
123902 MP_axes Traverse range switchover:
Activate/deactivate axes; switch
the parameter set, see page
1114.
123903 MP_basisTrans Traverse range switchover:
Path of the preset table *.pr for
this traverse range, see page
1115.
123904 MP_activeTT Traverse range switchover:
Active TT tool touch probe for this
traverse range, see page 1116.
123905 MP_plcMarker Traverse range switchover:
PLC status marker for traverse
range, see page 1116.
123906 MP_handwheelAxes Traverse range switchover:
Selection of axes for the
handwheel for this traverse range,
see page 1117.
200602 CfgNcErrorReaction MP_onKinemReset Specifies how the TNC 640 is to
respond to a reset of NC data due
to a change in the kinematics, see
page 1006.
205001 CfgRangeAtStartup MP_rangeAtStartup Automatic activation of a traverse
range during startup, see page
1118.
205002 MP_defaultRange Default traverse range after
control startup, see page 1118.

94 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description
number
403401 CfgRTCoupling MP_function Defines the coupling function in a
formula. Up to 128 characters can
be used, see page 1153.
403402 MP_typeOfOffset Treatment of the position offset
with RTC , see page 1153.
403403 MP_offsetFeed Maximum permissible velocity
when moving into the offset, see
page 1154.
403404 MP_maxFeed Maximum permissible velocity for
RTC, see page 1154.
403405 MP_maxAcc Maximum permissible
acceleration for RTC, see page
1154.

Machine  New: Traverse range switchover


interfacing The TNC 640 now supports traverse range switchover for switching
between different working spaces (alternating table operation) or different
machine constellations. With the new CfgWorkingRange configuration
object, you define the settings for the traverse range switchover. For more
information on traverse range switchover, please refer to "Traverse ranges"
on page 1112.
 Enhanced/changed: Configuration of the displayed axes
Two new machine parameters MP_axisDisplay and MP_axisDisplayRef
have been added to the configuration object CfgDisplayData to allow the
easy and flexible configuration of the axis display on the screen. The
previous machine parameters MP_axisDisplayOrder,
MP_axisDisplayOrderRef and MP_axisDisplayRule are no longer
available. With the new parameters you can define rules for the display of
axes in the position and status displays. The display rules offer a number of
advantages, e.g. for the traverse range switchover. Observe the detailed
information under "Display of axes on the screen" on page 1034.

Note

The layout file of the user parameter (user123.xml) is not overwritten


automatically during a software update. As a result, the previous machine
parameters MP_axisDisplayOrder, MP_axisDisplayOrderRef and
MP_axisDisplayRule are retained in the file. The file needs to be corrected
manually.

 New: Real-time coupling function RTC (option #135)


The coupling function makes it possible to control PLC axes in
dependency on other PLC axes or an NC axis. This enables you to
realize complex simultaneous movements of several PLC axes. The
coupling function is activated and deactivated through PLC module
9228. PLC module 9229 supplies the status information on the coupling
functions. With the new CfgRTCoupling configuration object, you define
the settings for the coupling function. For more information on the coupling
function, please refer to "Synchronizing Functions (Option #135)" on
page 1147.

January 2015 1.4 NC software 34059x-04 95


 New: KinematicsDesign on the TNC 640
The KinematicsDesign PC tool is now also available on the TNC 640. The
KinematicsDesign version on the TNC 640 supports the optimization,
adaptation and modification of your machine kinematics. The working space
and the collision objects of the active kinematics can be displayed and
edited. The version in the control contains almost all the functions of the PC
version.
To start the KinematicsDesign tool, press the MOD key. Enter the code
number 95148 and open KinematicsDesign in the MOD dialog by pressing
Advanced Setup and the KINEMATICS soft key.
 Changed: All look-ahead parameters now available as standard
The following machine parameters of the look-ahead were previously only
available after enabling software option 2. The parameters are now available
as standard on the TNC 640:
• Axis-specific jerk CfgLaAxis/axPathJerk(-Hi) and CfgLaAxis/axMeasJerk
• Feed-rate smoothing CfgLaPath/filterFeedTime
• Radial acceleration CfgLaPath/maxTransAcc(-Hi)
 Expanded: FN17/FN18 functions, , see page 2521:
• FN17: SYSWRITE ID38 added:
New function for cycle and macro diagnostics: If the FN17: SYSWRITE
ID38 NR1=1 command is programmed in the macro, the macro is
displayed in the block display. This makes it possible to run macros
block for block in Single Block mode. Constraints:
The status display continues to show the status of the regular NC
program; only the status display for Q parameters displays the values
from the macro.
• FN18: SYSREAD ID50 and ID51 expanded:
For FN18 SYSREAD ID50 and ID51 the subindex in the NC syntax FN18:
SYSREAD <parameter> = ID <50/51> NR <number> IDX
<index>.<subindex> is now supported. This makes it possible to
address indexed tools with <index>.<subindex>.
• In turning mode (FUNCTION MODE TURN active) the following NC
commands can now be used to specify a shaft speed for the tool
spindle:
FN17: SYSWRITE ID57 NR5 = <spindle speed>
FN17: SYSWRITE ID57 NR99 = 8
• FN17: SYSWRITE ID59 NR1 and NR11 added:
With FN17: SYSWRITE ID 59 NR 1 = 0 the data of the tool in the spindle
(defines ID20 NR1 and NR11) is now read from the tool table and
written to the configured SQL bindings. If this function is called within
the OEM_TCALL_TS_POST macro, the changed data is used in the
execution. If a cutting speed was programmed in the TOOL CALL block,
FN17: SYSWRITE ID59 NR 11 = 0 initiates a recalculation of the spindle
speed and transmits the result to the PLC as an S strobe.
• FN18: SYSREAD ID210 NR8 added:
For reading out the angle of misalignment between spindle and tilted
coordinate system.

96 HEIDENHAIN Technical Manual TNC 640


• FN17: SYSWRITE ID310 NR20 added,
FN18: SYSREAD ID310 NR20 added:
Cycles and macros can now switch diameter programming on and off
and query the diameter programming status.
FN17: SYSWRITE ID310 IDX<axis> NR20 = -1 or 0 switches diameter
programming for an axis on or off.
FN18: SYSREAD Q<number> = ID310 NR20 IDX<axis> returns -1 if
diameter programming is active for the axis, and 0 if it is not active.
• FN18: SYSREAD ID992 NR12 added:
This function makes it possible to determine the type of cancellation
within an OEM_Cancel macro. The following return values are defined:
0: No cancellation
1: Canceled because of error or emergency stop
2: Explicit cancellation with internal stop after a stop in the middle of a
block
3: Explicit cancellation with internal stop after a stop at the edge of a
block
 Enhanced: FN16: F-PRINT —Formatted output of texts and Q
parameters
If the FN16 window is moved on the screen (e.g. with the mouse), the new
position is now stored persistently. When you reopen the FN16 window, it
will be shown at the new position.
 New: Support of tools with integrated gear
For tools with integrated drive and gear, an additional transmission ratio can
now be configured and activated through PLC module 9419, see page 1621

Configuring the  New: Support of up to four spindles


axes and spindle The TNC 640 now supports up to four spindles (previous only up to two).
Each spindle must be listed in CfgAxes/spindleIndices. In a TNC 640 this
list may now contain up to four elements, whereas previously only up to two
were allowed. For more information, please refer to "Spindles" on page 1565
and "Alternating operation of several spindles" on page 1615.
 New: Multiple brakes on one axis
It is possible to assign more than one brake to an axis. Each brake can be
configured and tested separately.
 Enhanced: Nonlinear axis-error compensation also for display axes
The nonlinear axis-error compensation is now effective for all axis types that
can be configured with MP_axisHw , see page 1173.

January 2015 1.4 NC software 34059x-04 97


PLC  Enhanced: Symbolic memory interface (API 3.0) – New operands
programming introduced:

PLC operand / Description Type

NN_GenApiModuleNumber D
Number of the last called module that reported an error
NN_ChnSpindleCount D
Number of spindles momentarily assigned to the NC
channel (only 0 or 1 currently possible with the TNC
640)
NN_ChnSpindle D
Index of spindles momentarily assigned to the NC
channel.
NN_AxChannel D
Index of the NC channel to which the axis is currently
assigned
–1: Axis is a PLC axis
NN_SpiChannel D
Index of the NC channel to which the spindle is
currently assigned
–1: Spindle is free (unassigned)
NN_AxBrakeReleaseRequest D
Request to release the axis brakes.
Bit-encoded axis 1 to axis n corresponds to bits 0 to n
0: Request to activate the brake
1: Request to release the brake
NN_SpiBrakeReleaseRequest D
Request to release the spindle brakes.
Bit-encoded axis 1 to axis n corresponds to bits 0 to n
0: Request to activate the brake
1: Request to release the brake
NN_axMotionNegativeDir M
Axis/spindle with unipolar motor
1: Nominal value output for negative traverse direction
0: Nominal value output for positive traverse direction

 New: I/O force list


The I/O force list allows overwriting the status of selected inputs and
outputs for servicing and commissioning purposes, see page 2320.
 Changed: Maximum memory area for PLC operands
The maximum PLC memory area permitted in the PLC configuration file has
been increased from 100 000 bytes to 500 000 bytes, see page 2334.
 Enhanced: Soft-key resource files *.XRS
Additional soft-key resource files can now be included in the *.XRS soft-key
resource files (via new Include statement in MenuDesign). This enables for
example the project-specific management of soft key submenus, e.g. for
special, optional tool magazines. See "Connecting soft key resource files" on
page 2060.

98 HEIDENHAIN Technical Manual TNC 640


 Enhanced: PLC operating hours counter
The number of PLC operating hours counters was increased from 8 to 20,
see page 2182.
 New: Non-volatile storage of specific NC data
The PLC run-time system now stores specific user or NC data in non-volatile
RAM. During normal shutdown of the control, the information is additionally
saved in a file on the system partition. This file is added to the service files
for diagnostic purposes. The following data is stored in non-volatile memory:
• Feed-rate and spindle-speed limits
• Infeed, number and location of the tool that is active in an NC channel
• Selected axis and speed range of the handwheel
• Serial numbers of the connected HSCI devices
• Content of non-volatile PLC markers
 New: Python library version 2.7
The Python version installed in the control has been increased from 2.5.2 to
2.7. Your previous Python scripts *.py should be executable without
requiring any changes.
If you only copied the already compiled *.pyc files to the control, however,
you will receive an error message because the files need to be compiled
with the new Python version 2.7 first. In this case, delete the *.pyc files and
copy the source files *.py to the control. They will be automatically compiled
to *.pyc files when they are called. You can then delete the source files
again.
 New: Output multiple M functions in an M strobe
Up to three M functions programmed immediately after each other in an NC
block can now be combined to a common M strobe. In order for the
common outputting of strobes to function correctly, either a separate signal
marker must be defined for each strobe, or all markers used for data
transmission must be arrays with three elements.
• CfgPlcMStrobe/singular = FALSE must be set for all these functions,
and the M functions must be effective either all at the beginning or all
at the end of block.
• If two subfunctions are entered in CfgPlcMStrobe/split for an M
function and CfgPlcMStrobe/singular = FALSE is valid, a strobe
containing both subfunctions is now output for this M function.
Example:
If the parameter CfgPlcMStrobe/singular = FALSE is set for M13,
instead of M13 being output, a combined strobe with M3 and M8 is
output.
 New: Detection of array overflow
The PLC compiler now issues a warning if a B=, W=, D= assignment is
made to an array that does not provide sufficient space. The PLC compiler
also issues a warning if an LB, LW or LD load command is performed from
an array that does not provide sufficient space. See page 2346.
 New: HR 410 handwheel—Optional mapping of axis keys to PLC inputs
With the HR 410, you can now use CfgHandwheel/plcInputs in NC mode
to define whether the axis keys of the handwheel are also mapped to PLC
inputs. See page 2151.
 Enhanced: Conditional compiling in the configuration file
The PLC compiler now also supports conditional sections with #if, #ifdef and
#ifndef in PLC configuration files. In addition, the #error statement is
supported.

January 2015 1.4 NC software 34059x-04 99


 Changed: Bus diagnosis
After the control was started up and before the PLC program was compiled,
serious errors ("red" status) were indicated in the bus diagnosis. Now, only
a warning ("yellow" status) is displayed there.

PLC modules  Enhanced: Module 9036


modified/enhanced (Writing NC status information, activating functions)
The module now supports the following status information:
• #8 (Specify handwheel speed as fraction of the max. value)
• #22 (Enable handwheel operation for operating-mode group 0..)
• #23 (Lock handwheel operation for operating-mode group 0..)
• #24 (Handwheel mode depends on the machine mode for operating-
mode group 0..)
• #25 (Lock configured encoder handwheel of axis 0..)
• #26 (Enable configured encoder handwheel of axis 0.. again)
See page 2147.
 Enhanced: Module 9038
(Read the status information of axes)
The module now additionally supports the status information:
• #10 (Axis with unipolar drive) , see page 1093.
 Enhanced: Module 9047
(Reset or initialize controller algorithms)
Further commands for the CC added, see page 1475.
 Enhanced: Module 9142
(Position preset for programmed axis)
The module now additionally supports the position preset:
• #3 (Reset the preset at 1: or 2: and use the reference value again), see
page 1020.
 Modified: Module 9122
(PLC axis status request)
New transfer value for interrogating the current operating state of a specific
PLC axis:
Bit 7=1: Positioning stopped because of limit switch
Bit 7 is supported by all PLC modules that can be used to start positioning
commands for auxiliary axes.
See page 1135.

100 HEIDENHAIN Technical Manual TNC 640


New PLC modules  Module 9228
Coupling function for auxiliary axes
With Module 9228 you can enable/disable the coupling of auxiliary axes with
other axes for positioning movements. See page 1156.
 Module 9229
Status of coupling function
With Module 9229 you can determine the status and error conditions of
Module 9228 (coupling functions). In addition, you can use the module to
calculate the position value that would currently be achievable by enabling
the coupling function. See page 1158.
 Module 9363
Activate brake test for an axis with selection of the axis brake(s)
With Module 9363 you can perform a brake test for specific or all brakes of
an axis.
 Module 9419
Set status for spindle
You can use Module 9419 to enter a new status for a spindle. This module
is similar to Module 9418, except that here you also can pass parameters
with the status. See page 1622.

January 2015 1.4 NC software 34059x-04 101


102 HEIDENHAIN Technical Manual TNC 640
1 Update Information No. 3

1.1 Overview

1.1.1 Released service packs

Attention

When needed, HEIDENHAIN provides service packs for the various


versions of the NC software. Registered customers can download these
service packs from the HEIDENHAIN FileBase on the Internet. Installation
of a service pack in addition to the already installed NC software
implements important error fixes. Please ensure that the NC software
always contains the latest service pack before you ship the machine.
Perform all tests required of the machine or the NC software again after
having installed the service pack.

The following service packs have been released for NC software 34059x-02:
 Service pack 1: 34059x-02 SP3 not published
 Service pack 2: 34059x-02 SP4 March 2014
The following service packs for NC software 34059x-04 have been released:
 Service pack 1: 34059x-04 SP1 February 2014
 Service pack 2: 34059x-04 SP2 May 2014
 Service pack 3: 34059x-04 SP3 July 2014
 Service pack 4: 34059x-04 SP4 August 2014
 Service pack 5: 34059x-04 SP5 November 2014

1.1.2 Released NC software


The following NC software has been released:
 NC software 340590-05 January 2015
 NC software 340591-05 January 2015

January 2015 1.1 Overview 103


1.2 NC software 34059x-05

1.2.1 Important notes on updating software


Please remember the following important information when updating the
software version listed below:
 TNC 640: 34059x-04 to 34059x-05

Note

HEIDENHAIN recommends:
Making a backup of the control (e.g. with TNCbackup) before updating the
NC software.
Saving your current machine configuration. The configuration editor (DATA
BACKUP soft key) can be used for this purpose.
If you later want to undo the software update and return to the previous
software version, you need the saved configuration data of the old version!

Note

Please perform the update of the NC software as described in the Technical


Manual in Chapter 2 "NC Software Exchange."

Note

Keep in mind the important information about the software update, which
is provided on the following pages.

104 HEIDENHAIN Technical Manual TNC 640


Loading new You must check and save the new machine parameters the first time that the
machine TNC 640 is started after a software update. The TNC 640 displays the MOD
parameters dialog on the screen:
 Enter the MOD code number 95148 and press the ENT key
The changes made to the machine configuration by the software update must
be checked and saved.
 Press the CONFIG DATA soft key
All new machine parameters are marked with a symbol (a white "N" on a red
background) in the configuration editor. The TNC 640 displays a message in
green for every new or edited parameter, indicating the change made.
 Important step: Press the SAVE soft key.
 Press the END soft key and exit the Machine Parameter Programming
operating mode by pressing the END soft key again.
The control loads the new machine parameters and continues the boot
process.

Note

After startup, further changes to the machine configuration might be


necessary. Please note the following information.

Firmware update of During the first restart of the control after the software update, important
HSCI devices firmware updates of connected devices are necessary.
 Follow the instructions given in the messages on the screen
 Acknowledge the message displayed for the firmware update by pressing
the RUN UPDATE button
 The control starts loading the new firmware.

Attention

Never shut down the TNC 640 while a firmware update is running—
otherwise the TNC will require servicing!
After the update is finished, the TNC 640 displays another message on the
screen. For the changes to go into effect, the machine's power must be
switched off for at least one minute. Switch off the main switch of the
machine and do not switch it on again until one minute has expired.

 Please note the detailed information on firmware updates under "Firmware"


on page 231.

January 2015 1.2 NC software 34059x-05 105


Check the
configuration and,
if necessary, adapt

Note

Note that the value is modified in which MP_vCtrlSpinMinSpeed is


transferred. The entry was previously evaluated in the machine parameter
MP_vCtrlSpinMinSpeed in [°/sec]. From software version 34059x-05 this
is evaluated in [1/min], as specified above.
If you use the optional monitoring of spindle speed in CfgSpeedControl
(page 1594), you must manually modify the entry in
MP_vCtrlSpinMinSpeed. To achieve the same monitoring effect you
must enter a value six times as large. Example:
Entry in MP_vCtrlSpinMinSpeed previously = 10 [°/sec]
Entry in MP_vCtrlSpinMinSpeed from SW 34059x-05 = 60 [1/min]

Replacing the The definition file of the symbolic programming interface API 3.0 has been
definition file of the enhanced. The step described below must be taken for the PLC program to
symbolic memory be compiled successfully after the update.
interface
During the update of the NC software, a new version of the apimarker.def file
was automatically copied to the PLC partition of the control. Proceed as
follows:
 Switch to the Programming mode of operation
 Enter the MOD code number 807667 to switch to the PLC- Programming
mode of operation
 Press the PGM MGT key to open the file manager
 Switch to the PLC:\proto\plc directory
 Copy the apimarker.def file to the program directory of your PLC program.
Overwrite the existing apimarker.def file:

Note

Add the new apimarker.def file to the PLCdesign project for the machine.
Otherwise, during the next transfer of PLC project files to the control, the
file might be overwritten by the old version.

106 HEIDENHAIN Technical Manual TNC 640


1.2.2 Description of the new functions

Overview of the On the following pages you will find a summary of the improvements in NC
improvements software 34059x-05.
After the short descriptions, page references are given for detailed
descriptions of the function in the current manual, or refer to the User's
Manual.

New software You can enable the following new software options by entering a code
options number. HEIDENHAIN can give you the code number after having been
informed of the SIK number:

Option Description ID
#52 KinematicsComp 661879-01
The software option enables spatial compensation
of the errors of rotary and linear axes, see page
1484.
#96 Advanced spindle interpolation 751653-01
The software option enables use of additional
functions for an interpolated spindle, see page 1623.
This concerns the following cycles:
 Interpolation turning, coupling (Cycle 291)
 Interpolation turning, contour finishing (Cycle 292)
For a more detailed description of these cycles or
their scope of functions, please refer to the Cycle
Programming User’s Manual for the TNC 640.
#131 Spindle Synchronism 806270-01
The spindle synchronization option synchronizes the
shaft speeds of two or more spindles so that they
rotate synchronously, with a gear ratio or a defined
offset.
See "Spindle Synchronism (option #131)" on page
1605.

January 2015 1.2 NC software 34059x-05 107


Modified or
enhanced software
options Option Description ID
#8 Software option renamed 617920-01
Option #8 has been renamed from
"Software Option 1" to "Advanced Function Set 1"
for better differentiation.
#9 Software option renamed 617921-01
Option #9 has been renamed from
"Software Option 2" to "Advanced Function Set 2"
for better differentiation.
#40 DCM – 526452-01
Dynamic Collision Monitoring
 Performance improvements
 Integration of M3D files
See "DCM - Dynamic Collision Monitoring (Option
#40)" on page 2089.
#135 Synchronizing Functions 1085731-01
(Advanced synchronization of axes and
spindles)
New functions have been integrated for the real-
time coupling function:
 Test mode for testing formulae
 Description of relations between axes in tables
See "Synchronizing Functions (Option #135)" on
page 1147.

108 HEIDENHAIN Technical Manual TNC 640


Operation and  Enhanced: DCM – Dynamic Collision Monitoring (Option #40)
technology Dynamic collision monitoring (DCM) interrupts machining and thus creates
increased safety for the machine and the operator, even with manual
traversing of the machine axes. This helps to prevent machine damage,
which can result in costly downtimes.
The launching of this software provides you with the new M3D format for
collision objects. This gives you interesting benefits:
• Simple data adoption of standard 3-D formats
• Display of machine components in full detail
• Improved utilization of machine space

See "DCM - Dynamic Collision Monitoring (Option #40)" on page 2089.


 New: NC syntax for DCM (Dynamic Collision Monitoring, Option #40)
In addition to the already existing options for activating or deactivating DCM,
you can now influence DCM with NC commands for specific parts in an NC
program. See page 2105.
• FUNCTION DCM OFF
This NC command temporarily deactivates collision monitoring.
Deactivation is only effective until the program end or until the next
FUNCTION DCM ON. DCM again becomes active if another program is
called.
• FUNCTION DCM ON
This NC command rescinds an existing FUNCTION DCM OFF.

January 2015 1.2 NC software 34059x-05 109


 New: Limiting traverse ranges via the MOD key
The Traverse limits function is available via the MOD menu under Machine
settings. This enables a lower and upper limit to be set for the machine
axes for limiting the momentary traverse range. See "Activating traverse
limits using the MOD function" on page 1112.
 New: Disabling kinematic selection via the MOD key
Selecting the machine kinematics for the Program Run operating modes can
now be disabled or password-protected via the MP_enableSelection
machine parameter, see "Machine parameters new/enhanced/changed" on
page 117.
 New: Authorization of all programming stations via a universal dongle
In the future, all current TNC programming stations from HEIDENHAIN can
be authorized with a universal dongle, independent of the control version
used. This applies for the programming stations TNC 320 (from 771854-01),
TNC 620 (from 817604-01), TNC 640 (from 340594-04) and iTNC 530 (from
606424-04 SP 04).
In addition, the product-specific programming station dongles of type MARX
CRYPTO-BOX (silver-colored dongle) authorizes all programming stations.
Example: The TNC 640 programming station can be authorized with the
dongle of the TNC 320/620 programming station, and vice versa.
 Enhanced: Columns in the turning-tool table
In the table for turning tools toolturn.trn, the new columns YL (tool length
3) and DYL (oversize, tool length 3) are now available. See "Elements of the
turning-tool table" on page 2193.
 Enhanced: DOC column in the pocket table
The number of possible characters for the DOC column of the pocket table
has been increased from 16 to 32. See "Elements of the pocket table" on
page 2194.
 New: Table selectable for turning tools in the Test Run
In the Test Run mode of operation, a TOOLTURN.TRN turning tool table
belonging to the NC program can now be selected. The table can be used
for the simulation, as with the tool table, by selecting in the file manager.
The selected table is displayed with status "S" in the file manager.
 New: Support for the cable-based TS 249 touch probe
The TS 249 touch probe can now be connected via the touch probe
interface. A corresponding selection option is available in the touch probe
table.
 Enhanced: Rapid access to circular constant in the calculator
In the calculator you can now press the P key for adding the circular constant
PI for entering polar coordinates.
 Enhanced: Block scan
With a block scan, axes not present in the machine parameter
MP_restoreAxis (sequence for re-approaching the contour) are provided for
re-approaching, e.g. following a switchover from milling to turning mode.

110 HEIDENHAIN Technical Manual TNC 640


 Enhanced: File Manager
• Copying to USB devices
A progress bar is now displayed during copying of large files to USB
devices or when ejecting a USB stick. This indicates to the operator
when copying has finished or when the USB device from TNC 640 can
be removed. This prevents premature removal of USB devices that may
cause damage to files.
• Improved soft keys for file type selection
Soft keys for selecting a specified file type have been visually improved
with graphics.
• Copy file path via LAST FILES soft key
In the file manager, after pressing the LAST FILES soft key the currently
selected list entry is copied to the clipboard. This enables a path to be
subsequently adopted as a subprogram call in an NC program for
example. With the LAST FILES selection window open, press the
COPY MOMENTARY VALUE soft key to copy the path to the clipboard.
 New: Write protection for lines in the preset table
An additional LOCKED column is now available for the preset table. A
password can be specified in this column to protect selected lines in the
table from modifications. This enables you to protect the preset for the
machine datum for example. Write-protected lines are shown in a red color.
See "Password protection for selected lines of the preset table" on page
1977. Refer to the detailed information in the Conversational Programming
User’s Manual of the TNC 640.
 New: Exponential display for Q parameters
The status display is switched to exponential display for very large or very
small numerical values. In general, Q parameters in the status display are
shown with more decimal places.
 Enhanced: The TNC 640 provides improved error messages with NC
commands and miscellaneous functions that were not supported with
previous controls
The commands FN 15, FN 31, FN 32, FT and FMAXT from previous controls
no longer generate ERROR blocks during importing. When simulating or
running an NC program with these commands, the TNC 640 interrupts the
NC program with an error message that enables you to locate an alternative
implementation.
Miscellaneous functions M104, M105, M112, M114, M124, M134, M142,
M150, and M200 - M204 from previous controls no longer generate ERROR
blocks during the import process. When simulating or running an NC
program with these miscellaneous functions, the TNC 640 interrupts the NC
program with an error message that enables you to locate an alternative
implementation.
Refer to the Conversational Programming User's Manual of the TNC 640 for
more information about this.
 Modified: Display of the STIB (control-in-operation) symbol
Until now, with manual movements with the axis direction keys the STIB
(control-in-operation) symbol was only shown if the access actually moved.
The symbol was not shown if override was set to 0%. Now the STIB symbol
is displayed as long as the traverse job is active, independent of axis motion.

January 2015 1.2 NC software 34059x-05 111


 Modified: Default font with unknown fonts
If you use fonts not existing on the control for your own texts, the TNC
automatically uses a default font for this purpose. This has been modified to
the "Dejavu Sans" (true type) font. Please observe this with your OEM-
specific implementations, such as masks via Python scripts, and adapt if
necessary.
Previous fonts of the iTNC 530 are also no longer supported by the TNC 640.
HEIDENHAIN therefore recommends using fonts specifically available on
the TNC 640. The "Dejavu Sans" default font is available on the TNC 640 and
iTNC 530.
 Enhanced: Feed rate planning of ADP with Cycle 32 TOLERANCE
With use of Cycle 32 with HSC mode = 1 (roughing), the feed rate planning
of ADP has been optimized. With selection of larger T and/or TA tolerance
values, tolerance in corners can be better utilized and the corner feed rate
increased accordingly.

NC programming

Note

Below is a short overview of improvements for end users. Please refer to


the Conversational Programming User's Manual and Cycle Programming
User’s Manual of the TNC 640.

 New: CAD Viewer


A new function allows you to open standardized CAD data formats directly
on the TNC 640. The CAD Viewer displays the following file formats:
Step files (*.STP and *.STEP), Iges files (*.IGS and *.IGES) and DXF files.
Selection is made via the file manager. Refer to the detailed documentation
in the Conversational Programming User’s Manual of the TNC 640.
 Enhanced: DXF Converter (Option #42)
Operation of the DXF Converter has been simplified—the new user
interface corresponds to the new CAD Viewer. Viewing DXF files is now
possible without enabling Option #42. Refer to the detailed documentation
in the Conversational Programming User’s Manual of the TNC 640.
 New and modified cycle functions:
Refer to the detailed documentation in the Cycle Programming User’s
Manual of the TNC 640.
• Enhanced: Cycle 22 (Rough-Out)
New optional parameters Q401 (feed rate reduction during full tool
engagement) and Q404 (selection of fine roughing strategy)
• New: Cycle 39 (Cylinder surface external contour milling)
• Enhanced: Cycle 225 (Engraving)
The character set has been enhanced with the CE character, ß, @
character and system time.
• New: Cycle 239 (cycle for LAC weighing run)
For using the software option #143 LAC, HEIDENHAIN now provides
Cycle 239 enabling users to run a LAC weighing run. For your users to
use the cycle, you must create a special NC macro for defining the
weighing run sequence. See "Weighing run for LAC" on page 1467.

112 HEIDENHAIN Technical Manual TNC 640


• Enhanced: Cycles 252 to 254
New optimized parameter Q439 (defines interpretation of programmed
feed rate)
• New: Cycle 270 (contour train)
• New: Cycle 292 (Interpolation turning, contour finishing)
• New: Cycle 291 (Interpolation turning, coupling)
• Enhanced: Cycle 484 (calibrate wireless TT 449)
New optional Q536 parameter (stop before run)
• New: Cycle 880 Gear wheel hobbing
• Enhanced: Cycles 841, 842, 851, 852
New Q488 parameter (plunging feed rate).
 Enhanced: Syntax for TOOL CALL
The syntax FZ (feed per tooth) and FU (feed per revolution) is also supported
in the TOOL CALL.
 Enhanced: Programming graphics
The display of 2-D programming graphics can now be switched between
plan view, front view and side view via soft key. This provides improved
control options during programming. The display for milling and turning
contours can also be optimally specified. Refer to the detailed
documentation in the Conversational Programming User’s Manual of the
TNC 640.
 New: Point pattern cycles in Single Block
In Single Block, the TNC 640 runs each point individually with point pattern
cycles and CYCL CALL PAT. Refer to the detailed information in the
Conversational Programming User’s Manual.
 Enhanced: M116 is effective with M128 and M138
M116 is also effective in an active tilted working plane in combination with
M128 if you used the M138 function to select rotary axes. Refer to the
detailed information in the Conversational Programming User’s Manual of
the TNC 640.

January 2015 1.2 NC software 34059x-05 113


HEIDENHAIN  New: Media Player
HEROS 5 operating The operating system of the control features the "Totem" media player for
system playing audio and video files. This enables media files with "Ogg" format
(.ogg, .oga, .ogv, .ogx) to be played, see page 236.
 New: Run web browser in Sandbox
Thanks to the use of a modern virtualization solution, it is now possible to
operate the web browser in a protected Sandbox. This prevents web
applications accessing data on the control. For more information, see
"Sandbox" on page 2698.
 Enhanced: Remote Desktop Manager (software option)
Windows Terminal Service RemoteFX is available as a new connection type
in the Remote Desktop Manager. RemoteFX displays the desktop of a
remote Windows computer on the control. In contrast to the previously
supported RDP, RemoteFX provides more rapid and reliable desktop
switchover, see page 2019.
 New: Disable access to USB interfaces
The HEROS setting dialog Settings|SELinux has been enhanced with the
menu item Allow USB storage devices (Memory Sticks). This option is set
as the factory default setting. If the option is deactivated, USB data carriers
(memory sticks etc.) can no longer be connected by the system. Instead, a
warning is displayed at below right on the screen for 15 seconds if a USB
memory is connected with the control. Connecting these devices via
console commands is also disabled. See page 237.
 SMB authorization for USB drives
Connection types Windows Terminal Service (RDP), Windows Terminal
Service (RemoteFX) and VNC in the Remote Desktop Manager have been
enhanced with an Authorize USB mass storage setting option. If this setting
is set and the connection started, a Samba share with the name of
usbdrives is exported from the HEROS computer in which all connected
USB memory devices are visible with their HEROS device names
(USB0..USBn). Only computers configured in the Remote Desktop Manager
have access to this share. See page 2019.
 Enhanced: New functions for HE Logging
A new tab USBDump is available under HE Logging. The LogExplorer is a new
program now available for evaluating log files on the control. These
functions and the associated settings are to be used only together with
HEIDENHAIN service personnel. See "HE Logging" on page 233.

114 HEIDENHAIN Technical Manual TNC 640


Machine  New: Configure HEIDENHAIN drive components via electronic
configuration keyboard
The type designations read from the electronic keyboards of the motor,
inverter and supply module can now be used by the TNC 640 to supplement
possibly missing configuration data or testing available configuration data (=
plug and play function). To activate the function, set the following
parameter:
CfgHardware/plugAndPlay = Active (See page 1669.)
If it is necessary to select another configuration with individual devices than
specified via CfgHardware/plugAndPlay, the mechanism can be
deactivated via further machine parameters:
• CfgSupplyModule/plugAndPlay
• CfgServoMotor/plugAndPlay
• CfgPowerStage/plugAndPlay
 New: Simplified update of machine parameter subfiles
In the configuration editor, the new "FILE / UPDATE DIRECTORY" soft key
is used to update the MP subfiles both for single files and for complete
directories.
 New: Configurable behavior of the control at shutdown
The new MP_rebootOption machine parameter specifies whether, in the
"Shut down control" dialog, the control offers the user the restart option for
the NC software without a complete shutdown of the operating system.
This dispenses with the possibility of restarting with the END key (Press END
to reboot) at the end of control shutdown, see page 2079.
 New: New "Edit attribute information" dialog in the configuration
editor
With the new software version, a new dialog is available for convenient
editing of attribute information for each machine parameter or each
configuration object (all machine parameters are then included that are
contained in a "Cfg..." directory). This dialog is called in the configuration
editor with the specific machine parameter or the specific entity via the MORE
FUNCTIONS soft key and ATTRIBUTE INFO soft key.
New is the assigning of a password key (write protection) for any
machine parameters. See "Attribute information" on page 579.
 New: Write protection for FS parameters (functional safety)
Machine parameters relevant for Functional Safety FS can now be edited in
the configuration editor if the machine tool builder password was previously
entered. If not, the parameters are displayed as disabled. If the user tries to
edit the disabled parameters, the warning Enter machine tool builder
password is shown.
Write protection can be configured in the attribute information of the
specific parameter or specific entity. See "Attribute information" on page
579.
 Modified: The sequence of channel-dependent configuration data
The sequence of channel-dependent configuration data in the configuration
editor has been modified, so that associated data are now together. New
sequence:
• CfgChannelAxes
• CfgChannelFile
• CfgKinList
• CfgActivateKinem
• CfgRangeAtStartup

January 2015 1.2 NC software 34059x-05 115


 Enhanced: Create new MP subfile
A new MP subfile can be created with the LOAD MP SUBFILE, LOAD AND
SELECT or
EDIT ONLY soft keys.
See page 634.
 New: Plausibility test for the configuration of rotary axes
The TNC now carries out a plausibility test between MP_kindOfRotAxis
and MP_isModulo. An Erroneous kinematics configuration error
message is displayed if the entries in these two machine parameters do not
match. You must then test and modify the values of both machine
parameters in the configuration editor.
 Enhanced: Support for linear encoders with lengths over 28 m
The TNC 640 now also supports EnDat 2.2 linear encoders with lengths over
28 m (LC 200). These encoders are however only supported when
connecting to a position input of the controller unit
(MP_posEncoderType = CC_Extern_EnDat_2_2). Connections of such
encoders to the speed input is not supported.
 New: HRA 551FS can be used as an additional charging station for
HR 550FS
With MP_allowCharger = TRUE, the message Position handwheel in the
charging station of the wireless handwheel HR 550FS is not displayed if
the handwheel reports power supply via any HRA 551FS. This enables
several HRA 551FS to be connected to a machine, from which only one is
effective though as the actual wireless transmitter/receiver to the
HR 550FS, see page 2164.
 Enhanced: Support for Multiturn EnDat encoders
For improved handling of EnDat encoders with Multiturn information, the
value of the Multiturn counter and the metric position of the previous
overflow is now also automatically saved by the control in new machine
parameters under CfgEndatInfo. When updating to software version
34049x-05, the requisite machine parameters are automatically created, and
the existing values are adopted from the S-RAM (modCounterEndat) by the
respective new machine parameters, see page 1066.
 Enhanced: Momentary master slave couplings via open / close
parameter block switchover
A momentary master slave coupling can now be opened or closed via
parameter block switchover without needing to reboot the control, see page
1258.
 New: Support for columns with password characteristic for any tables
You can now define columns with passwords for any tables. The column
must have the TEXT data type and be at least 15 characters wide. This
enables you to protect any lines from unauthorized access in OEM tables.
See "Creating a new table type" on page 2435.
 New: Output parameter help as an XML file
Using the DATA BACKUP soft key in the Back up parameter files mode of
operation, you can now output the help information for the parameters as
an XML file. Select Save help information in XML file. See "Backup of
parameters" on page 610.

116 HEIDENHAIN Technical Manual TNC 640


 Enhanced: Update rules for configuration data
One parameter from an entity (Cfg...) can be moved to another with
UpdateAttributeMove, whereby key names for the source and target can be
specified. Numerical values can now be modified in bit form with
UpdateAttributeNewValue.
With the UpdObjectInsert update rule, a warning was previously displayed
if the file specified in the rule was not available. In such cases the update is
now aborted. Either the file must be created or the update rule corrected.
See "Update rules" on page 589.

Machine
parameters
Enhanced/Changed machine parameters:
new/enhanced/
changed

MP Config object Parameter Description of change


number
100901 CfgStatusAndQPar MP_clearMode The initial value in the machine
configuration was modified from 5
to 4.
107301 CfgPlcVersion MP_plcVersion The maximum string length for the
PLC version name was increased
from 22 to 64 characters, see page
2380
102201 CfgUserPath MP_ncDir The behavior was changed from
102202 MP_fn16DefaultPath "Modification at any time" to "Pgm
run is locked".
102203 MP_fn16DefaultPathSim
102304 CfgPlcPath MP_errorText In addition to directly entering the
102305 MP_dialog file name, a file selection dialog is
now available.
102312 MP_fn14ErrorText
105412 CfgEditorSettings MP_maxLineCommandSrch The maximum value was changed
from "100 000" to "400 000".
105601 CfgColumn MP_width The behavior was changed from
105602 Description MP_unit "Modification at any time" to "Pgm
run is locked".
105603 MP_initial
105604 MP_minimum
105605 MP_maximum
105606 CfgColumn MP_charset The behavior was changed from
105607 Description MP_unique "Modification at any time" to
"Pgm.lauf disabled".
105608 MP_readonly
105609 MP_unitsInch
120101 CfgUnbalance MP_spindle The behavior was changed from
MP_maxSpeed "Modification at any time" to
"Pgm.lauf disabled".
MP_radialPosition
MP_offset
MP_axisOfMeasure
MP_triggerMin
MP_triggerMax

January 2015 1.2 NC software 34059x-05 117


MP Config object Parameter Description of change
number
120101 CfgUnbalance MP_maxUnbalance The behavior was changed from
MP_minUnbalance "Modification at any time" to
"Pgm.lauf disabled".
MP_maxUnbalanceUsr
MP_limitUnbalanceUsr
MP_maxUnbalanceOem
MP_limitUnbalanceOem
MP_mStrobeSpindleCCW
MP_mStrobeSpindleCW
MP_mStrobeSpindleStop
MP_mStrobeOrient
MP_tableCalibrate
120102 MP_timeOut
120201 CfgTabelUpdate MP_files The number of possible entries was
List increased to 50.
120501 CfgChange MP_replaceWith If a code number was set with
12052 Password MP_hideOriginal MP_replaceWith, modifications
can only be implemented after
entering the momentarily valid code
number.
116604 CfgDiagnosis MP_traceDir The configuration object
116601 MP_osTraceFileSize CfgDiagnosis with associated
parameters has been deleted from
116602 MP_tcpTraceFileSize
the machine configuration. The
116605 MP_ncTraceFileSize parameters with HEROS 5 are not
116603 MP_krnlTraceFileSize required.
200303 CfgChannelAxes MP_refAxis The parameters were moved
200304 MP_refAllAxes to System/CfgAxes. The MP
numbers change from 200303 to
100004, and from 200304 to
100005. See page 1008.
201301 CfgTCPM MP_tolerance The parameter is no longer required
for 5-axis motion control. It is
therefore no longer available.
300403 CfgRollOver MP_showModuloDisp The parameter was removed from
the machine configuration.
400020 CfgAxisHardware MP_distPerMotorTurnF The maximum string length for the
formula was increased from 64 to
300 characters.

118 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description of change
number
400907 CfgSpeedControl MP_vCtrlFiltType1..6 New input options (11x, 10x) for
new filter types, see page 1346
400908 MP_vCtrlFiltFreq1..6 Input range increased from 5000
[Hz] to 10000 [Hz].
400909 MP_vCtrlBandWidth1..6 Input range increased from 5000
[Hz] to 30000 [Hz].
400910 CfgSpeedControl MP_vCtrlFiltDamping1..6 Input range increased to -90 to +90
[dB].
402311 CfgAxisCoupling MP_propGain The minimum value and initial value
was changed from 0 to 0.001.

January 2015 1.2 NC software 34059x-05 119


New machine parameters:

MP Config object Parameter Description


number
100617 CfgHandwheel MP_maxDelayRaster Limits maximum follow-up of the
axis movement with a handwheel
with ergonomic knob, see page
2144
100618 MP_allowCharger Permit additional charging station
for HR 550, see page 2164
101612 CfgShutDown MP_rebootOption Settings for the "Shut down control"
dialog, see page 2079
105505 CfgTableProperties MP_passwordKey Column with the password and
checksum of a data record, see
page 2443.
105610 CfgColumn MP_noPasswordProtect Permit change in spite of password
Description protection, see page 2450.
120406 CfgSoftkeyOverlay MP_active Soft-key superimposition activated/
deactivated, see page 2251
122604 CfgProbes MP_overrideForMeasure This parameter specifies whether
the feed-rate override is in effect
during probing.
124501 CfgPositionDisplay MP_progToolCallDL Defines position display
withTOOL CALL DL.
Possible settings:
 As Tool Length
Default behavior of the TNC 640.
The oversize DL programmed in
the TOOL CALL block is taken into
account as part of the tool length
in the nominal position display.
 As Workpiece Oversize
iTNC 530-compatible setting. The
oversize DL programmed in the
TOOL CALL block is not taken into
account in the nominal position
display. It is therefore effective as
a workpiece oversize.
See page 1037.
124801 CfgCMOMesh3D MP_filename File path to a M3D file, see page
2116
124802 MP_name Name displayed in the event of
collision, see page 2116

120 HEIDENHAIN Technical Manual TNC 640


MP Config object Parameter Description
number
200803 CfgNcPgmBehaviour MP_plcSignalCycle Name or number for a PLC word
marker: For executing the active
machining cycle, see page 1917.
201007 CfgGeoCycle MP_posAfterContPocket Position after execution of an SL
cycle, see 1980
201518 CfgLaPath MP_maxPathYankHi Mode of yank limitation at rapid
traverse, see page 1312
202604 CfgKinSimpleTrans MP_temperatureComp Formula for temperature
compensation, see page 1216
202703 CfgKinSimpleAxis MP_kinCompErr List of errors for KinematicsComp,
see page 1494
202703. MP_locErrX Position error in X direction
01601
202703. MP_locErrY Position error in Y direction
01602
202703. MP_locErrZ Position error in Z direction
01603
202703. MP_locErrA Position error in A direction
01604
202703. MP_locErrB Position error in B direction
01605
202703. MP_locErrC Position error in C direction
01606
202703. MP_compErrX Component error in X direction
01607
202703. MP_compErrY Component error in Y direction
01608
202703. MP_compErrZ Component error in Z direction
01609
202703. MP_compErrA Component error in A direction
01610
202703. MP_compErrB Component error in B direction
01611
202703. MP_compErrC Component error in C direction
01612
202703. MP_errOnToolSide Sequence of compensations
01613
202703. MP_resetLocerr Reset the position error
01614
204003 CfgActivateKinem MP_enableSelection Kinematics selection available /
disabled via the MOD key, see page
1198.
204204 CfgMillTurn MP_eccLimSpeedFactor Factor for maximum spindle speed
during eccentric turning, see page
1634

January 2015 1.2 NC software 34059x-05 121


MP Config object Parameter Description
number
205301 CfgDCM MP_reactionIfRTC Reaction to RTC commands with
active DCM , see page 2091
205302 MP_reactionIfUnref Reaction to non-referenced axes
with active DCM, see page 2091
300112 CfgAxis MP_advancedSettings/ Set axis position at shutdown in
clearShutoffPos SRAM to zero, see page 1030.
400317 CfgFeedLimits MP_limitAccSpeedCtrlF Formula for spindle acceleration,
effective above
MP_limitSpeedAcc, see page
1581.
400318 MP_limitDecSpeedCtrlF Formula input for spindle delay
during deceleration, effective above
MP_limitSpeedDec, see page
1582.
400610 CfgControllerAuxil MP_chkPosHoldFieldAdj Standstill monitoring during field-
angle adjustment, see page 1681.
401105 CfgControllerTol MP_syncTolerance Angle tolerance for spindle
synchronization, see page 1606
401106 MP_timeSyncOK Hysteresis time for spindle
synchronization, see page 1606
401512 CfgSpindle MP_kvFactorSync Kv factor for spindle
synchronization, see page 1606
401516 MP_incrPowForRoughing Increased spindle power for
roughing, see page 1597.
403407 CfgRTCoupling MP_filterTime Time constant of the mean value
filter for the formula result, see page
1154
403406 MP_testMode Activate the test mode for the real-
time coupling function, see page
1154
403501 CfgEndatInfo MP_MultiturnCtr Improved handling of EnDat
403502 MP_endatOverflowPos encoders with Multiturn
information, see page 1066
403503 MP_motName

122 HEIDENHAIN Technical Manual TNC 640


Machine  Enhanced: Temperature compensation improved
interfacing Compensation via MP_temperatureComp provides significantly more
options compared to the previous MP_realTimeComp. The compensation
values can therefore be directly specified in the machine parameter in the
form of any PLC operands, constants or mathematical operations.
HEIDENHAIN therefore recommends implementing temperature
compensation via MP_temperatureComp , see page 1216.
Observe that the values from MP_realTimeComp and
MP_temperatureComp are effective contrarily with identical algebraic
signs. The value from MP_temperatureComp is effective consistently to
other settings in the kinematic chain, e.g. the value from
CfgKinSimpleTrans/MP_val.
 New: Output nominal value step with integrated oscilloscope
It is now possible to specify a speed nominal value step with the integrated
oscilloscope (code number 688379), see "Preparing a recording" on page
1777.
 Enhanced: Pallet management
The TNC 640 now automatically updates the tool usage file if the LOCK
column is edited in the pallet table.
 New: Modify axis letters without a restart
A kinematics switch-over now also enables the axis letter to be modified
with which a physical axis is programmed. This function is of use when
exchanging milling heads:
If for example a new head is loaded, other drives are possibly located in this
drive but the motor connections remain the same.
Until now the axis letters A, B and C were defined for programming the
axes. The axes can now be allocated any axis letter. See "Changing the
programmable axis letter at run time" on page 1127.
 Enhanced: Feature Content Level (FCL)
With initial boot-up with a new SIK, the Feature Content Level (FCL) is
automatically set to the value of the current NC software.
In this context please observe the following:
On a TNC 640, no functions are currently protected via the Feature Content
Level. Setting or reducing the FCL has no effect on the scope of functions
of the NC software.
 Enhanced: Additional columns for the PET table
Additional error reactions for PET errors are available. The PET table has
been enhanced with columns AE, REACT, NC_LIFTOFF, SF and PLC, see
page 1943.
 Enhanced: Input range for PTYP column
The input range for the PTYP column in the tool table and pocket table has
been increased from 0 – 20 to 0 – 99, see "Tool table and pocket table" on
page 2189.
 Enhanced: Maximum number of characters increased for pallet names
Up to 64 characters can now be entered in the NAME column in the pallet
table.
 New: Status display for signals on X112 / X113
DriveDiag can now display the status of touch probes on connections X112
and X 113.
 Enhanced: Nominal position value filters optimized for low frequencies
The HSC and Advanced HSC nominal position value filters have been
optimized for frequencies below 12 Hz. Improved filter results are now
achieved.

January 2015 1.2 NC software 34059x-05 123


 New FN17/FN18 functions, see page 2521:
• Suppress block display:
FN17: SYSWRITE ID38 NR2
This function enables the block display information to be suppressed.
This may improve the run time with specific, highly computation-
intensive OEM cycles or macros. If this function is used, Single Block
mode is not possible, and with errors only limited diagnosis information
is available in the log book.
• Determine tool pocket:
FN18: SYSREAD ID52 NR1 and NR2
The function enables the pocket number (NR1) or magazine number
(NR2) to be read for the transferred tool.
• New Functions for controlling the LAC weighing run:
FN17: SYSWRITE ID71 IDX0 = <axis index>
FN17: SYSWRITE ID71 IDX1 = <traverse path in mm/degrees>
FN18: SYSREAD Q.. = ID71 IDX0:
Access index of the previously weighed access
• Activation/deactivation of temperature compensation:
FN17: SYSWRITE ID71 NR5
• Determine status of temperature compensation:
FN18: SYSREAD ID71 NR5
• Activating/ deactivating KinematicsComp:
FN17: SYSWRITE ID71 NR7
• Determine status of KinematicsComp:
FN18: SYSREAD ID71 NR7
• Read momentary system time:
FN18: SYSREAD ID320 NR1
Reads the current system time in seconds since 01.01.1970, 00:00:00
o'clock (IDX0 = real time or IDX1 = look-ahead calculation).
• Write look-ahead parameters for all channel axes:
FN17: SYSWRITE ID611
With the previous function FN17: SYSWRITE ID610, axis-dynamic
parameters (jerk values, filter settings etc.) can be modified for single
axes. The function FN17: SYSWRITE ID611 is now also available. With
ID611, axis-specific settings can be set globally for all axes of a
machining channel.
• Read current spindle angle:
FN18: SYSREAD ID990 NR8

124 HEIDENHAIN Technical Manual TNC 640


• Disable machining cycles:
FN17: SYSWRITE ID992 NR32
The function disables all CALL-active machining cycles or DEF- active
point pattern cycles. Examples:
FN17: SYSWRITE ID992 NR32 = 1
Enable all cycles (rescinds effect of IDX n > 0)
FN17: SYSWRITE ID992 NR32 = 0
Disable all cycles (rescinds effect of IDX n > 0)
FN17: SYSWRITE ID992 NR32 IDX n = 1
Enable cycle with number n > 0
FN17: SYSWRITE ID992 NR32 IDX n = 0
Disable cycle with number n > 0
Enabling of individual cycles is only possible if all cycles are currently
globally disabled.
Vice versa, disabling of individual cycles is only possible if all cycles are
currently globally enabled.
The TNC 640 runs these functions already during the look-ahead
calculation. If synchronization is required, this must be additionally
programmed with FN20: WAIT FOR SYNC . The settings for disabling are
in effect until the next time the control is started.
• Determine momentary condition of a cycle lock:
FN18: SYSREAD ID992 NR32 added:
The function enables the condition of a cycle lock set with FN17:
SYSWRITE ID992 NR32 to be determined.
FN18: SYSREAD p = ID992 NR32 IDX n
p = 1: Cycle n not disabled
p = 0: Cycle n disabled
• Determine whether a machine parameter subfile was loaded
FN18: SYSREAD ID1020 NR13
0 = no, 1 = yes

Configuring the  Enhanced: Multifunction filter


axes and spindle With multifunction filters, so-called lead-lag filters are now available for
position controllers and speed controllers. New setting options can also be
selected via new filter types (10x or 11x entry in MP_vCtrlFiltType), e.g.
Lehr's damping with PT2 filters. The new filter types for band-rejection filter
(entry 1x2 in MP_vCtrlFiltType) and phase lifter (entry 1x3 in
MP_vCtrlFiltType) also differentiate in their mode of operation from the
previous, see page 1346.
 New: Analog drives without encoder
In certain machine configurations it may be necessary to operate analog
axes/spindles without an encoder. This is now supported for drives
controlled via the CMA-H module.
 Enhanced: Specification of motor constant via table
The motor constants for nominal speed required for controlling the drives
can now be specified directly in the motor table. This may be useful, if for
example only one motor constant is specified on the data sheet for
standstill.
 Enhanced: Acceleration characteristic curve for the spindle
Until now, the offset acceleration characteristic curve for the main spindle
could only be used in shaft speed control. An offset acceleration
characteristic curve can now also be used with servo controlled spindles or
with spindle synchronism. See "Spindle acceleration" on page 1578.

January 2015 1.2 NC software 34059x-05 125


PLC  Enhanced: Symbolic memory interface (API 3.0) – New operands
programming introduced:

PLC operand / Description Type

NN_ChnErrorLiftOff M
NC stop, lift-off and emergency stop after standstill
triggered because of an error, see page 1921
NN_ChnErrorReact M
NC stop at the end of block triggered because of an
error, see page 1921

 New: IOconfig Version 3.0


From this version, IOconfig displays the configuration tool for all bus
systems that can be connected to the TNC 640. Improved usability is the
result. A new file format for projects was also added: *.iocp. All information
required for the configuration is now saved in this format. For an overview
of the functions of IOconfig Version 3.0, refer to "IOconfig" on page 386.
 Enhanced: API DATA / PLC API
In the display of the AXIS (ApiAxis) axes, the key name of the axis or spindle
from CfgAxes/axisList is also specified after the index of the axes from the
CfgAxes/axisList list.
In the display of the SPINDLE (ApiSpin) spindles, the key name of the
spindle from CfgAxes/axisList is specified after the index of the spindles
from the CfgAxes/spindleIndices list.
The same output is implemented in the title line following the selected API
data type, so that long key names can also be shown. See page 2315.
 New: Output M function at the start of block, acknowledgment at the
end of block
With synchronous M strobes effective at the beginning of the block, early
movement release is now possible via the PLC module 9404. Early
movement release is limited to movements that are with the PLC function
in the same block. At the end of motion, acknowledgment of the M strobe
is waited for.
 Enhanced: Trace function – filter conditions for grinding
It is now possible to set filter conditions for grinding runs in the trace
function, see page 2327.
 Enhanced: COMPILE and SELECT + COMPILE functions
Previously, a PLC or SPLC program was recompiled only if the source code
had changed. Now the (S)PLC program is always compiled if the user
triggers compiling with the COMPILE or SELECT + COMPILE soft keys.
When the PLC program is loaded following power interruption, behavior
remains the same: Recompiling is only implemented if the source code was
modified. See "The COMPILE function" on page 2328.

126 HEIDENHAIN Technical Manual TNC 640


PLC modules  Enhanced:
modified/enhanced Module 9049 – Read position and speed values for an axis
The module now additionally supports the following axis information:
• #13 (Read momentary utilization of the drive in tenths of per cent with
algebraic sign information), see page 1095
 Enhanced:
Module 9142 – Position preset for programmed axis
The module now additionally supports the position presets, see page 1020:
• #4 (set actual position to nominal position for <logical axis number
target>)
• #5 (reset actual position to value before call #4 for< logical axis number
target>)
 Enhanced:
Module 9412 – Stop spindle
A spindle reference run started via Module 9220 can now be aborted with
Module 9412. Previously, aborting the reference run was only possible via
Module 9224.
 Enhanced:
Module 9413 – Move spindle
Module 9413 supports an additional flag in bit #5 in the <Mode> parameter.
If this flag is set together with the flag in bit #3 (constant speed), the control
ignores the limitation specified in CfgFeedLimits/minFeed (400301).
The module also now returns an error if, when calling in the <Mode>
parameter, the flag in bit #2 is set (constant cutting speed) but the spindle
is not assigned to an NC channel, meaning that cutting speed cannot be
calculated. See page 1588.
 Modified:
Module 9217 – Display a pop-up window for messages
Module 9217 now also supports references to dialog or error texts in the
transferred string for the header (now corresponding to the standard
behavior).
 Modified:
Module 9305 – Exchange tools in the pocket table
Module 9306 – Exchange tools between tool magazines
Module 9341 – Clear, reserve and occupy magazine pockets
Module 9342 – Determine magazine number and pocket number
If the modules are called with an active T strobe, the lock implemented by
the PLC run-time system for lines relevant for the T strobe is rescinded in
the pocket table. It is no longer necessary to previously call Module 9300
(Disable and enable pocket table).

January 2015 1.2 NC software 34059x-05 127


New PLC modules  Module 9074 – Load texts from error/dialog files into a PLC string
Module 9074 is used to copy texts from error files and dialog files to a PLC
string directly and without coding. See page 2651.
 Module 9075 – Describe symbolic PLC operands
Module 9075 describes a symbolic PLC operand whose name is contained
in a PLC string. See page 2343.
 Module 9076 – Read symbolic PLC operands
Module 9076 reads a symbolic PLC operand whose name is contained in a
PLC string. See page 2344.
 Module 9283 – Generate tool-usage list
Module 9283 can generate a tool-usage list for a specified NC program,
including its subprograms. See page 2231.
 Module 9393 – Read the PLC column from the PET table
A random value can be saved for each error number in the PLC column of the
PET table. You can readout this value with Module 9393. See page 1950.

New hardware  New: Expansion module for PROFINET-IO


The TNC 640 with the new NC software is enhanced with a further, standard
field bus module. In addition to PROFIBUS-DP, PROFINET-IO is now also
available. PROFINET-IO is the next development of PROFIBUS-DP based on
Industrial Ethernet. To configure PROFINET-IO, the IOconfig software tool
from Version 3.0 is required. For more detailed information about
PROFINET-IO, refer to "PROFINET-IO" on page 375.

Module for PROFINET-IO


Expansion module for expansion
with two PROFINET-IO interfaces,
X621 and X622
Available for the following models
 MC x5xx (e.g. MC 6542)
 MC x6xx (e.g. MC 6641)
 IPC x6xx (e.g. IPC 6641)
ID 828541-xx

128 HEIDENHAIN Technical Manual TNC 640


2 Introduction

2.1 Meaning of the symbols used in this manual

Danger

Failure to comply with this information could result in most serious or fatal
injuries, and/or in substantial material damage.

Attention

Failure to comply with this information could result in injuries and


interruptions of operation, including material damage.

Note

Tips and tricks for operation as well as important information, for example
about standards and regulations, as well as for better understanding of the
document.

2.2 Would you like any changes, or have you found any errors?
We are continuously striving to improve our technical documentation for you.
Please inform us about your requests for modification. Contact us via the
following e-mail address:

[email protected]

2.3 Proper and intended operation


The described components may only be installed and operated as described
in this manual. Commissioning, maintenance, inspection and operation are
only to be performed by trained personnel.

2.4 Trained personnel


Trained personnel in the sense of this manual means persons who are familiar
with the installation, mounting, commissioning, and operation of the
HEIDENHAIN components. Furthermore, electrical engineering work on the
system may be carried out only by trained electrical engineering technicians or
persons trained specifically for the respective application.
Basically, persons who perform work on HEIDENHAIN components must
meet the following requirements:
 They must have been trained or instructed in the standards of safety
engineering.
 They must have appropriate safety equipment (clothing, measuring
systems).
 They should be skilled in first-aid practice.

January 2015 2.4 Trained personnel 129


2.5 General information
For more than 35 years now, HEIDENHAIN TNC controls have been used on
milling and drilling machines as well as machining centers. The TNC 640
expands the TNC controls’ range of applications to the area of multi-operation
machining. With the TNC 640 you can run combined milling and turning tasks
and program these in field-proven plain language dialog.
The TNC 640 features integrated digital drive control and drives the power
modules through PWM signals.
Integrating the drive controllers in the TNC 640 provides the following
benefits:
 All the software is contained centrally in the NC; this means that the
individual components of the NC, such as feed axes, spindle, NC and PLC,
are optimally matched.
 High control quality, because the position controller, speed controller and
current controller are combined into one unit.
 The same functions are available for commissioning, optimizing and
diagnosing feed drives as well as spindles.

The TNC 640 offers digital control for up to 18 axes and 1 spindle at spindle
speeds up to 100 000 min–1.
The TNC 640 is designed for the connection of a compact inverter or the
modular inverter system. A complete control package, including drives and
HEIDENHAIN motors, can be delivered (see the "Inverter Systems and
Motors" Technical Manual).
The TNC 640 is based on HEIDENHAIN NCK, the software platform for the
HEIDENHAIN control family. Other controls with NCK are, for example, the
TNC 320 or the CNC PILOT 620.

130 HEIDENHAIN Technical Manual TNC 640


The main computer (MC) is connected to the CC controller unit, the MB
machine operating panel and the PL 6xxx PLC input/output systems via HSCI
(HEIDENHAIN Serial Controller Interface). The connection of the various
control components via HSCI offers numerous benefits, including:
 Simple and uncomplicated wiring
 High noise immunity
 Simple commissioning
 Comprehensive yet straightforward possibilities for diagnostics
The TNC 640 is prepared for the connection of incremental and absolute
position and shaft-speed encoders. EnDat 2.2, which is purely digital and
compatible to version 2.1, makes it possible to very rapidly transmit highly
resolved position values over long cable lengths. An overview of EnDat 2.2:

DATA
DATA
CLOCK
CLOCK

5V
UN
UP *)
UN *)

January 2015 2.5 General information 131


Overview of the purely digital control architecture with HSCI and EnDat 2.2:

Rotary Encoder

Main Controller Inverter


Computer HSCI Unit PWM Drive
MC CC

Linear Encoder
HSCI EnDat 2.2
EnDat 2.2
EnDat 2.2

HSCI
PL

HSCI Rotary Encoder


PL

132 HEIDENHAIN Technical Manual TNC 640


2.5.1 HSCI interface
The individual control components communicate with each other via the HSCI
connection (HEIDENHAIN Serial Controller Interface). A connection via HSCI
is only permitted for HEIDENHAIN components that are part of the machine
tool's control system. In addition, the HSCI connecting cable may only be
installed in a protected manner (e.g. within the electrical cabinet, cable ducts).
The following features characterize the HSCI connection:
 Based on standard 100BaseT Ethernet hardware
 Telegrams of the HSCI connection are not compatible with the Ethernet
 Line structure
 Only one master in the system (MC), all other devices are HSCI slaves
Different addresses are assigned to the individual participants in the HSCI
network. The addresses are assigned dynamically during booting of the MC.
The HSCI addresses of the participants are formed from an HSCI address
(8 bits) and a device type address (6 bits).
After the machine has undergone acceptance testing, the nominal
configuration of the control is saved in the IOC file on the control's memory
card. This nominal configuration contains the assignment of the device-type
address and serial number of the device to the individual HSCI addresses. The
momentary configuration is ascertained during startup of the system by
requesting the serial numbers. The momentary configuration is compared
with the nominal configuration. If there is a deviation, the machine operator is
prompted to check the configuration.
The following applies to the assignment of the HSCI address:
 The HSCI address (bus address) is the result of the device's position in the
bus
 The master (MC) always has the HSCI address 0.
 The HSCI addresses of the slaves result from their position in the bus:
• First device after the master (MC): Bus address 1
• Second device after the master (MC): Bus address 2
• etc.
The device type address is for internally distinguishing between connected
HSCI participants. Each device type (MC, CC, PL, MB, etc.) is assigned a type
specification that is used to address all HSCI participants of this type.
More information on the connection of the HSCI components is provided
under "HSCI" on page 271.

January 2015 2.5 General information 133


2.6 Overview of components

2.6.1 MC main computer, HDR hard disk and SIK


The TNC 640 always includes at least the following components:
 MC main computer
(MC = Main Computer)
and either:
 CC 61xx controller unit
(CC = Controller Computer)
 PL 620x system PL
 Modular or compact HEIDENHAIN inverter system
or
 UEC 11x controller unit with integrated inverter and PLC

Special note on HEIDENHAIN has introduced a new generation of HSCI main computers with
MC 6542, MC 6541, more powerful Core i7-3 processors on the basis of the proven HSCI hardware
MC 6641 and platform. The new MC 6541, MC 6542, MC 6641 and MC 7522 main
MC 7522 computers are supported as of NC software version 34059x-04.
The previous MC 62xx and MC 63xx main computers are only supported up to
and including NC software version 34059x-02. On the part of HEIDENHAIN,
an upgrade from NC software 34059x-02 to -04 is only possible if a
subsequent hardware change to the new main computers is performed.
NC software 34059x-04 can be installed on the previous main computers, but
the acknowledgeable error message "NC software not supported by
hardware" will be issued every time the control is started. HEIDENHAIN
cannot provide support for this combination of hardware and software. In this
case, the main computer needs to be exchanged; please get in touch with
your contact partner at HEIDENHAIN.
When updating the NC software of a machine to version 34059x-04 and then
exchanging the main computer, please proceed as follows:
 Update the NC software from 34059x-02 to 34059x-04, using the existing
MC 6241, MC 6242 or MC 6341 main computer. When updating the
software, please follow the procedure described in "NC software exchange
on the TNC 640" on page 222.
In addition, please note the important information about the new NC
software 34059x-04, which is provided on the following pages.

Note

If you run the new NC software 34059x-04 with the previous main
computers MC 62xx or MC 63xx, the error message NC software not
supported by hardware will be displayed every time the TNC 640 is started.
The error message can be acknowledged and the main computer can
basically be used.

134 HEIDENHAIN Technical Manual TNC 640


 After the software update is finished, shut down the TNC 640 and switch
off the machine to ensure that it is not under power.

Danger

Ensure that the main switch of the control or machine is switched off when
you engage or disengage connecting elements or connection clamps.

 The new main computers have a slot for an optional FIELDBUS module. This
can be equipped with the following optional slots:
• Expansion module for PROFIBUS-DP (ID 828539-xx)
• Expansion module for PROFINET-IO (ID 828541-xx)
 Only relevant to previous main computers with PROFIBUS interface: Install
the optional PROFIBUS-DP expansion module (ID 828539-xx) in the new
main computer if you need this interface.
 Remove the SIK and the HDR or SSDR hard disk from the previous main
computer and install them in the new main computer.
The SIK, HDR and SSDR of the previous main computers are also used in
the new main computers.
 Exchange the main computer.
 Reconnect the power supply and switch on the machine.
 Perform the required configuration, modifications and tests on the TNC 640
with NC software 34059x-04.
 Upgrade the TNC 640 software from 34059x-02 to -04 on the existing
hardware MC 6241/6242/6341.
 Shut down and switch off the control to ensure that it is not under power.
 Install the existing SIK, HDR or SSDR in the new main computer and, if
required, install the FIELDBUS module.
The SIK, HDR and SSDR of the previous main computers are also used in
the new main computers.
 Exchange the main computer and restart the control system.
 Perform the required configuration, modifications and tests on the control
system with NC software 34059x-04.

Note

The new MC 6541, MC 6542, MC 6641 and MC 7522 main computers


cannot be run with the previous NC software 34059x-02!

January 2015 2.6 Overview of components 135


New main
computers for
installation in the
electrical cabinet

MC 6541, MC 6641 main computers


MC 6541 main computer for
installation in an electrical cabinet:
 Intel Core i7-3 CPU 1.7 GHz
dual-core
 4 GB RAM
 Main computer unit
 Electrical cabinet version
 HSCI interface
 2 x Gigabit Ethernet interface
 4 x USB 3.0
 1 x RS-232C
 Slot for optional FIELDBUS
module
 Weight: 4 kg
 Supported as of NC software
34059x-04

MC 6541 ID 1081185-xx

MC 6641 main computer for


installation in an electrical cabinet:
 Intel Core i7-3 CPU 2.1 GHz
quad-core
 4 GB RAM
 All other features same as
MC 6541

MC 6641 ID 811550-xx
Additionally required for MC 6x41:
 HDR hard disk of the TNC 640
• Contains the NC software
• Memory capacity 160 GB, of
which 138 GB are for the
TNC:\ partition and 1 GB for
the PLC:\ partition
Remaining memory for
system data
HDR TNC 640 ID 617779-xx

136 HEIDENHAIN Technical Manual TNC 640


Additionally required for MC 6xxx:
 SIK System Identification Key
• Contains the NC software
license for enabling control
loops and software options
• The SIK number provides
the control with a unique
identification

Fieldbus modules
Module for PROFIBUS-DP
Expansion module for expanding
with a PROFIBUS-DP interface
X121
Available for the following models
 MC x5xx (e.g. MC 6542)
 MC x6xx (e.g. MC 6641)
 IPC x6xx (e.g. IPC 6641)
ID 828539-xx

Module for PROFINET-IO


Expansion module for expansion
with two PROFINET-IO interfaces,
X621 and X622
Available for the following models
 MC x5xx (e.g. MC 6542)
 MC x6xx (e.g. MC 6641)
 IPC x6xx (e.g. IPC 6641)
ID 828541-xx

January 2015 2.6 Overview of components 137


Previous main
computers for
installation in the
electrical cabinet

Note

Main computers of type MC 62xx and MC 63xx are not supported as of NC


software version 34059x-04!

MC 6241 main computer


Main computer for installation in an
electrical cabinet:
 Processor:
Pentium M with 1.8 GHz
 1 GB RAM
 Main computer unit for single-
processor version
 HSCI interface
 2 x Gigabit Ethernet interface
 2 x USB 2.0
 1 x RS-232C
 Weight: 4 kg
 Supported up to and including
NC software 34059x-02

MC 6241 ID 573398-xx
MC 6241
with Profibus ID 653220-xx

138 HEIDENHAIN Technical Manual TNC 640


MC 6341 main computer
Main computer for installation in an
electrical cabinet:
 Pentium Dual Core with 2.2 GHz
 2 GB RAM
 Main computer unit
 Electrical cabinet version
 HSCI interface
 2 x Gigabit Ethernet interface
 2 x USB 2.0
 1 x RS-232C
 Weight: 4 kg
 Supported up to and including
NC software 34059x-02

MC 6341 ID 671226-xx
MC 6341
with Profibus ID 735873-xx

January 2015 2.6 Overview of components 139


Mew main
computers for
integration in the
operating panel or
electrical cabinet

MC 6542 main computer


MC 6542 main computer for
integration in the operating panel
or electrical cabinet:
 Intel Core i7-3 CPU 1.7 GHz
dual-core
 4 GB RAM
 Slot for SSDR
 HSCI interface
 2 x Gigabit Ethernet interface
 4 x USB 3.0
 1 x RS-232C
 Slot for optional FIELDBUS
module
 Weight: 4 kg
 Supported as of NC software
34059x-04

MC 6542 ID 1081188-xx

140 HEIDENHAIN Technical Manual TNC 640


MC 7522 main computer
MC 7522 main computer with
integrated display for installation
in an operating panel:
 Intel Core i7-3 CPU 1.7 GHz
dual-core
 4 GB RAM
 Slot for SSDR
 HSCI interface
 2 x Gigabit Ethernet interface
 4 x USB 3.0
 1 x RS-232C
 Slot for optional FIELDBUS
module
 15.1-inch screen
 Resolution: 1024 x 768 pixels
 1 x USB interface on the front
 8 horizontal soft keys, 6 vertical
soft keys for PLC
 Weight: 7.5 kg
 Supported as of SW 34059x-04

MC 7522 ID 1071597-xx

 SSDR hard disk of the TNC 640


• Contains the NC software
• Memory capacity 32 GB, of
which 21.4 GB are for the
TNC:\ partition and 1 GB for
the PLC:\ partition;
Remaining memory for
system data
SSDR TNC 640 ID 810288-xx

January 2015 2.6 Overview of components 141


Additionally required for MC 6xxx:
 SIK System Identification Key
• Contains the NC software
license for enabling control
loops and software options
• The SIK number provides
the control with a unique
identification

Fieldbus modules
Module for PROFIBUS-DP
Expansion module for expanding
with a PROFIBUS-DP interface
X121
Available for the following models
 MC x5xx (e.g. MC 6542)
 MC x6xx (e.g. MC 6641)
 IPC x6xx (e.g. IPC 6641)
ID 828539-xx

Module for PROFINET-IO


Expansion module for expansion
with two PROFINET-IO
interfaces, X621 and X622
Available for the following models
 MC x5xx (e.g. MC 6542)
 MC x6xx (e.g. MC 6641)
 IPC x6xx (e.g. IPC 6641)
ID 828541-xx

142 HEIDENHAIN Technical Manual TNC 640


Previous main
computer for
integration in the
operating panel or
electrical cabinet

Note

Main computers of type MC 62xx are not supported as of NC software


version 34059x-04!

MC 6242 main computer


Main computer for integration in
the operating panel or electrical
cabinet:
 Processor:
Pentium M with 1.8 GHz
 1 GB RAM
 Slot for SSDR
 HSCI interface
 2 x Gigabit Ethernet interface
 2 x USB 2.0
 1 x RS232C
 Weight: approx. 4 kg
 Supported up to and including
SW 34059x-02

MC 6242
ID 804780-xx

MC 6242 with Profibus


ID 804786-xx

January 2015 2.6 Overview of components 143


HDR for TNC 640

HDR hard disk for TNC 640 ID


Export version (MC 6x41) 617779-53
Standard version (MC 6x41) 617779-03

The following sizes are valid for the partitions on HDR hard disks for the
TNC 640 that were delivered with the NC software 34059x-04:

Partition Content Size


SYS System files 2 GB (for multiple software
versions in packed format)
PLC OEM files 1 GB
TNC User files > 138 GB

SSDR for TNC 640

SSDR solid state disk for TNC 640 ID


Export version (MC 6x42, MC 7522) 810288-53
Standard version (MC 6x42, MC 7522) 810288-03

The following sizes are valid for the partitions on the SSDR solid state disks for
the TNC 640 that were delivered with the NC software 34059x-04:

Partition Content Size


SYS System files 2 GB (for multiple software
versions in packed format)
PLC OEM files 1 GB
TNC User files > 21 GB

Note

A single NC program can be up to 2 GB large.

144 HEIDENHAIN Technical Manual TNC 640


SIK for TNC 640 NC software license and enabling of control loops
The SIK can be used for the MC 62xx and MC 63xx as well as the MC 65xx,
MC 66xx and MC 75xx. SIKs with ID numbers shown on a gray background in
the table are only available on request.

Recommended NC software license


combinations
Without incl. incl. incl.
option Option #8 Option #8 Option #8, #9
and #9 and #50
Active control loops

Active axis options

CC 6106 + CC 6108

(Turning)
2 x CC 6106

2 x CC 6108
UEC 11x
CC 6106
CC 6108
CC 6110

SIK ID SIK ID SIK ID


SIK ID
4 – 674989-20 674989-09 674989-01 674989-28
674989-70 (E) 674989-59 (E) 674989-51 (E) 674989-78 (E)
5 0 674989-24 674989-17 674989-02 674989-29
674989-74 (E) 674989-67 (E) 674989-52 (E) 674989-79 (E)
6 0, 1 674989-25 674989-18 674989-03 674989-30
674989-75 (E) 674989-68 (E) 674989-53 (E) 674989-80 (E)
7 0, 1, 674989-26 674989-19 674989-04 674989-31
2 674989-76 (E) 674989-69 (E) 674989-54 (E) 674989-81 (E)
8 77 674989-27 674989-23 674989-05 674989-32
674989-77 (E) 674989-73 (E) 674989-55 (E) 674989-82 (E)
9 0, 77 674989-06 674989-33
674989-56 (E) 674989-83 (E)
10 0, 1, 674989-07 674989-34
77 674989-57 (E) 674989-84 (E)
11 0, 1, 674989-10 674989-35
2, 77 674989-60 (E) 674989-85 (E)
12 78 Only through subsequent 674989-11 674989-36
enabling of control loops 674989-61 (E) 674989-86 (E)
13 0, 78 (additional axes) 674989-12 674989-37
674989-62 (E) 674989-87 (E)
14 0, 1, 674989-13 674989-38
78 674989-63 (E) 674989-88 (E)
15 0, 1, 674989-14 674989-39
2, 78 674989-64 (E) 674989-89 (E)
16 77, 674989-15 674989-40
78 674989-65 (E) 674989-90 (E)
17
to
20

If desired, you can enable the software options 8, 9 and 50 as well as all further
software options afterward with code numbers.

January 2015 2.6 Overview of components 145


SW option: Control Further control loops can be enabled either as groups or individually. The
loop groups combination of control-loop groups and individual control loops makes it
possible to enable any number of control loops. Up to 20 control loops are
possible.
In addition to the control loops of the basic version, further control loop groups
can be enabled through software options. There are control-loop groups with
four and with eight control loops:

SW option: Control loop groups: ID


#77: 4 additional control loops 634613-01
#78: 8 additional control loops 634614-01

Enabling of In addition to the control loops of the basic version and the control-loop
additional control groups, up to eight individual control loops can be enabled through software
loops options. These can also be enabled in addition to the control-loop groups:

SW option: Additional control loops: ID


#0: 1. Additional control loop 354540-01
#1: 2. Additional control loop 353904-01
#2: 3. Additional control loop 353905-01
#3: 4. Additional control loop 367867-01
#4: 5. Additional control loop 367868-01
#5: 6. Additional control loop 370291-01
#6: 7. Additional control loop 370292-01
#7: 8. Additional control loop 370293-01

Enable double- The control loops of the CC 61xx can operate selectably as single-speed or
speed control loops double-speed axes. This requires software option 49:

SW option: ID
#49: Double speed for control loops 632223-01

146 HEIDENHAIN Technical Manual TNC 640


2.6.2 CC 61xx controller units

CC 6106 Controller unit with HSCI


interface for 6 control loops consisting of:
1 drive-control motherboard and
2 drive-control expansion boards
It is equipped with:
 6 PWM outputs
 6 speed encoder inputs
(1 VSS or EnDat 2.2)
 6 position encoder inputs
(1 VSS or EnDat 2.2)
 2 SPI expansion slots
 Power supply through UV(R) power
supply unit
 Weight: 4.1 kg

CC 6106 ID 662636-xx

January 2015 2.6 Overview of components 147


CC 6108 Controller unit with HSCI
interface for 8 control loops consisting of:
2 drive control motherboards and
2 drive-control expansion boards
It is equipped with:
 8 PWM outputs
 8 speed encoder inputs
(1 Vpp or EnDat 2.2)
 8 position encoder inputs
(1 Vpp or EnDat 2.2)
 4 SPI expansion slots
 Power supply through UV(R) power
supply unit
 Weight: 4.7 kg

CC 6108 ID 662637-xx

CC 6110 Controller unit with HSCI


interface for 10 control loops consisting of:
2 drive control motherboards and
3 drive-control expansion boards
It is equipped with:
 10 PWM outputs
 10 speed encoder inputs
(1 Vpp or EnDat 2.2)
 10 position encoder inputs
(1 Vpp or EnDat 2.2)
 4 SPI expansion slots
 Power supply through UV(R) power
supply unit
 Weight: 4.8 kg

CC 6110 ID 662638-xx

148 HEIDENHAIN Technical Manual TNC 640


2.6.3 UEC 11x(FS), UMC 11x(FS) controller unit with integrated inverter and PLC

UEC 11x
Controller unit with integrated inverter and
PLC for up to 5 control loops for providing
line voltage. Compact unit for machines
with limited number of axes and low
power demands.
It is equipped with:
 HSCI interface
 4 (UEC 111), 5 (UEC 112) or
6 (UEC 113) speed encoder inputs
 4 (UEC 111), 5 (UEC 112) or 6 (UEC 113)
position encoder inputs
 Connection for 3 axes plus spindle
(UEC 111) or
connection for 4 axes plus spindle
(UEC 112) or
connection for 5 axes plus spindle
(UEC 113 FS)
 Additional DC-link connection on the
front for PSL 130 (only UEC 113)
 Braking resistor
 Connection for TS and TT touch probes if
the first PLB is in the HSCI chain
 38 PLC inputs, 23 PLC outputs
(expandable via PL 61xx)
 Integrated 24 V NC / 3.5 A power supply
unit for supplying the HSCI components
 Weight: 14 kg

UEC 111 with 4 control loops


ID 625777-xx

UEC 112 with 5 control loops


ID 625779-xx

UEC 113 with 6 control loops


ID 828471-xx

January 2015 2.6 Overview of components 149


UEC 11xFS with DC-link connection
Controller unit with integrated inverter and
PLC for up to 6 control loops for providing
line voltage. Integrated functional safety.
Compact unit for machines with limited
number of axes and low power demands.
It is equipped with:
 HSCI interface
 Integrated functional safety (FS)
 4 (UEC 111FS), 5 (UEC 112FS) or
6 (UEC 113FS) speed encoder inputs
 4 (UEC 111FS), 5 (UEC 112FS) or
6 (UEC 113FS) position encoder inputs
 Connection for 3 axes + spindle
(UEC 111FS), or
connection for 4 axes plus spindle
(UEC 112FS), or
connection for 5 axes plus spindle
(UEC 113FS)
 Additional DC-link connection on the
front for PSL 130
 Braking resistor
 Connection for TS and TT touch probes if
the first PLB is in the HSCI chain
 38 single-channel PLC inputs
(expandable by PL 61xx)
 28 single-channel PLC outputs
(expandable by PL 61xx)
 8 dual-channel PLC inputs
(expandable via PL 61xxFS)
 8 dual-channel PLC outputs
(expandable via PL 61xxFS)
 Integrated 24 V NC / 3.5 A power supply
unit for supplying the HSCI components
 Weight: Approx. 14 kg

UEC 111FS with 4 control loops


ID 1075825-xx

UEC 112FS with 5 control loops


ID 1075826-xx

UEC 113FS with 6 control loops


ID 1038694-xx

150 HEIDENHAIN Technical Manual TNC 640


UMC 11x
Controller unit with integrated inverter and
PLC for up to 4 control loops for auxiliary
axes and supply with external DC-link
voltage. Automatically enables the control
loops required for its four auxiliary axes
without the need to buy any additional
software options.
The maximum number of axes of the
control remains unchanged.
It is equipped with:
 HSCI interface
 4 speed encoder inputs
 No position encoder inputs
 Connection for 4 auxiliary axes
 Connection for external DC link
 Connection for TS and TT touch probes if
the first PLB is in the HSCI chain
 Braking resistor
 38 PLC inputs, 23 PLC outputs
(expandable via PL 61xx)
 UMC 111 FS: 8 additional FS inputs,
8 FS outputs, 5 PLC outputs
 Weight: Approx. 11 kg

UMC 111 with 4 control loops


ID 736435-xx

UMC 111FS with 4 control loops


ID 664231-xx

Designation of Example: ID MC 6542:


the MC 6xxx,
MC 7522, CC 61xx
and UEC 11x
1081188-01
BasicIDnumber Variant

The basic ID number indicates hardware differences.


This first digit of the variant number indicates hardware changes.

January 2015 2.6 Overview of components 151


2.6.4 UMC 111(FS) controller unit with integrated inverter and PLC

UMC 111 (FS)


Controller unit with integrated inverter and
PLC for servo drive solutions where the
controller unit can be installed elsewhere.
DC-link must be powered via external
supply module.
Integrated functional safety.
It is equipped with:
 HSCI interface
 Integrated functional safety (FS)
 4 speed encoder inputs
 No position encoder inputs
 Motor connections for 4 auxiliary axes
 Connection for external DC link
 Braking resistor
 38 PLC inputs, 23 PLC outputs
(expandable via PL 61xx)
 UMC 111 FS: 8 additional FS inputs,
8 FS outputs, 5 PLC outputs
 Weight: Approx. 11 kg

UMC 111 with 4 control loops


ID 736435-xx

UMC 111FS with 4 control loops


ID 664231-xx

152 HEIDENHAIN Technical Manual TNC 640


2.6.5 PLC input/output systems with HSCI interface
The PLC inputs and outputs of the TNC 640 are available via the external
modular PL 6xxx PLC input/output systems.
The PL 6xxx consists of the PLB 6xxx basic module and one or more I/O
modules. The basic modules are connected to the MC main computer via the
HSCI interface.

Note

The MC main computer does not have integrated PLC inputs/outputs, and
has no connections for TS or TT touch probes. In order to operate the
control, at least the PL 62xx system PL (when using a CC 61xx) or the
UEC 11x controller unit with integrated inverter and PLC is necessary. The
system PL is integrated in the UEC.

The PLC inputs/outputs are configured with the PC software IOconfig.

System PL

PL 62xx
System PL, consisting of PLB 620x basic
module and I/O modules.
 One module must be in the HSCI
system if no UEC 11x is used.
 Available with 4, 6 or 8 slots
 HSCI interface
 Connections for TS and TT touch probes
 Safety-relevant PLC inputs/outputs
For overview of available I/O modules, see
"I/O modules" on page 155.
Mounted on standard NS 35 rails
(DIN 46 227 or EN 50 022)

PLB 6204 ID 591832-xx


PLB 6206 ID 630054-xx
PLB 6208 ID 630055-xx
PLB 6204 FS ID 586789-xx
PLB 6206 FS ID 622721-xx
PLB 6208 FS ID 620927-xx

January 2015 2.6 Overview of components 153


Expansion PL

PL 61xx
Expansion PL, consisting of PLB 620x
basic module and I/O modules.
 Available with 4, 6 or 8 slots
 HSCI interface
 Up to 7 PL 61xx can be present in the
HSCI system.
For overview of available I/O modules, see
"I/O modules" on page 155.
Mounted on standard NS 35 rails
(DIN 46 227 or EN 50 022)

PLB 6104 ID 591828-xx


PLB 6106 ID 630058-xx
PLB 6108 ID 630059-xx
PLB 6104 FS ID 590479-xx
PLB 6106 FS ID 804755-xx
PLB 6108 FS ID 804756-xx

154 HEIDENHAIN Technical Manual TNC 640


I/O modules I/O modules are available with digital and analog inputs and outputs. For
partially occupied PLB basic modules, the unused slots must be occupied by
an empty housing.

PLD-H xx–xx–xx
Digital I/O module:

 PLD-H 16-08-00:
I/O module with 16 digital inputs and 8
digital outputs
 PLD-H 08-16-00
I/O module with 8 digital inputs and 16
digital outputs
 PLD-H 04-08-00 FS:
I/O module with 4 digital dual-channel
inputs and 8 digital dual-channel outputs
 PLD-H 08-04-00 FS
I/O module with 8 digital dual-channel
inputs and 4 digital dual-channel outputs

PLD-H 16-08-00 ID 594243-xx


PLD-H 08-16-00 ID 650891-xx
PLD-H 04-08-00 FS ID 727219-xx
PLD-H 08-04-00 FS ID 598905-xx
Digital I/O module HSLS:
High Side (HS) and Low Side (LS) switch
for switching the power supply (+ 24 V DC)
and GND (0 V)

 PLD-H 04-04-00 HSLS FS:


2-channel version: I/O module with 4
digital inputs (channel A and B), 4 digital
outputs as High Side (channel B) and 4
digital outputs as Low Side (channel A)

PLD-H 04-04-00 HSLS FS ID 746706-xx

January 2015 2.6 Overview of components 155


PLA-H xx–xx–xx
Analog I/O module:
 PLA-H 08-04-04:
Analog module with 8 analog inputs ± 10
V, 4 analog outputs ± 10 V and 4 analog
inputs φορ τηερμιστορσ Pt 100

PLA-H 08-04-04 ID 675572-xx

Empty housing
...for partial assembly.
ID 383022-11

156 HEIDENHAIN Technical Manual TNC 640


2.6.6 PLC input/output systems with PROFIBUS-DP
PLC inputs and outputs are also available via the external modular PL550 PLC
input/output system. It consists of a basic module and one or more I/O
modules, and is connected to the MC main computer via the PROFIBUS-DP
interface. The PLC I/O modules are configured with the PC software IOconfig.
The precondition for connecting the PLB 550 to the control is the expansion
module for PROFIBUS-DP installed in the MC.
The PL 550 consists of the PLB 550 basic module and one or more I/O
modules. The basic modules are connected to the MC main computer via the
PROFIBUS interface.

Basic module

PLB 550
Basic module with PROFIBUS interface
 Available with 4 slots for I/O modules
 PROFIBUS-DP-interface
Overview of available I/O modules, .
Mounted on standard NS 35 rails
(DIN 46 227 or EN 50 022)

PLB 550 ID 507872-xx

I/O modules The I/O modules consist of one module with digital inputs/outputs and one
analog module. For partially occupied basic modules, the unused slots must
be occupied by an empty housing.

January 2015 2.6 Overview of components 157


PLD 16-8
Digital I/O module for PL 5x0 with 16
digital inputs and 8 digital outputs.

PL 16-8 ID 360916-xx

PLA 4-4
Analog I/O module for PL 5x0 with 4
analog inputs for thermistors PT 100 and 4
analog inputs ±10 V

PL 4-4 ID 366423-xx

Empty housing
...for partial assembly.
ID 383022-11

158 HEIDENHAIN Technical Manual TNC 640


2.6.7 SPI expansion modules

Expansion module for analog axes/spindles in the HSCI system


Expansion module for analog axes/spindles in
the HSCI system:
 CMA-H 04-04-00:
Module for controlling analog axes or
spindles. The CMA-H is inserted in one of the
SPI slots on the bottom of the controller units
(CC, UEC). The analog control loop outputs
are accessed only via the NC. As of software
version 34059x-02, interpolated movements
of analog axes with other axes are possible.

CMA-H 04-04-00 ID 688721-xx

January 2015 2.6 Overview of components 159


2.6.8 PSL 13x low-voltage power supply unit

PSL 130
Power supply unit to supply HSCI components
with +24 V
 The output voltages correspond to the PELV
system as per EN 50 178, and can be
grounded.
 The power is supplied via line voltage (L1, L2)
and the DC-link voltage Uz. This is used to
produce the +24 V NC and +24 V PLC output
voltages.
 Both output voltages are produced by two
internally separated power supplies. The NC
and PLC power supplies are galvanically
isolated and fulfill the requirements of
EN 61800-5-1 for "low voltage electrical
separation."
 The two output voltages can be connected in
parallel. This way the PSL 130 provides an
output voltage of +24 V at a maximum output
power of 750 W.
Please observe the information and regulations
for the power connection cited under "PSL 13x
low-voltage power supply unit" on page 316 and
in the "Inverter Systems and Motors" Technical
Manual.

PSL 130 ID 575047-xx

160 HEIDENHAIN Technical Manual TNC 640


PSL 135
PSL 135 power supply unit for supplying the
HSCI components in a multi-row configuration
or for using a non-HEIDENHAIN inverter
system.

The PSL 135 power supply unit was conceived


in order to be able to provide the HSCI
components of the TNC 640 with + 24 V NC
voltage, + 24 V PLC voltage and +5 V.
The output voltages of the PSL 135 fulfill the
requirements for Protective Extra Low Voltage
(PELV) according to EN 50178. The power
supply unit is powered with line voltage (L1, L2)
and the DC-link voltage Uz. This is used to
produce the +24 V NC, +24 V PLC, and +5 V
output voltages.
Please observe the information and regulations
for the power connection cited under "PSL 13x
low-voltage power supply unit" on page 316 and
in the "Inverter Systems and Motors" Technical
Manual.

PSL 135 ID 627032-xx

January 2015 2.6 Overview of components 161


2.6.9 BF 7xx display unit

BF 750
Technical characteristics:
 15-inch design
 Power supply 24 V NC / approx. 50 W
 Resolution: 1024 x 768 pixels
 1 x 8 soft keys, 1 x 6 soft keys for PLC
 3 soft keys for switching soft key rows
 Key for screen layout and operating mode
switching
 Additional USB interface (USB 2.0) on the front
of the visual display unit
 Integrated USB hub (USB 2.0) with 4 USB
interfaces on the back of the display unit
 HDL connection
 Fulfills IP54 degree of protection when installed
 Weight: 4.0 kg

BF 750 ID 785080-xx
BF 760
Technical characteristics:
 19-inch stainless-steel design
 Resolution: 1280 x 1024 pixels
 1 x 10 horizontal NC soft keys
 1 x 8 soft keys for PLC to the right and
1 x 10 soft keys to the left of the screen
(vertical)
 3 soft keys for switching soft-key rows
 Key for screen layout and operating mode
switching
 Integrated USB hub with 6 USB interfaces on
the back of the display unit
 HDL connection
 Fulfills IP54 degree of protection when installed
 Weight: 7.8 kg

BF 760 ID 732589-xx

162 HEIDENHAIN Technical Manual TNC 640


2.6.10 TE 73x, TE 74xx keyboard units

TE 730
NC control panel:
 Suitable for BF 750 (15-inch)
 Keys IV and V can are snap-ons
 Contouring keys
 Operating mode keys
 Spindle-speed and feed-rate override
potentiometers
 USB interface
 Touchpad
 Weight: 2.4 kg
 Fulfills IP54 degree of protection when installed

TE 730 ID 805488-xx

TE 735(FS)
NC control panel:
like TE 730
 Suitable for BF 750 (15-inch)
 Keys IV and V can are snap-ons
 Contouring keys
 Operating mode keys
 Spindle-speed and feed-rate override
potentiometers
 USB interface
 HSCI interface
 Touchpad
 Machine operating panel (same as MB 720)
 Weight: 3.4 kg
 Fulfills IP54 degree of protection when installed

TE 735 ID 771898-xx
TE 735FS ID 805493-xx

January 2015 2.6 Overview of components 163


TE 740
NC control panel:
 Suitable for BF 760 (19” stainless-steel design)
 Axis keys
 The IV and V keys, the blank key to the left of V
and the blank key above MOD in the operating
panel are snap-ons.
 Contouring keys
 Operating mode keys
 ASCII keyboard
 Spindle-speed, feed-rate and rapid-traverse
override potentiometers
 USB interface to the MC main computer
 Touchpad
 USB port with cover cap on front
 A PLB 6001 is required for connection of an
OEM-specific machine operating panel.
 Fulfills IP54 degree of protection when installed
 Weight: 3.2 kg

TE 740 ID 886546-xx

164 HEIDENHAIN Technical Manual TNC 640


TE 745(FS)
NC control panel:
Same features as TE 740, but with
integrated machine operating panel
 Power supply 24 V DC NC / approx. 4 W
 36 exchangeable snap-on keys with status
LEDs, freely definable via PLC
 12 axis direction keys
 24 function keys
 Keys for NC start and NC stop (illuminated)
 Keys for spindle start, spindle stop and control
voltage ON
 EMERGENCY STOP key
 Key for control voltage ON (illuminated)
 Three bore holes (22 mm) for additional keys or
detachable-key switches (shipped with covers
closed)
 Handwheel connection X23
 HSCI interface
 Weight: 4.2 kg
 Fulfills IP54 degree of protection when installed

TE 745 ID 679817-xx
TE 745 FS ID 805482-xx
front panel labels
Set of 3 with adhesive labels in stainless steel
look
Enables customers to cover the potentiometer
inscription on the front panels of the TE 7xx
keyboards
 Rapid traverse
 Spindle
 Feed rate
Front panel labels ID 1125244-01

January 2015 2.6 Overview of components 165


2.6.11 MB 7xx machine operating panel

MB 720(FS)
 15-inch design, suitable for BF 750
 Power supply 24 V NC / approx. 4 W
 HSCI interface
 Handwheel connection X23
 36 snap-on (exchangeable) keys, see "Key
symbols for HR 410" on page 186. The key
functions are freely definable via the PLC
 MB 720: 7 free PLC inputs and 5 free PLC
outputs
 MB 720FS: 4 free FS inputs and 5 free PLC
outputs
 Two bore holes for additional keys or keylock
switches
 Weight: 1.2 kg
 Fulfills IP54 degree of protection when installed
Controls and displays:
 12 axis keys
 16 function keys
 6 function keys that are not assigned
 NC start1
 NC stop1
 EMERGENCY STOP key
 Control Voltage ON1
1) Keys illuminated

MB 720 ID 784803-xx
MB 720FS ID 805474-xx

166 HEIDENHAIN Technical Manual TNC 640


2.6.12 HSCI adapter for PLB 6001(FS) OEM-specific machine operating panel

PLB 6001 (FS)


The PLB 6001 is equipped with:
 HSCI interface
 Handwheel connection X23
 64 PLC inputs, 32 PLC outputs for
keys / key illumination
 Connection for spindle-speed and
feed-rate override potentiometers
 Screw fastening or top-hat-rail
mounting
 Weight: 1.2 kg

PLB 6001 ID 668792-xx


PLB 6001 FS ID 722083-xx

January 2015 2.6 Overview of components 167


2.6.13 Handwheels
All handwheels are available with and without detent. For handwheels with
detent, the cogging torque prevents movements of the handwheel due to
motions or vibrations of the machine. On handwheels without detent, this is
prevented by a defined holding torque.
Handwheels with detent feature 100 detent positions per revolution, i.e. every
3.6°. The machine manufacturer defines the increment via the machine
configuration.
The HR 520FS and HR 410FS handwheels that are available in addition to the
HR 550 (wireless handwheel system) are devices that, due to their cross-
circuit-safety, can also be integrated in safety-related applications according to
EN 13849. The HR 410 and HR 520 standard handwheels do not feature this
cross-circuit safety of the permissive buttons.
The handwheels with FS are plug-compatible with the respective handwheels
without FS, thanks to the M23 connecting element, and they have the same
scope of functions. As a result of the new logic behind the permissive buttons,
only one of the two buttons need to be pressed during permissive mode.

Note

 Due to the changed logic of the permissive buttons, do not replace the
HR 520FS and HR 410FS with the respective variant without FS.
 Please note that even if servicing is required, an HR 520FS may not be
replaced by an HR 520. This also applies to replacing an HR 410FS with
an HR 410, and vice versa.

Because of the change in the principle behind the permissive buttons, we


generally recommend using the safety-oriented handwheels with FS, due to
the cross-circuit-safety of their permissive function.
Also, a new dummy plug is being introduced for FS handwheels in case
servicing is necessary. As before, this dummy plug bridges the emergency
stop, and is adapted to the changed logic for the permissive buttons. The new
dummy plug for FS handwheels is identified by the designation
"Adapterstecker FS" and the ID 271958-05 on the ID label.

Note

 Please note that the dummy plug for FS handwheels may not be
exchanged for the respective variant without FS.
 For reasons of technical safety, only dummy plugs for FS handwheels (ID
271958-05) may be used on systems that have an FS handwheel.
 For reasons of technical safety, only dummy plugs for standard
handwheels (ID 271958-03) may be used on systems that have a
standard handwheel (without FS).

168 HEIDENHAIN Technical Manual TNC 640


HR 410 handwheel
Portable electronic handwheel with snap-on
(exchangeable) keys (see "Key symbols for HR 410" on
page 186).
 Five axis selection keys
 Keys for traverse direction
 Keys for preset feeds
 Actual-position-capture key
 Three keys for machine functions
(definable via PLC)
• Spindle right/left/stop
• NC start/stop, spindle start;
(for HEIDENHAIN basic PLC program)
 Two permissive buttons (24 V)
 Emergency stop button (24 V)
 Magnetic holding pads
The handwheel is available with or without detent.
See the following table for the possible handwheel
assignments.
ID 312879-01 Connecting cable to cable adapter (spiral cable 3 m)
ID 296467-xx Connecting cable to cable adapter (normal cable)
ID 296687-xx Connecting cable to cable adapter (with metal armor)
ID 296466-xx Adapter cable to control
ID 281429-xx Extension to adapter cable
ID 271958-03 Dummy plug for emergency stop circuit

January 2015 2.6 Overview of components 169


Key assignments on the HR 410 *):

Without detent: Without detent: Without detent:


ID 296469-55 ID 296469-54 ID 296469-53
ID 337159-21 (FS)

With detent: With detent:


ID 535220-05 ID 535220-03
ID 578114-11 (FS)

(for PLC basic program) (special assignment) (standard)

*) For a list of the keys available for exchanging, see "Key symbols for HR 410" on page 186.

170 HEIDENHAIN Technical Manual TNC 640


HR 520 handwheel
 Display for operating mode, actual position
value, programmed feed rate and spindle
speed, error messages
 Graphic display,
resolution: 128 x 64 pixels, 6-line display
 Spindle speed and feed-rate override
 Selection of axes via keys or soft keys
 Actual position capture
 NC start/stop, spindle start/stop
 6 freely programmable PLC keys with LED
 Keys for traverse direction
 Exchangeable snap-on keys for PLC functions
and maintenance
 Integrated permissive button and emergency
stop button (24 V)
 Magnetic holding pads
 Mount for attaching the handwheel to the
machine (ID 591 065-xx)
 Weight: Approx. 1 kg
ID 670 302-xx HR 520 handwheel
ID 670 303-xx HR 520 handwheel with detent
HR 520FS handwheel
 Graphic display,
resolution: 128 x 64 pixels, 6-line display
 Six NC keys
 Six PLC keys with LEDs that are controlled
through the PLC
 Two override potentiometers (feed rate and
spindle speed)
 Two cross-circuit-proof permissive buttons
 Exchangeable snap-on keys for PLC functions
and maintenance
 Integrated emergency stop button
 Magnetic holding pads
 Additional snap-on keys for spindle stop,
spindle left, and spindle right are included with
the handwheel
 Weight: Approx. 1 kg

ID 670304-xx HR 520FS handwheel

ID 670305-xx HR 520FS handwheel with detent

January 2015 2.6 Overview of components 171


HR 5xx mount
Optional handwheel mount for attaching to the
operating panel or electrical cabinet
ID 591065-xx

HR 550FS Handwheel
Portable electronic handwheel with wireless
transmission:
 Graphic display,
resolution: 128 x 64 pixels, 6-line display
 Six NC keys
 Six PLC keys with LEDs that are controlled
through the PLC
 Two override potentiometers (feed rate and
spindle speed)
 Two permissive buttons
 Exchangeable snap-on keys for PLC functions
and maintenance
 Integrated emergency stop button
 Vibration alarm when leaving the radio range
 Battery warning
 Display of radio field strength
 Weight: Approx. 1 kg
Without mechanical detent:
ID 598 515-xx
With mechanical detent:
ID 606 622-xx
Accessories (1 x included with the HR 550FS):
Handwheel batteries
(battery pack, 4-tray)
ID 623 166-xx

172 HEIDENHAIN Technical Manual TNC 640


Handwheel adapter HR 551FS
Handwheel adapter (docking tray) with integrated
charger for handwheel batteries
ID 731 928-xx

ID 312 879-01Connecting cable to cable adapter (spiral cable 3 m)


ID 296 467-xxConnecting cable to cable adapter (normal cable)
ID 296 687-xx Connecting cable to cable adapter (with metal armor)
ID 296 466-xxAdapter cable to MB 6xx
ID 281 429-xxExtension to adapter cable

Dummy plug for handwheels:


 Bridge for emergency stop
 Dummy plug for FS handwheels: No
permission for cross-circuit safety logic of
permissive buttons
 Dummy plug for standard handwheels: No
permission for cross-circuit safety logic of
permissive buttons

Dummy plug for handwheels with FS


ID 271958-05

Dummy plug for standard handwheels


ID 271958-03
HR 130 handwheel
Panel-mounted handwheel
ID 540940-01
HR 130 handwheel with detent, with ergonomic
knob, radial cable outlet
ID 540940-03
HR 130 handwheel without detent, with
ergonomic knob, radial cable outlet

January 2015 2.6 Overview of components 173


HRA 110 handwheel adapter
For connecting up to three HR 150 handwheels
to the control.
The axes and the subdivision factor are selected
via rotary switch.
ID 261097-04 HRA 110

ID 540940-06 HR 150 handwheel


without detent, with
ergonomic knob, radial
cable outlet

ID 540940-07 HR 150 handwheel


with detent, with
ergonomic knob, radial
cable outlet

ID 270908-xx Handwheel selection


switch

174 HEIDENHAIN Technical Manual TNC 640


2.6.14 IPC 6641—Industrial PC for Windows

Industrial PC IPC 6641


Main computer for installation in an
electrical cabinet:
 Intel Core i7-3 2.1 GHz quad-core
 4 GB RAM
 Main computer unit
 Electrical cabinet version
 2 x Gigabit Ethernet interface
 4 x USB 3.0
 1 x RS-232C
 Weight: 4 kg

IPC 6641 ID 1039543-xx

Additionally required for IPC 6641:


 HDR hard disk
• Memory capacity 160 GB
• Empty data carrier for
Windows operating system
HDR IPC ID 1074770-51

January 2015 2.6 Overview of components 175


2.6.15 Industrial Thin Clients ITC 7xx

ITC 755
Technical characteristics:
 15-inch design
 Power supply 24 V NC/ approx. 27 W
 Resolution: 1024 x 768 pixels
 Intel Atom 1.3 GHz
 1 GB RAM
 Touch operation
 Integrated ASCII keyboard
 Integrated USB hub (USB 2.0) with 3 USB
interfaces on the rear
 Additional USB interface (USB 2.0) on the front
 Keys for switching the operating mode
 1 x Gigabit Ethernet interface
 Fulfills IP54 degree of protection when installed
 Weight: Approx. 7.0 kg

ITC 755 ID 1039527-xx

176 HEIDENHAIN Technical Manual TNC 640


ITC 750
Technical characteristics:
 15-inch design
 Power supply 24 V NC/ approx. 24 W
 Resolution: 1024 x 768 pixels
 Intel Atom 1.3 GHz
 1 GB RAM
 1 x 8 soft keys, 1 x 6 soft keys for PLC
 3 soft keys for switching soft key rows
 Key for screen layout and operating mode
switching
 Integrated USB hub (USB 2.0) with 5 USB
interfaces on the rear
 Additional USB interface (USB 2.0) on the front
 1 x Gigabit Ethernet interface
 Fulfills IP54 degree of protection when installed
 Weight: Approx. 4.0 kg

ITC 750 ID 1039544-xx


ITC 760
Technical characteristics:
 19-inch stainless-steel design
 Power supply 24 V NC/ approx. 42 W
 Resolution: 1280 x 1024 pixels
 Intel Atom 1.3 GHz
 1 GB RAM
 1 x 10 horizontal NC soft keys
 1 x 8 soft keys for PLC to the right and
1 x 10 soft keys to the left of the screen
(vertical)
 3 soft keys for switching soft-key rows
 Integrated USB hub (USB 2.0) with 6 USB
interfaces on the rear
 1 x Gigabit Ethernet interface
 Fulfills IP54 degree of protection when installed
 Weight: Approx. 7.8 kg

ITC 760 ID 827086-xx

January 2015 2.6 Overview of components 177


2.6.16 Key symbols for the TNC 640
The following snap-on keys are available for the keyboard components in the
new stainless steel design. They make it easy to replace the key symbols. In
this way, the keyboard can be adapted to different requirements. The snap-on
keys are available in packs of 5 keys.
If you need additional key symbols for your machine, please contact
HEIDENHAIN.

Key symbols for the


spindle
Key Description Key Description
Print/Background Print/Background
ID ID
Spindle stop Spindle start
White/Red White/Green
679843-18 679843-19
Spindle stop Spindle start
White/Red White/Green
679843-52 679843-71
Spindle stop Spindle start
White/Red White/Green
679843-89 679843-D8
Spindle jog mode Spindle cycle
Black/Gray White/Red
679843-72 679843-65
Spindle direction left Spindle direction right
Black/Gray Black/Gray
679843-21 679843-20
Spindle switchover Spindle to 100 percent
Black/Gray Black/Gray
679843-51 679843-50
Spindle as of percent Spindle to percentage
Black/Gray Black/Gray
679843-49 679843-48
Jog spindle to left Jog spindle to right
Black/Gray Black/Gray
679843-46 679843-47
Clamp the spindle
Black/Gray
679843-99

178 HEIDENHAIN Technical Manual TNC 640


Key symbols with
axis designations
Key Description Key Description
Print/Background Print/Background
ID ID
X A
Black/Orange Black/Orange
679843-C8 679843-54
Y B
Black/Orange Black/Orange
679843-D3 679843-C9
Z C
Black/Orange Black/Orange
679843-53 679843-88
IV U
Black/Orange Black/Orange
679843-32 679843-D4
V W
Black/Orange Black/Orange
679843-31 679843-55
No symbol
–/Orange
679843-35

Key symbols
for axis direction
keys Key Description Key Description
Print/Background Print/Background
ID ID
X– X+
Black/Gray Black/Gray
679843-04 679843-03
X– –> X+ <–
Black/Gray Black/Gray
679843-D9 679843-E1
X’– –> X’+ <–
Black/Gray Black/Gray
679843-C5 679843-C4
X– <– X+ –>
Black/Gray Black/Gray
679843-C2 679843-C3
Y– Y+
Y Black/Gray Y Black/Gray
679843-06 679843-05
Y’– –> Y’+ <–
Black/Gray Black/Gray
679843-94 679843-93
Y– <– Y+ –>
Black/Gray Black/Gray
679843-43 679843-44

January 2015 2.6 Overview of components 179


Key Description Key Description
Print/Background Print/Background
ID ID
Y– –> Y+ <–
Black/Gray Black/Gray
679843-B5 679843-B6
Z– Z+
Black/Gray Black/Gray
679843-08 679843-07
Z– <– Z+ –>
Black/Gray Black/Gray
679843-92 679843-91
Z’– <– Z’+ –>
Black/Gray Black/Gray
679843-C1 679843-B9
A– A+
Black/Gray Black/Gray
679843-70 679843-69
B– B+
Black/Gray Black/Gray
679843-B1 679843-B2
C– C+
Black/Gray Black/Gray
679843-68 679843-67
U– U+
Black/Gray Black/Gray
679843-B3 679843-B4
W– W+
Black/Gray Black/Gray
679843-B7 679843-B8
IV– IV+
Black/Gray Black/Gray
679843-10 679843-09
V– V+
Black/Gray Black/Gray
679843-12 679843-11
VI– VI+
Black/Gray Black/Gray
679843-14 679843-13

180 HEIDENHAIN Technical Manual TNC 640


Key symbols
for machine
functions Key Description Key Description
Print/Background Print/Background
ID ID
Function 1 Function 2
Black/Gray Black/Gray
679843-24 679843-25
Function 3 Function 4
Black/Gray Black/Gray
679843-26 679843-A2
Function 5 Function (FCT)
Black/Gray Black/Gray
679843-A3 679843-63
Special functions Key assignment on/off
Black/Gray Black/Gray
679843-D6 679843-E4
Function A Function B
White/Black White/Black
679843-95 679843-96
Function C
White/Black
679843-C7
Rinse water jet Coolant
Black/Gray Black/Gray
679843-27 679843-40
Coolant (internal) Coolant (external)
Black/Gray Black/Gray
679843-28 679843-29
Chip removal Chip remover backwards
Black/Gray Black/Gray
679843-02 679843-01
Clamp tool Clamp tool
Black/Gray Black/Gray
679843-22 679843-A9
Unclamp tool Unclamp tool
Black/Gray Black/Gray
679843-A5 679843-A6
Unclamp tool Tool change
White/Black Black/Gray
679843-A1 679843-23
Tool changer left Tool changer right
Black/Gray Black/Gray
679843-62 679843-61
Retract axis Unlock door
Black/Gray Black/Gray
679843-16 679843-30
Unlock door Unlock door
Black/Gray Black/Gray
679843-73 679843-74

January 2015 2.6 Overview of components 181


Key Description Key Description
Print/Background Print/Background
ID ID
Machine illumination Spotlight
Black/Gray Black/Gray
679843-76 679843-A4
Clamp chuck Release chuck
Black/Gray Black/Gray
679843-E7 679843-E8
Suction Flushing
Black/Gray Black/Gray
679843-E3 679843-E6
Clamp/unclamp pallet
Black/Gray
679843-C6

Other key symbols

Key Description Key Description


Print/Background Print/Background
ID ID
No symbol No symbol
–/Black –/Gray
679843-34 679843-33
NC start NC stop
White/Green White/Red
679843-56 679843-57
NC start NC stop
White/Green White/Red
679843-90 679843-D7
Feed rate stop Rapid traverse
White/Red Black/Gray
679843-45 679843-15
Rapid traverse Rapid traverse
Black/Gray Black/Gray
679843-97 679843-98
Permissive button Permissive button
Black/Gray Black/Gray
679843-17 679843-75
smarT.NC Arrow up and to the right
Black/Gray Black/Gray
679843-66 679843-58
Arrow right Arrow up
Black/Gray Black/Gray
679843-41 679843-42
– +
Black/Gray Black/Gray
679843-60 679843-59
– +
White/Black White/Black
679843-D1 679843-D2

182 HEIDENHAIN Technical Manual TNC 640


Key Description Key Description
Print/Background Print/Background
ID ID
Screen change 2-fold Screen change 3-fold
Black/Gray Black/Gray
679843-36 679843-37
Delta Delta
Black/Gray Black/Gray
679843-38 679843-39
Release pallet Zero key
Black/Gray Black/Gray
679843-64 679843-D5
Actual position capture SHIFT key
White/Black Black/Gray
679843-E2 679843-E5
Menu selection key Menu selection key
Black/Gray Black/Gray
679843-A7 679843-A8

January 2015 2.6 Overview of components 183


Additional lasered The following lasered snap-on keys can be ordered to make adaptation to
snap-on keys other variants possible. The snap-on keys are available in packs of 5 keys.
 Snap-on key
 Basic color: Gray
 Symbol color: Black
 Packing size per key: 5 pieces

Note

The laser labeling differs optically from the labeling of the standard keys.

Overview of lasered snap-on keys:

ID 1075358-xx

184 HEIDENHAIN Technical Manual TNC 640


ID Key designation ID Key designation
1075358-01 Collector 1075358-02 Tailstock
1075358-03 Turret 1075358-04 Turret 1
1075358-05 Turret 2 1075358-06 Chuck for opposing spindle
1075358-07 Chuck for main spindle 1075358-08 Clamp the spindle
1075358-09 Workpiece counter 1075358-10 Workpiece time
1075358-11 Tool change 1075358-12 P1
1075358-13 P2 1075358-14 P3
1075358-15 P4 1075358-16 P5
1075358-17 P6 1075358-18 P7
1075358-19 P8 1075358-20 Addition
1075358-21 Subtraction 1075358-22 Keyboard switchover
1075358-23 Bar feed rate 1075358-24 Conveyor belt
1075358-25 Oil mist separator 1075358-26 Slide change
1075358-27 Program status 1075358-28 Machine status
1075358-29 Coolant on 1075358-30 Coolant off
1075358-31 Chip conveyor on 1075358-32 Chip conveyor off
1075358-33 B axis positive 1075358-34 B axis negative
1075358-35 Tool breakage 1075358-36 Tool breakage
1075358-37 CUSTOM 1075358-38 M0
1075358-39 SKP 1075358-40 Electronic handwheel

January 2015 2.6 Overview of components 185


2.6.17 Key symbols for HR 410
The snap-on keys make it easy to replace the key symbols. In this way, the HR
handwheel can be adapted to different requirements. The snap-on keys are
available in packs of 5 keys.

Key symbols for the


spindle
Key Description Key Description
Print/Background Print/Background
ID ID
Spindle stop Spindle start
White/Red White/Green
330816-08 330816-09
Spindle stop Spindle start
White/Red White/Green
330816-47 330816-46
Spindle direction left Spindle direction right
Black/Gray Black/Gray
330816-40 330816-41
Clamp the spindle Spindle on
Black/Gray Black/Gray
330816-48 330816-1N
Spindle switch-over Spindle to 100 percent
Black/Gray Black/Gray
330816-5F 330816-5M
Jog spindle to right Jog spindle to left
Black/Gray Black/Gray
330816-5G 330816-5H
Spindle as of percent Spindle to percentage
Black/Gray Black/Gray
330816-5K 330816-5L
Spindle positioning
Black/Gray
385530-5X

186 HEIDENHAIN Technical Manual TNC 640


Key symbols with
axis designations
Key Description Key Description
Print/Background Print/Background
ID ID
X Y
Black/Orange Black/Orange
330816-24 330816-36
Z A
Black/Orange Black/Orange
330816-25 330816-42
B C
Black/Orange Black/Orange
330816-26 330816-23
U V
Black/Orange Black/Orange
330816-43 330816-38
W IV
Black/Orange Black/Orange
330816-45 330816-37
VI VT
Black/Orange Black/Orange
330816-3D 330816-4U

January 2015 2.6 Overview of components 187


Key symbols for
axis direction keys
for the Key Description Key Description
principal axes Print/Background Print/Background
ID ID
X– X+
Black/Gray Black/Gray
330816-63 330816-64
X– <– X+ –>
Black/Gray Black/Gray
330816-18 330816-17
X’– –> X’+ <–
Black/Gray Black/Gray
330816-0W 330816-0V
X– <– X+ –>
Black/Gray Black/Gray
330816-0N 330816-0M
X’– X’+
Black/Gray Black/Gray
330816-3C 330816-3B
Y– Y+
Black/Gray Black/Gray
330816-67 330816-68
Y’– –> Y’+ <–
Black/Gray Black/Gray
330816-21 330816-20
Y– <– Y+ –>
Black/Gray Black/Gray
330816-0P 330816-0R
Y– –> Y+ <–
Y Black/Gray Y Black/Gray
330816-0D 330816-0E
Z– Z+
Black/Gray Black/Gray
330816-65 330816-66
Z– <– Z+ –>
Black/Gray Black/Gray
330816-19 330816-16
Z’– –> Z’– <–
Black/Gray Black/Gray
330816-0L 330816-0K

188 HEIDENHAIN Technical Manual TNC 640


Key symbols for
axis direction keys
for rotary and Key Description Key Description
additional linear Print/Background Print/Background
axes ID ID
A– A+
Black/Gray Black/Gray
330816-95 330816-96
B– B+
Black/Gray Black/Gray
330816-97 330816-98
C– C+
Black/Gray Black/Gray
330816-99 330816-0A
U– U+
Black/Gray Black/Gray
330816-0B 330816-0C
V– V+
Black/Gray Black/Gray
330816-70 330816-69
W– W+
Black/Gray Black/Gray
330816-0G 330816-0H
W– arrow W+ arrow
Black/Gray Black/Gray
330816-1T 330816-1S
IV– IV+
Black/Gray Black/Gray
330816-71 330816-72
VI– VI+
Black/Gray Black/Gray
330816-1Z 330816-2A

January 2015 2.6 Overview of components 189


Key symbols
for machine
functions Key Description Key Description
Print/Background Print/Background
ID ID
Special function Function A
Black/Gray White/Black
330816-0X 330816-30
Function B Function C
White/Black White/Black
330816-31 330816-32
Function 1 Function 2
Black/Gray Black/Gray
330816-73 330816-74
Function 3 Function 4
Black/Gray Black/Gray
330816-75 330816-76
Function 5 Unlock door
Black/Gray Black/Gray
330816-77 330816-78
Unlock door Coolant
Black/Gray Black/Gray
330816-79 330816-80
Coolant (internal) Coolant (external)
Black/Gray Black/Gray
330816-0S 330816-0T
Coolant on Coolant off
Green/White Light red/White
330816-1L 330816-1M
Rinse water jet Spotlight
Black/Gray Black/Gray
330816-81 330816-82
Chip removal Chip conveyor
Black/Gray Black/Gray
330816-83 330816-84
Tool change Tool changer left
Black/Gray Black/Gray
330816-89 330816-85
Tool changer right Unclamp tool
Black/Gray Black/Gray
330816-86 330816-87
Unclamp tool Clamp tool
Black/Gray Black/Gray
330816-88 330816-94

190 HEIDENHAIN Technical Manual TNC 640


Key Description Key Description
Print/Background Print/Background
ID ID
Clamp tool Retract axis
Black/Gray Black/Gray
330816-0U 330816-91
XY clamping Open the magazine door
Black/Gray Black/Gray
330816-0Z 330816-3L
Clamp the fixture Unclamp the fixture
Black/Gray Black/Gray
330816-3M 330816-3N
Machine illumination Clamp/unclamp pallet
Black/Gray Black/Gray
330816-4V 330816-5V

Other key symbols

Key Description Key Description


Print/Background Print/Background
ID ID
No symbol No symbol
–/Black –/Gray
330816-01 330816-61
No symbol
–/Orange
330816-3P
NC start NC stop
White/Green White/Red
330816-11 330816-12
NC start NC stop
White/Green White/Red
330816-49 330816-50
Feed rate 1 Feed rate 2
Black/Gray Black/Gray
330816-33 330816-34
Rapid traverse Permissive button
Black/Gray White/Green
330816-13 330816-22
Permissive button Actual position capture
Black/Gray White/Black
330816-90 330816-27
– +
White/Black White/Black
330816-28 330816-29
Menu selection –> Menu selection <–
Black/Gray Black/Gray
330816-92 330816-93
0 Connect
Black/Gray White/Black
330816-0Y 330816-3A

January 2015 2.6 Overview of components 191


2.6.18 Touch probes
Touch probes for workpiece measurement are connected via the system PL
62xx or the UEC 11x. The touch probes generate a trigger signal that captures
the current position value. All touch probes from HEIDENHAIN generate the
trigger signal with a wear-free optical sensor. For more information on the
touch probes, ask for our brochure or visit us at www.touch-probes.com.

Workpiece The TS touch probe has a stylus with which it probes workpieces. The TNC
measurement 640 provides standard routines for datum setting and workpiece
measurement and alignment. The touch probes are available with all common
taper shanks. Assorted styli are available as accessories.

TS 260 touch probe


Triggering touch probe with signal transmission
over cable connection for machines with manual
tool change. For workpiece setup and
measurement during machining.

ID 738082-xx TS 260 (axial connector)

ID 738283-xx TS 260 (radial


connector)

Touch probe TS 249


Touch trigger probe with cable-connected signal
transmission for grinding and turning machines
with especially compact dimensions.

ID 682202-xx TS 249 (axial flange


socket)

ID 683109-xx TS 249 (radial flange


socket)

192 HEIDENHAIN Technical Manual TNC 640


Touch probes TS 460, TS 642, TS 740, TS 444
Triggering touch probe for workpiece setup and
measurement. For machines with automatic tool
changer.
 TS 460 with infrared/radio transmission,
collision protection and thermal decoupling,
energy-saving standby, integrated workpiece
cleaning.
 TS 642 with mechanical activation switch in the
clamping shank
 TS 740 with high probing accuracy and
repeatability, and low probing forces
 TS 444 with battery-free mode of operation via
compressed air through the spindle
The transmission is established between the TS
touch probe and the SE transceiver unit.
 SE 642 for mounting in the workspace, for
operation of a TS 4xx, TS 64x, TS 74x infrared
workpiece touch probe and the TT 449, TT 460
infrared tool touch probe
 SE 660 for mounting in the workspace;
optionally, radio or infrared transmission with
TS 460 and TT 460
TS 740 TS 460
 SE 540 for integration in the spindle head for
TS 4xx, TS 64x, TS 74x

ID 573757-xx TS 740
ID 653217-xx TS 642
ID 737624-xx TS 460
ID 588008-xx TS 444

ID 631225-xx SE 640 transmitter-


receiver unit

ID 652792-xx SE 642 transmitter-


receiver unit

ID 744719-xx SE 660 transmitter-


receiver unit

ID 626001-xx SE 540 transmitter-


receiver unit

SE 660 SE 540

January 2015 2.6 Overview of components 193


Tool measurement

TT 160 tool touch probe


Touch trigger probe with rated break point of the
connection pin for the probe contact and optical
deflection display. With pluggable cable
connection.
ID 729763-xx TT 160

Tool touch probe TT 460


Touch trigger probe with rated break point of the
connection pin for the probe contact and optical
deflection display. Infrared or radio signal
transmission can be selected.
ID 728346-xx TT 460

194 HEIDENHAIN Technical Manual TNC 640


2.6.19 MS 110 / MS 111 installation kit

MS 110 without additional 24 V supply


Sometimes limited space prevents the control
and inverter system from being mounted in the
same row in a machine’s electrical cabinet,
meaning that they must be mounted in two
separate rows. In other cases the design calls for
a second electrical cabinet to house the inverter
system. This means that the distribution and
arrangement of the components can be very
different from case to case.
In order to establish an electrical connection
(immune to noise) between the components of
the inverter system, the MS 1xx installation kits
are needed.
In most cases the additional 24 V are not needed,
since the UVR 1xxD provides enough current for
the fans and the MS 110 is sufficient.
ID 658132-xx MS 110

MS 111 with 24 V supply


For inverter systems with many powerful UM
1xxD power modules, it might be the case that
the current provided by the UV(R)1xx power
supply unit for the fans of the UMs does not
suffice to guarantee safe and reliable operation of
the fans.
If it is exceeded, then an MS111 must be used in
the inverter row where the current consumption
is very high.
ID 673685-xx MS 111

January 2015 2.6 Overview of components 195


2.6.20 Other accessories

Further components ID
Adapters for encoder signals
TTL (HEIDENHAIN layout)/1 VPP 317505-01
TTL (SIEMENS layout)/1 VPP 317505-02

CML 110 capacitor module for 24 V power


supply
Specifications
 Supply voltage: 24 V
 Capacitance: 8.3 F
 Max. charging current: 2.4 A
 Internal resistance (discharge)
Maximum: 156 milliohm
Typically: 65 milliohm
 Discharge current: 30 A

ID 574087-02 CML 110

196 HEIDENHAIN Technical Manual TNC 640


2.6.21 Documentation
HEIDENHAIN offers the following User's Manuals for the TNC 640:

User's Manual ID
HEIDENHAIN Conversational Programming 679351-xx
DIN/ISO programming 679355-xx
Cycle programming 679295-xx

The HEIDENHAIN inverters and motors for the TNC 640 are described in the
"Inverter Systems and Motors" Technical Manual.
The components required for operating the TNC 640 with non-HEIDENHAIN
inverter systems are described in "Technical Information for Operation of
SIMODRIVE and POWER DRIVE Inverter Systems."

January 2015 2.6 Overview of components 197


2.7 Brief description

Specifications TNC 640


MC 6641
Main computer unit for installation in an electrical cabinet
 Intel Core i7-3 CPU 2.1 GHz quad-core
 4 GB SDRAM main memory
 HSCI interface
 HDR memory medium
MC 6541
Main computer unit for installation in an electrical cabinet
 Intel Core i7-3 CPU 1.7 GHz dual-core
 4 GB SDRAM main memory
 HSCI interface
 HDR memory medium
MC 6542
Main computer unit for installation in an electrical cabinet
or operating panel
 Intel Core i7-3 CPU 1.7 GHz dual-core
 4 GB SDRAM main memory
 HSCI interface
 SSDR memory medium
MC 7522
Main computer unit for installation in an operating panel
 Intel Core i7-3 CPU 1.7 GHz dual-core
 4 GB SDRAM main memory
 Integrated 15-inch screen
 HSCI interface
 SSDR memory medium
MC 6241
Main computer unit for installation in an electrical cabinet
 Processor (Pentium M 1.8 GHz)
 1 GB SDRAM main memory
 HSCI interface
 HDR memory medium
MC 6341
Main computer unit for installation in an electrical cabinet
 2.2 GHz dual core processor
 2 GB SDRAM main memory
 HSCI interface
 HDR memory medium

198 HEIDENHAIN Technical Manual TNC 640


Specifications TNC 640
CC 6106
All position and speed encoder inputs 1 VPP or EnDat
 HSCI interface
 Max. 6 digital control loops
 6 position and 6 speed encoder inputs with 1 VPP or
EnDat 2.2 for axes and spindle
(EnDat 2.2 is backward-compatible to EnDat 2.1)
Basic version: 4 speed control loops
 6 PWM outputs
 Power supply via UV(R), UE or UR power supply unit
CC 6108
All position and speed encoder inputs 1 VPP or EnDat
 HSCI interface
 Max. 8 digital control loops
 8 position and 8 speed encoder inputs with 1 VPP or
EnDat 2.2 for axes and spindle
(EnDat 2.2 is backward-compatible to EnDat 2.1)
 8 PWM outputs
 Power supply via UV(R), UE or UR power supply unit
CC 6110
All position and speed encoder inputs 1 VPP or EnDat
 HSCI interface
 Max. 10 digital control loops
 10 position and 10 speed encoder inputs with 1 VPP or
EnDat 2.2 for axes and spindle
(EnDat 2.2 is backward-compatible to EnDat 2.1)
 10 PWM outputs
 Power supply via UV(R), UE or UR power supply unit

January 2015 2.7 Brief description 199


Specifications TNC 640
UEC 11x
Controller unit with integrated inverter and PLC, for
machines with low power demands
 HSCI interface
 Controller unit with position, speed and current
controller
 UEC 111: Up to 4 digital control loops, connection for 3
axes plus spindle
 UEC 112: Up to 5 digital control loops, connection for 4
axes plus spindle
 Integral braking resistor
 38 PLC inputs, 23 PLC outputs (expandable via PL 61xx)
 Interfaces to the speed encoders
 Interfaces to the position encoders
 Interfaces for one TS and TT touch probe each
 +24 V NC power supply with 2.5 A for MC and other
control components
Axis feedback control
Velocity feedforward control / Operation with following
error
Connection of the CC or UEC controller unit for digital axis
control over HSCI
Analog axis control over SPI expansion module
Cycle time for path interpolation 3 ms

200 HEIDENHAIN Technical Manual TNC 640


Specifications TNC 640
Options
Software options can be enabled by entering a code
number
Display
15- or 19-inch TFT color flat-panel display
Program memory
> 138 GB with HDR hard disk
> 21 GB with Solid State Disk SSDR
Input resolution and display step
Linear axes 0.1 µm
0.01 µm (with option 23)
Angular axes 0.0001°
0.00001° (with option 23)
Block processing time
0.5 ms
Real-time operating system
HEROS 5
Interpolation
Linear 5 of 18 axes
4 of 18 axesa
Circle 2 of 18 axes
3 of 18 axes with tilted working plane
Helix Superimpositioning of circular and straight paths
Look-ahead Precalculation of up to 5000 blocks for determining the
contouring velocity profile

January 2015 2.7 Brief description 201


Specifications TNC 640
Feedback control with CC 61xx / UEC 1xx
Position loop resolution Signal period or encoder resolution (EnDat 2.2
interpol.)
4096
Path interpolation 3 ms
Cycle time of current controller PWM frequency Cycle time if MP_iCtrlPwmType = 0:
3333 Hz 150 µs
4000 Hz 120 µs
5000 Hz 100 µs
6666 Hz 75 µs (option 49)
8000 Hz 60 µs (option 49)
10000 Hz 50 µs (option 49)
Cycle time of speed controller  Speed controller cycle time = 2 · current controller cycle
time
 Unless PWM frequency ≤ 5 kHz and double-speed
performance, then:
Speed controller cycle time = Current controller cycle time
Cycle time of position controller = Cycle time of speed controller
Maximum motor speed
fPWM · 60000 min-1
nmax =
p · 5000 Hz

nmax: Maximum motor speed [min–1]


fPWM: PWM frequency [Hz]
p: Number of pole pairs
The following PWM frequencies are available:
3333 Hz, 4000 Hz, 5000 Hz
With option 49: 6666 Hz, 8000 Hz, 10 000 Hz
or by way of: Maximum signal frequency of motor encoder = 400 kHz
or 800 kHz (depending on MP2561.x bit 0)
Calculation of maximum motor speed:
f · 60000 [s/min]
nmax = max
STR

nmax: Maximum motor speed [min–1]


fmax: Maximum signal frequency of motor encoder [kHz]
STR: Encoder line count
Example 1:
400 kHz · 60000 [s/min]
nmax =
2048

nmax = 11718.75 min–1


Example 2:
800 kHz · 60000 [s/min]
nmax =
2048

nmax = 23437.5 min–1

202 HEIDENHAIN Technical Manual TNC 640


Specifications TNC 640
Maximum feed rate by way of: Maximum signal frequency of the position encoder:
 At 1 VPP: 27 kHz or 400 kHz
 At 11 µAPP: 27 kHz or 140 kHz
Calculation of the maximum feed rate Fmax:

Fmax = SP · fmax · 60-3 m·s


µm · min

Fmax: Maximum feed rate [m/min]


fmax: Maximum signal frequency of position encoder [kHz]
SP: Signal period of the position encoder [kHz]
Example:

Fmax = 20 µm · 400 kHz · 60-3 m·s


µm · min

Fmax = 480 m/min


Error compensation
 Linear and nonlinear axis error
 Backlash
 Hysteresis
 Reversal spikes
 Thermal expansion
 Stick-slip friction
 Sliding friction
Monitoring functions without FS
 Amplitude of encoder signals
 Edge separation of encoder signals
 Absolute position for encoders with distance-coded
reference marks
 Following error
 Movement monitoring
 Standstill monitoring
 Nominal speed value
 Checksum of safety-related functions
 Power supply
 Buffer battery
 Operating temperature
 Run time of PLC program
 Motor current
 Motor temperature
 Temperature of power module
 DC-link voltage

January 2015 2.7 Brief description 203


Specifications TNC 640
Integrated PLC
PLC memory 1 GB on HDR hard disk
Program format Statement list (STL)
PLC main memory RAM Dynamic, determined by the free main memory of the
control
PLC cycle time 9 ms to 30 ms (adjustable)
PLC inputs, 24 V– Via PL
PLC outputs, 24 V– Via PL
Analog inputs, ± 10 V Via PL
Analog outputs, ± 10 V Via PL
Inputs for thermistors Via PL
a. Export version

Machine interfacing TNC 640


Commissioning aids
 Oscilloscope
 Trace function
 Table function
 API DATA function
 Watchlist function
 Logic diagram (integrated in oscilloscope)
 Log
 On-Line Monitor (OLM)
 TNCopt PC software
 TNCscope recording software
 TeleService
 DriveDiag
 Bus diagnosis
Interfaces
 Gibabit Ethernet interface
 2 x HSCI
 USB 3.0
 RS-232-C/V.24 with max. 115 Kbps
 Expanded data interface with LSV-2 protocol for data
exchange and external operation of the control with
HEIDENHAIN software TNCremo
Permissible temperature range Operation: +5 °C to +40 °C
Storage: -20 °C to +60 °C

204 HEIDENHAIN Technical Manual TNC 640


Accessories

Accessories TNC 640


PL 6xxx PLC input/output Up to eight PL 6xxx can be connected
systems with HSCI  PL 620x (system PL)
• Necessary once for each control system (except with UEC)
• Has connections for TS and TT touch probes
• Safety-relevant inputs/outputs
• Available for 4, 6 or 8 I/O modules
 PL 610x (expansion PL)
• As addition to the system PL for increasing the number of
PLC inputs/outputs
• Available for 4, 6 or 8 I/O modules
 I/O modules
• PLD-H 16-08-00
I/O module with 16 digital inputs and 8 digital outputs
• PLD-H 08-16-00
I/O module with 8 digital inputs and 16 digital outputs
• PLD-H 04-08-00 FS
I/O module with 4 digital dual-channel inputs and 8 digital
dual-channel outputs
• PLD-H 08-04-00 FS
I/O module with 8 digital dual-channel inputs and 4 digital
dual-channel outputs
• PLA-H 08-04-04
I/O module with 8 x +/– 10 V inputs, 4 x +/- 10 V analog
outputs, 4 x PT 100 inputs
• Empty housing for slots of a PL
Power supply for  PSL 13x
HSCI components 24 V power supply for supplying the HSCI components
• Outputs:
NC: 24 V– (double insulation)
PLC: 24 V– (basic insulation)
Per output: max. 21 A/ 500 W
Total: Max. 32 A / 750 W
• Outputs can be connected in parallel
Electronic handwheels  One portable HR 410, HR 520 handwheel or
 One HR 550 handwheel with wireless transmission
 One HR 130 panel-mounted handwheel
 Up to three HR 150 via HRA 110
 Rotary encoder at position input can be configured as a
handwheel
Touch probes  TS 260, a triggering touch probe with cable connection for
workpiece setup and measurement during machining
 TS 460, TS 444, TS 642, TS 740, triggering touch probes for
workpiece setup and measurement
 TT 160, TT 460, a triggering touch probe for tool measurement

January 2015 2.7 Brief description 205


Accessories TNC 640
Industrial PC  ITC 755 – additional operating station with touch screen and
ASCII keyboard
 ITC 750/ITC 760 – additional operating station; separate TE 7xx
required
 IPC 6641—Industrial PC for Windows
Computer unit for starting and remote-controlling Windows©-
based applications via the user interface of the TNC 640.
Software  PLCdesigna
PLC software developing environment
 IOconfiga
Software for configuring HSCI, PROFIBUS-DP, PROFINET-IO
and PLC I/O components
 TNCremob
Data transfer software
 TNCremoPlusb
Data transfer software with "live" screen
 CycleDesigna
Software for creating cycle structures
 TNCscopea
Software for recording data online or evaluating oscilloscope
measurement series
 DriveDiaga
Software for diagnosis of digital control loops
 TNCopta
Software for putting digital control loops into service
 KinematicsDesigna
Software for configuring the machine kinematics
 TNCtesta
Software for creating and performing acceptance tests
 TeleService
Software for remote diagnostics, monitoring, and operation
 RemoTools SDK 3.0
Function library for developing customized applications for
communication with HEIDENHAIN controls (option 18 required)
a. Registered customers can download these software products from the Internet.
b. All customers (without registration) can download these software products from the
Internet.

206 HEIDENHAIN Technical Manual TNC 640


Software options

Option Option Description ID


number

#0 Additional axis Additional control loops 1 to 8 354540-01


#1 535904-01
#2 353905-01
#3 367867-01
#4 367868-01
#5 370291-01
#6 370292-01
#7 370293-01

#8 Advanced Function Rotary table machining 617920-01


Set 1
 Programming of cylindrical contours as if in
two axes
 M116: Feed rate in mm/min and inch/min
Coordinate transformation
 Tilting the working plane, PLANE function
 Circular interpolation in 3 axes with tilted
working plane

#9 Advanced Function Interpolation 617921-01


Set 2
 Linear interpolation in 5 axes
(export license required)
3-D compensation
 of the tool length and diameter via surface
normal vectors (DL/DR in the tool table)
 via radius compensation perpendicular to the
tool direction (RL/RR in the NC program)
 Programming with LN blocks (machine-neutral
3-D programming with various options)

3-D machining
 TCPM: Tool Center Point Management –
Maintain position of the tool tip when
positioning with tilting axes (via M128 in the NC
program) and with additional options (via
FUNCTION TCPM in the NC program)
 M144: Compensating the machine’s
kinematic configuration for ACTUAL/
NOMINAL positions at end of block
 Using the electronic handwheel to change the
angle of the swivel head; does not affect the
position of the tool point
 Keeping the tool normal to the contour
 Tool radius compensation normal to the tool
direction

January 2015 2.7 Brief description 207


Option Option Description ID
number

#18 HEIDENHAIN DNC  All functions of HEIDENHAIN DNC are 526451-01


available (see "Remo Tools SDK"
documentation)
 The following functions of the LSV2 ActiveX
control become available (all other options do
not require option 18):
• OpenChatWindow
• RunProgram
• SetOverride
• SetPreset
• TransmitChatText
• TransmitPLCCommand
• TransmitPLCString
• HostFunction
• EventReceived
• NCMsgReceived
• PLCMsgReceived

#23 Display step Input resolution and display step: 632986-01


 For linear axes to 0.01 µm
 Rotary axes to 0.00001°

#40 DCM collision Dynamic Collision Monitoring (DCM) 526452-01

#42 DXF converter Load and convert DXF contours 526450-01

#45 Adaptive feed AFC: Adaptive feed control 579648-01


control (AFC)
For adaptive control of the contouring feed rate
as a function of the spindle power.

#46 Python OEM Run Python processes on control 579650-01


Process
Python is a powerful, object-oriented
programming language that can be used within
the control (PLC).

#48 KinematicsOpt Touch probe cycles for automatic 630916-01


measurement of rotary axes
Performing an initial measurement and
optimizing the active kinematics of rotary axes
(excluding calibration sphere and TS touch
probe)

#49 Double speed Double-speed control loops are used primarily 632223-01
for high-speed spindles as well as linear motors
and torque motors.

208 HEIDENHAIN Technical Manual TNC 640


Option Option Description ID
number

#50 Turning Turning functions: 634608-01


 Tool management for turning
 Tool-tip radius compensation
 Switching between milling and turning modes
of operation
 Lathe-specific contour elements
 Turning cycle package

#52 KinematicsComp Spatial compensation of error in rotary and linear 661879-01


axes (subject to export permit).

#53 Feature Content Upgrade functions 529969-01


Level
Enabling of expanded, useful functions in
updates of the NC software. However, these are
available without option #53 for the initial
installation (see the User’s Manual)

#77 4 additional axes Enabling four additional control loops 634613-01

#78 8 additional axes Enabling eight additional control loops 634614-01

#93 Extended tool The enhanced tool management function 679938-01


management additionally includes the tooling list table and the
T usage order table.

#96 Advanced spindle Advanced functions for an interpolated spindle 751653-01


interpolation

#101-130 OEM option Options of the machine tool builder 579651-01


to 579651-
30

#131 Spindle Synchronization of two or more spindles 806270-01


synchronism

#133 Remote Desktop Display and operation of external computer units 894423-01
Manager (e.g. a Windows PC)

#135 Synchronizing Advanced synchronization of axes and spindles 1085731-01


Functions

January 2015 2.7 Brief description 209


Option Option Description ID
number

#141 Cross Talk CTC: Compensation of axis couplings 800542-01


Compensation

#142 Position Adaptive PAC: Position-dependent adaptation of control 800544-01


Control parameters

#143 Load Adaptive LAC: Load-dependent adaptation of control 800545-01


Control parameters

#144 Motion Adaptive MAC: Motion-dependent adaptation of control 800546-01


Control parameters

#145 Active chatter ACC: Active suppression of chatter 800547-01


control

#146 Active Vibration AVD: Active vibration damping 800548-01


Damping

210 HEIDENHAIN Technical Manual TNC 640


2.7.1 User functions

Note

You will find the user functions of the TNC 640 in the User's Manuals and
the brochure for end users (ID 892916-xx).

January 2015 2.7 Brief description 211


2.8 Software

2.8.1 Designation of the software


The control features a separate software for the NC and the PLC. The NC
software is identified with an eight-digit number.
If you press the MOD key in any operating mode, you'll get information on the
current software of the TNC 640, e.g. the ID number of the NC and DSP
software, the NCK version and the version of the PLC program. An installed
service pack is shown by SPx after the ID number of the NC software.
Proceed as follows to display the software information of the TNC 640:
 Press the MOD key
 Select General Information
 Select the software version

Type The TNC 640 is shipped with the following NC software versions:

Export license Export Comment


340590-xx 340591-xx TNC 640

Due to restrictions on the export of the TNC 640, HEIDENHAIN can also
supply special export versions. These export versions differ from the standard
control though the installed NC software type. HEIDENHAIN releases a new
NC software type whenever it introduces extensive new functions.

212 HEIDENHAIN Technical Manual TNC 640


2.8.2 PLC software
The PLC software is on the hard disk of the TNC 640. You can order a PLC
basic program directly from HEIDENHAIN. With the PLC development
software PLCdesign, the PLC basic program can very easily be adapted to the
requirements of the machine.

2.8.3 Additional control loops or software options


The system identification key (SIK) determines the available software options
and the number of available control loops on the TNC 640 (System
Identification Key). Each main computer unit (MC) an clearly be identified by
the system identification key (SIK).

Note

If you replace the main computer unit (MC) you must also replace the SIK
in order to ensure that the enabled control loops and software options will
also be enabled on the new hardware.

There are different versions of SIKs for the TNC 640, depending on the
number of required control loops. Additional control loops (up to the maximum
permissible number) can be enabled at any later time. See "SIK for TNC 640"
on page 145.
Software options can be used to adapt the scope of functions of the TNC 640
to the respective needs and applications. See "Software options" on page 207.
If you want the code number for enabling additional control loops or software
options, please contact HEIDENHAIN for the code number. HEIDENHAIN can
give you the code number after you state your SIK number.
If you wish to enable additional control loops or software options, please
contact HEIDENHAIN for the code number. HEIDENHAIN can give you the
code number after you state your SIK number.
The definition as to whether a control loop is used and counted in the SIK is
made in the machine parameters MP_axisMode and MP_axisHw.

Note

Rule of thumb:
If an axis or spindle is moved by the control by setting a nominal value, the
respective axis or spindle must be enabled in the SIK.
If an axis is only moved manually (e.g. through mechanical handwheels) and
is only displayed, a control loop does not need to be enabled for the
respective axis in the SIK.
If an axis or spindle is only controlled in encoded form via PLC outputs
(MP_axisMode = PlcControlled), a control loop does not need to be
enabled for the respective axis or spindle.

January 2015 2.8 Software 213


Note

 A control loop may also be necessary for axes in test mode


(MP_testMode = TRUE), depending on the configuration of
MP_axisMode and MP_axisHw (see table below).
 A control loop must be enabled for every axis of a central drive group if
MP_axisMode = Active is set for the axes. In this context, please note
the following information on the "alternating" use of axis options with the
PLC modules 9226 and 9418.
 For gantry axes and master-slave-torque control, all axes involved must
be enabled in the SIK.

Setting in Setting in Control loop enabling in


MP_axisHw MP_axisMode SIK required?
(300104) (300105)
Yes No

InOutCC Active X
AnalogMC
AnalogCC
Profinet

DisplayMC Active X
DisplayCC
ManualMC
ManualCC

InOutCC NotActive X
AnalogMC PlcControlled
AnalogCC
DisplayMC
DisplayCC
ManualMC
ManualCC
Profinet

If an axis is deactivated with Module 9226 or 9418 (see "Writing axis


information—activating and deactivating axes" on page 1101), the deactivated
axis does not need to be enabled in the SIK. If the axes are reactivated, they
must be enabled in the SIK. This makes "alternating" use of axis options
possible. Example:
 Ten axes are defined in the machine configuration.
 The standard TNC 640 features four control loops.
 Two axis options were bought in addition to the standard configuration
= Six control loops may be active at the same time
Use Modules 9226 (for axes) and 9418 (for the spindle) to define which control
loops are to be active at the current point in time.
If more axes are activated than enabled in the SIK, the control issues an error
message.

214 HEIDENHAIN Technical Manual TNC 640


An NCK-based control currently supports up to 20 axes, including up to 2
spindles (MAX_AXIS = 20). This value cannot be changed, and represents the
upper limit for all configurable axes and spindles (all drives, manually operated
axes, and axes that are only displayed).
Every end product with NCK software also has the internal constant
MAX_AXIS_PRODUCT, which defines the maximum number of axes
(including spindles) of the respective product:

End product Value of MAX_AXIS_PRODUCT


TNC 640 20
Programming station 20

In the configuration file of the PLC compiler, you define the number of axes to
be considered in the structure of the memory interface, see "Configuration file
for the PLC compiler" on page 2332.

January 2015 2.8 Software 215


Enabling software To enable options, proceed as follows:
options
 While in the Programming operating mode, press the MOD key.
 Enter the code number SIK and confirm your entry with the ENT key.
The following display will appear:

The display gives you the following information and possibilities for settings:
NC Information:

Display Meaning

ID Number: Software

Rev: Software version

Control Type: Type of control

Performance Class: Type of main computer

Features: Characteristics of the


control

216 HEIDENHAIN Technical Manual TNC 640


SIK information:

Display Meaning

Serial no. (SN): SIK number

Control Type Type of control

Performance Class Type of main computer

Features Characteristics of the SIK

SIK ok, Status of the SIK


wrong SIK (Control Type mismatch),
wrong SIK (Features mismatch),
wrong SIK (Performance Class mismatch),
no SIK (Programming Station) or
no SIK

General key:
The general key permits you to enable and test all new feature content level
functions and software options. The general key is valid for 90 days after the
first enabling. After the time period has expired, the error message General
key expired appears. If an NC program is running when the general key
expires, an NC stop is issued! If the software version of the TNC 640 is
updated, you have the possibility of enabling the general key again.

Display Meaning

State: NONE General key was not used yet for


this software version.

dd.mm.yyyy Date up to which all options will


be available. It is not possible to
enable them again after this
date.

EXPIRED General key has expired for this


software version. Enabling is not
possible.

Press the SET GENERAL KEY soft key to open a window in which you press the
OK soft key to enable all options for a period of 90 days.
If this is done successfully, the General key has been set message appears
and the expiration date of the general key is shown in the State field. If the
general key is set, the TNC 640 displays the message General key is active
after every start-up.
Press the EXPIRE GENERAL KEY soft key to open a window in which you press
the OK soft key to invalidate the general key immediately.
Be aware that it is then no longer possible to enable the general key for this
software version!

January 2015 2.8 Software 217


Feature Content Level (FCL):

Note

As yet, no functions on a TNC 640 are protected by FCL (Feature Content


Level). Setting or reducing the FCL has no effect on the scope of functions
of the NC software.

Display Meaning

Actual Value: Current version of the feature content level

Installed Software Highest possible FCL with the current software


Supports

 With initial boot-up of the TNC 640 with a new SIK, the Feature Content
Level is automatically set to the value of the current NC software.
 Press the SET FCL soft key and enter the code number for option 53 in
Enter Key Code. Press the OK soft key to set the Feature Content Level to
the value of the currently loaded NC software.
If this is done successfully, the message
Feature Content Level has been set appears.
Pressing the REDUCE FCL soft key opens a window in which you can enter the
desired lower feature content level under New (lower) FCL.
Please note that this action can only be reversed by entering a valid code
number again.
If you really want to reduce the feature content level, then press the OK soft
key to confirm the entry. If this is done successfully, the message
Feature Content Level has been reduced appears.
SIK options:
All available software options and their corresponding numbers are listed in a
table. The check marks in the first column indicate which software options
have been enabled on your control.
To enable additional software options, proceed as follows:
 In the table on the right side of the screen, use the arrow keys or the mouse
to select the software option you want to enable.
 Pressing the SET OPTION soft key opens a window in which you can enter
the code number for the desired software option under Enter Key Code.
HEIDENHAIN can give you the code number after you state your SIK
number.
 Enter the code number and confirm your entry by pressing the OK soft key.
 If this is done successfully, the message Option <number> has been set
appears, and the option is checked in the table.
When you leave this table of SIK functions by pressing the END soft key or the
END key, you are requested to reboot the control if you have made any
changes. Press the emergency stop button and press the Reboot Now! button
or the REBOOT NOW soft key to reboot the control and activate the changes.

218 HEIDENHAIN Technical Manual TNC 640


Temporary You have the possibility of enabling software options with a temporary code
enabling of an number for a limited time. You can define a time between 10 to 90 days for
option enabling the software options. However, each option can only be enabled
once with a temporary code number.
If you want to enable a software option temporarily on the control via the
temporary key, proceed in the same way as for the standard enabling of
software options. Press the Set Option button or the SET OPTION soft key.
This opens a window in which you can enter the code number for the desired
software option in Enter Key Code.
If the software option was enabled successfully, the expiration date of the
temporary enabling is shown in the Expires column under SIK Options. After
the defined period has expired, the entry in the Expires column will change to
EXP, meaning "expired." The software option is then no longer available.
A software option can be enabled for an unlimited period at any time by means
of the code number, which you will receive from HEIDENHAIN after stating
the SIK number.
HEIDENHAIN would like to point out that it is not possible to use the OEM-
specific options with the SIKs of the first generation. If you encounter any
problems in this respect, please contact your HEIDENHAIN service agency.
You can generate the temporary code number with the TNCOEMOption tool
for PCs. The tool is available from HEIDENHAIN upon request.
When you generate the code number, you must specify the number of the
respective software option, the number of days you want to enable the option,
and an optional OEM Key. The OEM Key provides protection against
unauthorized persons generating code numbers for your machines with the
help of the PC tool in order to enable software options without your approval.
However, it is not essential to specify an OEM Key.
The OEM Key for generating the code number must be identical to the OEM
Key on your control.

January 2015 2.8 Software 219


The OEM key was added to the display and management of the SIK options,
feature content level and general key on the control. Press the MOD key and
enter the code number SIK to display the input form for SIK functions:
 OEM Key
The OEM Key on the control can only be used for enabling software options
with a temporary code number if the same OEM Key was specified for the
generation of the temporary code number.
If the OEM Key on the control is not identical to the one used for generating
the code number, the software option will not be enabled. Once the OEM
Key has been set, it cannot be reset.

Display Meaning

OEM Key for Not Set OEM Key was not set
temp. options
Set OEM Key was set

Pressing the SET OEM KEY TEMP. OPT. soft key opens a window in which you
can enter an OEM key.
Keep in mind that this process cannot be undone.
The OEM Key must consist only of numbers. The maximum permissible input
value for the OEM key is 65535. Conclude your entry by pressing the OK soft
key.
If the OEM key was set successfully, the message OEM Key has been set
appears, and the status in OEM Key for temp. options changes to SET.

220 HEIDENHAIN Technical Manual TNC 640


Options for The SIK options 101 to 130 are available as OEM-specific options for you, the
the OEM machine tool builder. You can assign your own OEM-specific software options
to these options.
This makes it possible for you to enable your own applications (e.g. cycles) for
the end user via the SIK from HEIDENHAIN.
The options can be enabled by entering a code number. HEIDENHAIN can give
you the code number after having been informed of the SIK number. You also
have the possibility of creating a temporary key for these OEM-specific
options in order to enable the options for a period of max. 90 days.
The PLC Module 9067 enables you to request the status of the SIK options.
Use this module to request information from the SIK about whether certain
software options are enabled via the SIK. Depending on the response, you can
activate the software option via the PLC program.

Status of options Module 9067 Status of software settings


that have been set PLC Module 9067 enables you to request status information about software
settings. Module 9067 can currently be used to interrogate the software
options set in the SIK.
Call:
PS B/W/D/K <Mode>
0: Interrogate whether SW option is set in the SIK
PS B/W/D/K <Number>
If mode is 0: Number of SIK option
CM 9067
PL B/W/D <Status>
Status of SIK option (if mode is 0):
0: Not set
1: Set
Error code:

Marker Value Meaning


NN_GenApiModuleEr 0 Function was performed correctly
ror 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModuleEr 1 Invalid value for <Number> parameter
rorCode 2 Invalid value for <Mode> parameter

January 2015 2.8 Software 221


2.8.4 NC software exchange on the TNC 640

Note

 The NC software must be exchanged only by trained personnel.


 For exchanging the NC software, HEIDENHAIN provides a packed file
with the NC software. For intermediate storage, the packed file is stored
on a USB memory stick or a USB hard disk. Then it is installed on the
control from the intermediate storage medium.
 HEIDENHAIN recommends making a backup of the control, for example
with TNCbackup (included in TNCremo), before updating the NC
software.

General  The following files are necessary for an update:


information - setup.zip
- setup.ini (this is to be created by the OEM, and is only necessary if the
update is to occur according to a specific sequence)
Please note that this currently means that the version of the software to be
installed is not displayed in advance.
Note

You can download the file required for the update (setup.zip) from the
HESIS Web Including Filebase and unzip it in your update directory.

 Software updates and service packs are installed in the same manner.
 Software updates can only be performed if the Allow software updates
option is activated in the SELinux configuration, see page 237.
 Automated updating is possible. If your directories are structured
appropriately and you use a setup.ini control file, this method makes it
possible to update the control automatically when it is booted, see
"Automated update (setup.ini)" on page 223.
 The update file (setup.zip) is automatically copied to the system partition as
part of the update program in directories with the following naming
convention:
• SW update: SYS:\zip\<Identnr>_<ver>
• Service pack: SYS:\zip\<Identnr>_<ver>_SP<n>
Attention

No manual changes must be made in these directories.

222 HEIDENHAIN Technical Manual TNC 640


 The NC software has been prepared in such a manner that when an update
is performed or a service pack loaded, the PLC program, the machine
configuration or data on the PLC partition can be updated as well, according
to the OEM’s specific requirements. The OEM uses the HEIDENHAIN PC
software PLCdesign to add all necessary files to the setup.zip archive.
These files are copied to the appropriate locations on the control during an
update.
It is also possible in this regard to save data for the /etc/sysconfig, /home/
user control directories, as well as several other files and directories, as ZIP
files. This data is also installed if the setup does not install a new HEROS
operating system.
The list of possible files is equivalent to the files that are saved with a
complete backup using TNCback for the HEROS: partition.
If the setup contains an operating system and this is installed, observe that
all files on the control specified in the root:/mergelist file are retained. The
files listed here are therefore not overwritten, even if the new setup
contains such a file.

Note

For detailed information on how to add OEM specific files to the setup
packet, refer to the online help for PLCdesign under "Generate Machine
Setup." The support necessary for this from PLCdesign will be available
starting from version 2.3. It is not possible to update only the PLC data but
not the NC software.

Automated update Automated updating is possible with the TNC 640. In order to automate an
(setup.ini) update as much as possible, a control file with the name setup.ini is
necessary in addition to the setup.zip file. If your directories are structured
appropriately and you use this setup.ini control file, this method makes it
possible to update the control automatically when it is booted. If there is a
certain "install" directory on your TNC 640 containing a setup.ini control file in
addition to the update files, an update is performed automatically according to
the instructions in this control file.
The following directories are checked during booting for the presence of a
control file:
 TNC:\install\
or, if a USB memory device is connected
 USB0:\ (USB0: First partition of the first USB memory device)
 USB0:\install\
The setup.ini file can be created with a simple text editor.
An example of a setup.ini file:
Interactive=1
Confirm=1
Language=ENGLISH
SavePlc=TNC:\backup\340590_001.zip

January 2015 2.8 Software 223


The following settings are possible:

Parameter Description
Interactive=[0, 1] Deletion of the NC software archive (old software
versions) must be confirmed by the user.
0: No
1: Yes [default]
Confirm=[0, 1] Start of update and reboot process must be
confirmed by the user
0: No
1: Yes [default]
CopyToSys=[0, 1] The setup archive to be installed is copied to the
directory SYS:\zip (TNC 640 with Windows:
C:\Program Files\install). This makes it possible to
return to this software version later.
0: No
1: Yes [default]
DeleteArchives= Procedure if there is not enough room on the SYS
[DATE,SIZE,CANCEL] partition for the update
(only if Interactive=0) DATE: Delete oldest archive first [default]
SIZE: Delete largest archive first
CANCEL: Cancel the update
Language=[ENGLISH, Language for the dialog guidance during the
GERMAN] update if no user activities are required for
(only if Confirm=0) starting the update and rebooting (Confirm=0)
GERMAN: German dialog text
ENGLISH: English dialog text [default]
DelSource=[0, 1] Delete the source files (setup.zip, setup.ini) once
the update has completed successfully
0: No [default]
1: Yes
DeleteIni=[0, 1] Delete the setup.ini file after a successful update.
0: No [default]
1: Yes

224 HEIDENHAIN Technical Manual TNC 640


Parameter Description
SavePlc=<name> The entire content of the PLC partition can be
saved in binary form as a .zip file. This makes it
possible to restore this software state including
the PLC files.
Here you enter the path and file name for the ZIP
file in which the entire PLC partition is saved in
binary format. Please consider the software
version when assigning the file name.
After an update, the -SETUP code number is
entered on a single-processor control, and the
Setup Back button is pressed in the TNC control
panel on a dual-processor control in order to
reverse an update. The previous software version
is then reinstalled. The PLC partition is restored
from the *.zip file that was entered under
SavePlc= in the setup.ini file. Please note that a
subdirectory in which you want to save the *.zip
file must be created on the TNC partition before
the update. Otherwise the update is canceled
when backing up the old PLC partition.
Only updates from one full software version to
another can be reversed. You cannot reverse the
installation of service packs.
RestorePlc=<name> The Restore function is used to restore the PLC
data to a certain software state.
Here you enter the path and file name for the ZIP
file containing the PLC data state (in binary
format) appropriate to the NC software version to
be installed. This should be the ZIP file which was
saved with the SavePlc function, containing the
corresponding PLC state and saved on the PLC
partition.

January 2015 2.8 Software 225


Manual NC Manual update (while NC software is running)
software exchange The following procedure is used to perform a manual update (without a
setup.ini file in the setup directory) or an installation of a service pack.
 HEIDENHAIN recommends using the HEIDENHAIN PC software TNCremo
to make a backup for the control.
 Connect the appropriate network drive or USB memory medium containing
the files necessary for the update (setup.zip). If the network drive is not
displayed, please proceed as follows:
• Switch to the Programming mode of operation.
• Press the PGM MGT key to open the file manager.
• Press the NETWORK soft key (2nd soft-key row).
• Select the PC to be connected with the arrow keys and press the CONNECT
DRIVE soft key.
• To exit the list of network drives, press the END soft key.
• To exit the file manager, press the END soft key.
 While in the Programming operating mode, press the MOD key.
 Enter the code number 231019, or the keywords SETUP or setup.
 Enter the path of the setup file in the following window.
 In the selection dialog, select the setup.zip file and press the SELECT soft
key.
 Press the YES soft key to confirm the message Shut down the control and
update the software?.
 The NC software is now automatically shut down and then the actual update
program is started.
 Select the desired conversational language in the update program and
confirm with the ENT key.
 The control displays an overview of the previous NC software version and
the NC software version to be installed. If too little memory capacity is
available on the memory medium, the control offers to delete an older NC
software version. Press the Yes button if you want to continue the update
process.
 Wait until the update program has installed the new NC software. You will
be informed about the installation progress in a status window with
progress bar.
 If the update was carried out with a USB device:
Remove the USB memory device after the update process and confirm the
restart of the control.
 During the first restart of the control after the software update, important
firmware updates of connected devices may be necessary. In this case,
follow the instructions on the screen.

Note

It is essential that you also pay attention to the important notes about
updating software detailed in the "Update Information No. x" belonging to
the respective software version.

 Read-in the files which you had saved to a PC using TNCremo.

226 HEIDENHAIN Technical Manual TNC 640


 The COPY SAMPLE FILES soft key is used to copy the HEIDENHAIN standard
tables and kinematics configuration examples to the corresponding
directories.
 The NC software exchange is completed.

Note

If a setup.ini file exists in the setup directory when you update manually,
then the update is performed according to the instructions in this file. See
"Automated update (setup.ini)" on page 223.

Automated If new machine parameters are introduced as a part of a software update,


updating of HEIDENHAIN creates "update rules" for the changes to the machine
machine configuration. These update rules are automatically executed during the first
parameters restart after the update and make the changes to the configuration. During the
first booting after the update, the control therefore request you to check and
save the update rules and the changes made automatically to the machine
configuration.
If following the software update automatic modifications to the machine
configuration need to be carried out, the TNC 640 displays the MOD dialog
during startup. Proceed as follows to save the modifications and continue the
boot process:
 Enter the MOD code number 95148 and press the ENT key
The changes made to the machine configuration by the software update must
be checked and saved.
 Press the CONFIG DATA soft key
All new machine parameters are marked with a red exclamation point in the
configuration editor. The TNC 640 displays a message in green for every new
or edited parameter, indicating the change made.
 Important step: Press the SAVE soft key.
 Press the END soft key and exit the Machine Parameter Programming
operating mode by pressing the END soft key again.
The control loads the new machine parameters and continues the boot
process.
You also have the possibility of using the OEM update rules to define changes
(e.g. inserting new PLC machine parameters or changing existing parameter
values) to the machine configuration and to perform the changes automatically
after the update.
Update rules are files of the *.cfg type, which contain instructions for
automated changes to the machine configuration.
For a description of how to create update rules, see "Update rules" on
page 589.

January 2015 2.8 Software 227


Automatic software Automated update
exchange
An automated update is usually a part of a manual update. In addition, you can
use the setup.ini control file to reduce the number of user actions necessary
for the update to a minimum.
If one of the following directories exists when a TNC 640 is booted,
 TNC:\install\
or, if a USB memory device is connected
 USB0:\install\ (USB0: first partition of the first USB memory device)
and if a setup.ini control file is saved in this directory, then an automated
update is performed according to the instructions in this control file (see
"Automated update (setup.ini)" on page 223).

Note

Please note that if automated updating is selected, the update program


may start with a delay due to the file size.

Software exchange Update via remote operation


via remote
This is how to perform an update via remote operation. The control must be
operation
configured for TeleService (see page 2750).
 In the Programming and Editing mode of the TNC 640, press the MOD key.
 On the TNC 640, select "External access" and press the Service ON soft key
to activate remote maintenance.
A service request is triggered and a connection is established.
 Transmit the setup.zip file to a suitable directory on the control (e.g.
TNC:\update).
 Continue the update via remote operation as described under "Manual NC
software exchange" on page 226.
Notes on updating via remote operation:
 If remote maintenance is active when the update is started, the remote
maintenance is deactivated (this does not affect the current remote
operation).
 After the reboot or after the update was canceled due to an error, a service
request is triggered. The service request information indicates whether the
update was successful.
 If the control does not boot due to missing or incorrect machine parameters,
a service request is triggered until the "power interrupt" stage of the boot
process is reached.

228 HEIDENHAIN Technical Manual TNC 640


NC software The control version (TNC 640 or TNC 640 E) is stored in the SIK. If the NC
exchange from software is exchanged on a software version different from that stored on the
standard version to SIK, after the control starts up a message appears that the control can be
export version (and operated only as a programming station. This message must be
vice versa) acknowledged.
Procedure for exchanging the NC software:
 Exchange the NC software as described in "NC software exchange on the
TNC 640" on page 222.
After the control powers up, the error message Incorrect software
version appears.
 Switch off the control.
 Exchange the SIK for a new, appropriate SIK (for the ID, see page 134); for
the location of the SIK in the MC, see "Additional control loops or software
options" on page 213.
 Switch on the control.
Since the new SIK has another SIK number, the options that are enabled on
the old SIK must be re-enabled on the new SIK. After you state your SIK
number, HEIDENHAIN can give you the code numbers for enabling the
options.
To make it possible to identify the control from outside, after you indicate the
ID and serial number of the control, you will receive a new ID label with the
new data.
 Stick the new ID label with the new control designation on the MC.

January 2015 2.8 Software 229


2.8.5 Installing a service pack

Attention

When needed, HEIDENHAIN prepares service packs for the various


versions of the NC software. Registered customers can download these
service packs from the HESIS-Web including Filebase on the Internet.
Installation of a service pack in addition to the already installed NC software
implements important error fixes. Please ensure that the NC software
always contains the latest service pack before you ship the machine.
Perform all tests required of the machine or the NC software again after
having installed the service pack.

The latest service pack always includes all changes from earlier service packs.
HEIDENHAIN recommends: Always install the latest released service pack!

Attention

If a service pack has already been installed, it will not be possible to install
a service pack with a lower index. This will be checked during the
installation of a service pack and a message will be displayed if an error is
found.

Note

 If a service pack is available for the current NC software, you can


download it from the HESIS Web Including Filebase on the Internet. The
file name consists of the NC software number and the number of the
service pack, e.g. 34059001sp1.zip.
 A service pack must be installed only by trained personnel.

The service pack consists of a packed file (setup.zip). For intermediate


storage, the packed file is stored on a USB memory stick, for example. Then
it is installed on the control from the intermediate storage medium.

Installing a service A service pack is installed in the same manner as the NC software update. For
pack instructions, please refer to "Manual NC software exchange" on page 226.

230 HEIDENHAIN Technical Manual TNC 640


2.8.6 Special features of the software

Firmware HSCI components have their own firmware, which must match the currently
installed NC software version. Every time the control is started, the NC
software checks the firmware versions of the individual HSCI components.
After a software update, during initial operation or after replacing a hardware
component, a firmware update may be required.

Note

The control must not be switched off during a firmware update!

If the NC software detects that a firmware update is necessary, you will be


prompted by a screen message to start the firmware update. Acknowledge
the message via the CE key or the DELETE ALL soft key. The firmware update
then starts.

Attention

Never shut down the TNC 640 while a firmware update is running—
otherwise the control will require servicing!

The firmware updates are included in the NC software update package. When
the firmware versions of all HSCI participants have been updated, the control
boots until the Power interrupted message appears.
After the firmware update you are prompted to switch off the control via the
main switch and leave it off for 60 seconds. This time must be maintained to
ensure that all components concerned are completely reset. For technical
reasons, some of the individual HSCI components must be updated
successively. This makes it necessary to switch off the control repeatedly via
the main switch.

January 2015 2.8 Software 231


Configuration During startup, a control in an HSCI system expects the complete
configuration of the HSCI system in the form of an IOCP file. The IOconfig
software for PCs is used to configure the system, the PLC input/output
systems (PL 6xxx, UEC 11x, MB machine operating panel with a connected
HR handwheel ) and the PROFIBUS/PROFINET components.
With IOconfig, the components of an HSCI/PROFIBUS or HSCI/PROFINET
system are specified in a project and their arrangement is described. The
actual sequence of the components must be identical with the arrangement
of the components in the IOCP file. An MB machine operating panel or a
PLB 6001, which is connected to X501, must be arranged as the last
participant of the HSCI system. On the basis of this data, IOconfig generates
the IOCP file (*.iocp) that contains all relevant configuration data for the HSCI
system. Then you transfer the IOCP file to the control. With the
MP_iocProject machine parameter (103402) you enter the path and name of
the project file (e.g. %OEM%\IOC\Structur.iocp). When the control is next
booted, the file is read in and evaluated by the control.

Note

All information required for using the IOconfig PC software and configuring
HSCI/PROFIBUS/PROFINET components is contained in the IOconfig
Technical Information, which is available for registered customers from the
HESIS Web including Filebase on the Internet.

In addition to the hardware configuration in the IOCP file, the serial numbers
of the individual HSCI components are also saved. During start-up they are
compared with those of the detected hardware. Any difference must be
checked and accepted by the user. (See "Monitoring hardware changes" on
page 243.)
The control also starts up without the IOC file or entry in the MP_iocProject
(103402) parameter. The control then automatically detects all components
connected to the HSCI chain and the current configuration—without the PLC
input/output systems, however. Press the Accept button in the dialog box to
confirm the detected configuration and continue start-up of the control.
However, further configuration of the control is not possible. In the
Programming mode you can start the BUS DIAGNOSIS by pressing the MOD
key and the DIAGNOSIS soft key. The control will display the structure of the
detected HSCI system. If required, you can use this information for the
configuration with IOconfig.

232 HEIDENHAIN Technical Manual TNC 640


2.8.7 HEROS 5 operating system

Boot manager A selection menu for selecting the operating mode is provided temporarily
when the control is booting. If you press one of the arrow keys of the ASCII
keyboard, the booting process is interrupted at this point and the control
expects you to select an operating mode ("runlevel"). If the booting process is
not interrupted at this point, the control continues booting in Runlevel 5 and
starts the NC control software. You can select one of the following operating
modes:
 Runlevel 5: Start Control (standard mode of operation)
After the HEROS 5 operating system has booted, the NC control software
is started automatically. The TNC 640 is started in the standard condition.
 Runlevel 4: Service Mode (graphics)
This operating mode is only for trained service personnel!
After the HEROS 5 operating system has booted, the booting process is
stopped. The NC control software is not started. The TNC 640 is now in the
graphic desktop of the operating system.
 Runlevel 3: Service Mode (text)
This operating mode is only for trained service personnel!
After the HEROS 5 operating system has booted, the booting process is
stopped. The NC control software is not started. The TNC 640 is in a text
console of the operating system.
Select the desired operating mode with the arrow keys and press the ENTER
key to start it.

HE Logging The HE Logging settings are for internal diagnostic files (FILO memory) for
troubleshooting. These files can only be evaluated by HEIDENHAIN. You can
access HE Logging as follows if HEIDENHAIN service personnel requests you
to do so:
 Make the taskbar at the bottom of the screen visible by moving the mouse
pointer over it.
 Press the green HEIDENHAIN button to open the JH menu.
 Select the Diagnostics menu item.
 Select the HE Logging menu item.
This takes you to the HE Logging menu containing tabs for possible settings
for Syslog, FTrace, TCPDump, Memcheck, USBDump and NC Log/Service File.
These possibilities for diagnostics and the associated settings are to be used
only together with HEIDENHAIN service personnel.
Proceed as follows if HEIDENHAIN requests you to send one of the diagnosis
files:
 Open the corresponding tab Syslog, FTrace, TCPDump, Memcheck or USBDump
 Under View at the bottom of the respective tab, select the file requested by
HEIDENHAIN.
 Press the Copy button to the right of the file selection in the View settings.
This opens the Savepath... file browser with which you can select the
target folder for the diagnostic file. Keep in mind that the file is saved in the
folder that is open in the file browser.
 Press the Copy button to save the diagnostic file in the open target folder.
There you will later find the diagnostic file, can copy it from the control (e.g.
with TNCremo) and send it by e-mail.

January 2015 2.8 Software 233


The folder mnt under file system is the folder that contains the HEIDENHAIN
partitions TNC, PLC and SYS.
From software level 34059x-05, the LogExplorer program is available for
evaluating log files. This is found in the HE Logging menu below the NC Log/
Service File tab. Explore Log Files enables you to search through existing
diagnosis files on the control and group these according to timestamps.

Tools The HEROS 5 operating system provides additional software tools that make
it possible to also open external file types and edit some of these file types.
These tools are not software tools from HEIDENHAIN. They are tools from
external suppliers. HEIDENHAIN will not provide any support or guarantee for
the proper functioning of these tools. The following tools are available:
 File manager
File manager of the operating system
 Gnumeric
Editor for opening and editing XLS and CSV files
 Leafpad
Text editor for opening and editing TXT and INI files
 Document viewer
Viewer software for opening PDF files
 perf2
Software for checking the CPU load and process utilization
 Ristretto
Viewer software for opening GIF, JPG, PNG and BMP files
 vtrace
Diagnostic software that is used only together with HEIDENHAIN service
personnel
 Xarchiver
Program for packing and unpacking archives
 Applications
• Orage calendar
Simple organizer and calendar
• Real VNC Viewer
By means of Virtual Network Computing (VNC), every PC can be
monitored and controlled by any other PC
 Web browser
Firefox (web browser) for opening HTML files

234 HEIDENHAIN Technical Manual TNC 640


If file types that are not known to the NC control software are selected in the
file manager of the control, then the operating system automatically uses the
corresponding tools to open the file types it knows. The tools themselves can
only be opened in the PLC mode of operation. Proceed as follows:
 While in the Programming and Editing operating mode, press the MOD key.
 Enter the code number 807 667 to switch to the PLC operating mode.
 Make the taskbar at the bottom of the screen visible by moving the mouse
pointer over it.
 Press the green HEIDENHAIN button to open the JH menu.
 Select the Tools menu item.
 Start the desired tool.

Operating system Certain accesses to or changes in the operating system are password-
password protected. The code number 807667 or the respective OEM coder number is
required for these areas.

January 2015 2.8 Software 235


2.8.8 Media Player – support for special file formats
The operating system of the control features the "Totem" media player for
playing audio and video files. The "Totem" media player is pre-installed on the
control and starts automatically if a file with appropriate file extension is
opened. This enables media files with "Ogg" format (.ogg, .oga, .ogv, .ogx) to
be played as standard.
For some applications, other data formats, e.g. MPEG4 or H264, may require
support. The codecs required for these for processing such data formats
require official licenses, and are therefore not part of the standard HEROS
operating system. You can however subsequently install such codecs if
required. For this reason the control supports subsequent installation of the
ONEPLAY Codec Pack from the provider Fluendo.
Procedure for downloading the codec pack from Fluendo (www.fluendo.com):
 Register as a user (login)
 Download/purchase the ONEPLAY Codec Pack
You then transfer this file (*.rpm) with TNCremo to the corresponding
control.

Note

 The installed codec pack remains permanently on the TNC even after a
software update.
 The codec pack is not part of a controlled backup using TNCbackup. With
servicing (for example replacing the memory medium), the codec pack
must be manually installed again following the restore.

Proceed as follows to install the codec pack on the control:


 Make the taskbar at the bottom of the screen visible by moving the mouse
pointer over it.
 Press the green HEIDENHAIN button to open the JH menu.
 Select the Tools
menu item.
 Select the HePacketManager Custom menu item and enter the operating
system password if requested.
Modifications in this area of the operating system are only possible if the
operating system password is entered.
 Press the Install button
 Select the codec pack to be installed (oneplay-gstreamer-codecs-pack-20-
3.i386_LINUX_RPM_INTL_ATOM.rpm).
The codec pack is then saved as an optional operating system accessory in
a special operating system directory with the name "/opt". This directory is
only managed by the operating system; you cannot access this directory
with the file manager.
 The installed codec pack is then displayed under Custom RPM
 Press the OK soft key to close this dialog. The data formats included in the
codec pack are then supported.

236 HEIDENHAIN Technical Manual TNC 640


You can delete installed codec packs if required with the Remove Now button.
If SELinux is active on the control, a new labeling of the "/opt" directory must
be triggered following installation of the codec pack using the Relabel Files
SELinux function (Relabel optional software packages ("/opt" folder)),
see page 237. In addition, the execution of programs in the "/opt" folder must
be explicitly authorized in the SELinux settings (Allow program execution in
/opt (optional packages)) menu item, enabling the codec pack to be used.

2.8.9 SELinux
SELinux is an expansion for Linux-based operating systems. SELinux is an
additional security software in the sense of Mandatory Access Control (MAC)
and protects the system against the execution of unauthorized processes or
functions, i.e. viruses and other malicious software. MAC means that every
action must be explicitly permitted, otherwise it will not be executed. The
software is intended as protection in addition to the normal access restriction
in Linux. Certain processes and actions can only be executed if the standard
functions and access control of SELinux permit it.
The SELinux installation of the TNC 640 is prepared to permit running of only
those programs installed with the HEIDENHAIN NC software. Other programs
cannot be run with the standard installation.
The directory itself and the files in the PLC:\etc\selinux directory should not
be deleted. These files are directly related to the function of the SELinux
security software.
The access control of SELinux under HEROS 5 is regulated as follows:
 Only files that are installed with the HEIDENHAIN NC software can be
executed.
 Files in connection with the security of the software (SELinux system files,
HEROS 5 boot files, etc.) may only be changed by programs that are
selected explicitly.
 New files generated by other programs must never be executed.
 There are only two processes that are permitted to execute new files:
• Starting of a software update
A software update from HEIDENHAIN can replace or change system
files. Software updates may only be downloaded from HESIS-Web
Including FileBase. Install a software update only if you can trust the
source of the files (e.g. USB stick).
You can prohibit software updates via the configuration of SELinux.
• Starting of the SELinux configuration
The configuration of SELinux should be protected by a password.

January 2015 2.8 Software 237


HEIDENHAIN generally recommends activating SELinux because it provides
additional protection against attacks from outside. When commissioning the
machine you should first install all of the required components (PLC program,
OEM help files, Python scripts etc.) before you activate SELinux. When the
control boots, it will only display a short note then.
In rare cases it may be necessary to check the application of SELinux:
 Python modules or libraries that are not included in the HEIDENHAIN
standard installation or were modified by the user. In such cases the user's
changes must be checked and corrected, if necessary.
 OEM specific applications with executable files. In such cases the
application of SELinux must be tested more thoroughly and possibly be
adapted.
In these two cases, SELinux must be deactivated temporarily if Python scripts
or executable programs are to be transferred to the control via the file
manager, TNCremo or TNCbackup. Afterwards the file system must be
relabeled (Relabel Files) and SELinux must be activated again.
SELinux configuration:
 Make the taskbar at the bottom of the screen visible by moving the mouse
pointer over it.
 Press the green HEIDENHAIN button to open the JH menu
 Select the Settings menu item.
 Select the SELinux menu item.

238 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Password Protection

Set Password Enter a password for the SELinux


configuration.
HEIDENHAIN recommends protecting the
settings for SELinux with a password.
Please note that the password needs to be
entered again before it can be changed or
deleted. If the password is lost, the storage
medium must be replaced before access to
the settings is permitted again.

Delete password Delete password for the SELinux


configuration.

Security Policy NOT active Deactivate SELinux


(System is not protected)

Don’t warn if Do not display the message anymore.


SELinux is not
active

Security Policy ACTIVE

Allow software NC software update via setup.zip file


updates permitted.

Allow open VPN Data exchange via a VPN tunnel permitted.


tunnel for
remote service

Allow program Permit execution of files or programs from


execution from a storage medium with VFAT formatting.
VFAT Please note that USB sticks, for example,
are usually also VFAT formatted, meaning
that any programs can be executed from
such data carriers! If the item is not set
automatically, it must be activated manually
if the option of the encrypted PLCE partition
is being used and Python programs located
on PLCE: are to be started.

Allow NC to Permit changes to the operating system


change HEROS files by HEIDENHAIN PC software.
config files This menu item must be active if the
Backup and Restore functions are to be
executed with the TNCremo PC tool.

January 2015 2.8 Software 239


Menu item Function

Allow USB Allow connection/access to USB mass


storage devices storage
(Memory Sticks) If this menu item is deactivated, it is not
possible to access or connect USB mass
storage devices via the USB interfaces of
the control. This also applies to connected
ITCs in clone operation.
If it is attempted to connect a USB memory
with the option in deactivated state, a
warning (USB device blocked) is displayed
for 15 seconds at bottom right of the
screen.

Allow program Enable execution of files or programs in the


execution in / "/opt" operating system directory.
opt (optional Optional operating system accessories are
packages) saved in this special operating system
directory. This directory is only managed by
the operating system; you cannot access
this directory with the file manager.
This menu point must be active if, for
example, additional codec packs are
installed, see page 236.

Relabel Files If Python scripts or executable programs


were transferred to the control, the file
system must be relabeled and SELinux
must be activated again.

240 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Partitions to Relabel

Relabel the Sets a new label only for the SYS partition
system
partition „/“

Relabel Sets a new label for the "/opt" operating


optional system directory
software
packages ("/
opt" folder)

Relabel the NC Sets a new label for the NC partitions SYS,


software PLC and TNC
partitions

HEIDENHAIN recommends activating SELinux in the default configuration and


protecting the settings for SELinux by an individual password:
 Activate the Security Policy
 Activate the options Allow software updates, Allow openVPN tunnel for
remote service
 Deactivate the options Allow program execution from VFAT, Allow NC to
change HEROS config files
This way SELinux prevents unknown programs from being executed. From
the point of view of HEIDENHAIN, this ensures sufficient protection of the
control system and its software from e.g. viruses and malicious software.
Installing additional virus scanners on the control is not necessary or advisable
from the point of view of HEIDENHAIN because it may cause problems with
the execution of the actual NC software or NC programs.
NC updates from HEIDENHAIN or updates that are created with PLCdesign
have a signature for identification. Only updates with such a signature can be
executed by activating the Allow software updates option. After an update
the newly installed program is relabeled automatically—these may then be
executed. If the option is not enabled this has the effect that the end user can
no longer run NC software updates without entering the SELinux password
(the option would have to be enabled again temporarily). The same applies to
automatic updates via USB sticks.

January 2015 2.8 Software 241


2.8.10 Functional safety (FS)
The HSCI hardware also makes it possible to set up HEIDENHAIN control
systems with integrated functional safety (FS). However, the full range of
features will not yet be available in the first software version for the TNC 640.
This Technical Manual describes the HSCI hardware for systems with and
without functional safety. Components for systems with functional safety
have the identifier FS, e.g. MB 720 FS, PLB 6204 FS.

Note

Before planning a machine with functional safety, please inform yourself of


whether the current scope of functional safety features suffices for your
machine design.

You will find the special features and limitations of the hardware and software
for functional safety in the Technical Manual for Functional Safety (FS). Your
contact person at HEIDENHAIN will be glad to answer any questions
concerning the TNC 640 with functional safety.

242 HEIDENHAIN Technical Manual TNC 640


2.8.11 Monitoring hardware changes
The TNC 640 automatically monitors and checks whether hardware changes
to control components took place. During start-up of the control, the nominal
configuration of the IOCP file is compared with the actual configuration. If
there is a difference, you will be informed of it in a dialog box.
To accept a control hardware change:
 Press the right arrow key to navigate to the Accept button. Then press the
ENT key:
To reject a control hardware change:
 Press the Reject button. The control will continue booting and start in the
Programming Station mode. When the control is next booted, the dialog box
will be displayed again.
The "Hardware changed" dialog appears when, in comparison with the last
boot-up of the control
 one or more devices have been added,
 one or more devices have been removed,
 the sequence of the HSCI participants has changed, or
 on one or more devices the "identification data" have changed. The
identification data include the following:
• All available information from the electronic keyboard
(e.g. device type, ID)
• All serial numbers
• All firmware versions, if the firmware is permanently programmed on
the device (e.g. firmware of the PL, MB)
• All configuration information of an IOCP file (e.g. HSCI address, slot
number)
As a rule the dialog appears after an intentional change, e.g. after exchange of
a component for repair or after a firmware update after software installation.
If the dialog appears without a known change, this indicates an unintentional
change, e.g. loss of an HSCI connection, power supply failure, or a defect in
an HSCI assembly. For this reason, displayed changes must always be
checked by qualified personnel!

Danger

If the "Hardware changed" dialog appears, the change has to be checked


and, if necessary, accepted!

January 2015 2.8 Software 243


2.8.12 Data backup
For data backup, HEIDENHAIN offers the PC software TNCbackup free of
charge. TNCbackup provides convenient functions for backing up and
restoring data. TNCbackup is part of the TNCremo software package and can
be downloaded from the HESIS-Web Including Filebase on the Internet.
HEIDENHAIN recommends that the machine manufacturer use the
TNCbackup software to save all his machine-specific data and to supply
them with the machine (e.g. on CD-ROM).
The customer, too, can save his data before exchanging the control. It is also
advisable that the customer save all of the files and programs created on the
control at regular intervals on a PC. The CD-ROM supplied with the machine
should therefore also contain the current version of TNCremo.

244 HEIDENHAIN Technical Manual TNC 640


2.9 Released NC software
The following NC software was released for the TNC 640 and MC 6xxx/CC
6xxx:
 NC software 340590-01 and 340591-01 January 2012
 NC software 340590-02 and 340591-02 March 2013
 NC software 340590-04 and 340591-04 January 2014

January 2015 2.9 Released NC software 245


246 HEIDENHAIN Technical Manual TNC 640
3 Mounting and electrical installation

3.1 General information

Attention

Remember the following during mounting and electrical installation:


 National regulations for power installations
 Interference and noise immunity
 Operating conditions
 Mounting attitude

3.1.1 Safety precautions

Danger

Ensure that the main switch of the control or machine is switched off when
you engage or disengage connecting elements or connection clamps.

Danger

Ensure that the grounding conductor is connected. Interruptions in the


equipment grounding conductor may cause damage to persons or
property.

Danger

Incorrect or non-optimized input values can lead to faulty machine


performance and therefore to serious injury to persons and damage to
equipment. Modifications of the machine configuration should be done
with caution and uncontrolled axis motions should be taken into account.

Attention

In order to be able to judge the behavior of an NC controlled machine, you


need to have fundamental knowledge about drives, inverters, controls and
encoders. Inappropriate use may cause considerable damage to persons or
property.
HEIDENHAIN does not accept any responsibility for direct or indirect
damage caused to persons or property through improper use or incorrect
operation of the machine.

January 2015 3.1 General information 247


Danger

 The interfaces for PLC inputs and outputs comply with the regulations for
basic insulation according to EN 61800-5-1.
 Only circuits and/or units that comply at least with the requirements for
basic insulation may be connected to any of the interfaces with basic
insulation, otherwise damage to persons or property may be caused. The
maximum DC voltage mean value of the PLC inputs is 31 V.
 The interfaces of the MC for touch probes, handwheels, Ethernet, COM,
USB and 24 V NC supply voltage comply with the requirements of
EN 61800-5-1 for safely separated voltage (PELV).
 Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected to any of the interfaces that comply
with PELV, otherwise damage to persons or property may be caused.
 Refer to your control's basic circuit diagrams and grounding diagrams for
the different supply voltages in the control system.

3.1.2 Degrees of protection


The following components fulfill the requirements for IP54 (dust and splash-
proof protection).
 Visual display unit (front, when properly installed)
 Keyboard unit (front, when properly installed)
 Machine operating panel (front, when properly installed)
 Handwheel (built-in or connected, depending on the type)
All electric and electronic control components must be installed in an
environment (e.g. electrical cabinet, housing) that fulfills the requirements of
protection class IP54 (dust and splash-proof protection) in order to fulfill the
requirements of contamination level 2.

Note

All components of the OEM operating panel must also comply with
protection class IP54, just like the HEIDENHAIN operating panel
components.

248 HEIDENHAIN Technical Manual TNC 640


3.1.3 Electromagnetic compatibility
This unit fulfills the requirements for EN 50370-01 and is intended for
operation in industrially zoned areas.
Protect your equipment from interference by observing the following rules and
recommendations.

Likely sources of Interference is mainly produced by capacitive and inductive coupling from
interference electrical conductors or from device inputs/outputs, such as:
 Strong magnetic fields from transformers or electric motors
 Relays, contactors and solenoid valves
 High-frequency equipment, pulse equipment and stray magnetic fields from
switch-mode power supplies
 Power lines and leads to the above equipment

Protective  Keep a minimum distance of 20 cm from the control and its leads to
measures interfering equipment.
 Keep a minimum distance of 10 cm from the control and its leads to cables
that carry interference signals. For cables in metallic ducting, adequate
decoupling can be achieved by using a grounded separation shield.
 Shielding according to EN 50178
 Use equipotential bonding conductors with a cross section of 6 mm2.
 Use only genuine HEIDENHAIN cables, connectors and couplings

January 2015 3.1 General information 249


3.1.4 ESD protection
Always assume that all electronic components and assemblies are
endangered by electrostatic discharge (ESD).
To ensure protection from ESD, follow the precautionary measures described
in IEC 61340-5-1, IEC 61340-5-2 and IEC 61340-4-1.

Note

Improper handling can result in damage to the components or assemblies


due to ESD!

The following are some points covered in the above mentioned standards:
 When handling electrostatically endangered components or assemblies
(e.g. exchange, installation, shipping), always comply with the precautionary
measures described in IEC 61340-5-1, IEC 61340-5-2 and IEC 61340-4-1.
 Store and transport ESD-sensitive components in ESD protective
containers.
 Ensure during handling the proper grounding of the working area (e.g. tool,
workbench, packaging) and the person.
 Inspect the ESD protection system regularly.

The following figure shows how a suitable working area could look in
accordance with IEC 61340.
1 2

3 4

 1: Wristband with 1 MOhm grounding cable for grounding the person


 2: Grounded connection for wristbands, floor mats, table mats etc. for
equipotential bonding
 3: Dissipative shoes
 4: Dissipative flooring or floor mat

250 HEIDENHAIN Technical Manual TNC 640


An important part of the working area is a suitable working surface with a
wristband with 1 MOhm grounding resistance for personal grounding:

January 2015 3.1 General information 251


3.2 Environmental conditions

3.2.1 Storage and operating temperatures

Limit values

Device Air approaching the Temperature range outside


device in the panel / the panel / electrical cabinet
electrical cabinet
MC 7522 0 °C to +50 °C 0 °C to +45 °C (no direct
exposure to sunlight)
MC 6xxx, 0 °C to +50 °C 0 °C to +45 °C (no direct
MC 7xxx in exposure to sunlight)
panel with
SSDR
ITC 755, 0 °C to +50 °C 0 °C to +45 °C (no direct
ITC 750, exposure to sunlight)
ITC 760
MB 6xx, 0 °C to +50 °C 0 °C to +45 °C
TE 6xx
MB 7xx, 0 °C to +50 °C 0 °C to +45 °C
TE 7xx
PLB 6001 0 °C to +50 °C 0 °C to +45 °C
HR 4xx, 0 °C to +45 °C
HR 5xx
MC 6241, +5 °C to +40 °C
MC 6341,
IPC 6341
MC 6541 +5 °C to +40 °C
MC 6542 +5 °C to +40 °C
MC 6641, +5 °C to +40 °C
IPC 6641
PLB 6xxx, +5 °C to +40 °C
PLD-H,
PLA-H
BF 7xx 0 °C to +50 °C 0 °C to +45 °C (no direct
exposure to sunlight)
HDR hard +5°C to +55°C 0 °C to +45 °C (no direct
disk exposure to sunlight)
SSDR solid 0 °C to +70 °C 0 °C to +45 °C (no direct
state disk exposure to sunlight)

252 HEIDENHAIN Technical Manual TNC 640


Conditions for Because the MC is installed in the operating panel, additional heat is
integrating the MC generated that must be emitted to the surroundings through the panel wall.
in the operating The required temperature difference depends on the design and the size of
panel the panel.
The maximum permissible temperature of the air surrounding the panel is 45 °C.
However, the temperature of the air inside the panel, which flows into the
HEIDENHAIN devices (e.g. the MC), is decisive for the HEIDENHAIN devices
integrated in the panel.

Attention

The temperature of the air inside the panel, which flows into the HEIDENHAIN
devices, must not exceed a maximum temperature of +50 °C.

Ensure that the operating panel is designed in such a way that the air
approaching the MC does not exceed a max. temperature of +50 °C. Please
verify this through an appropriate temperature measurement.
With the recommended temperature limits, active cooling is not required for
a typical panel. If the maximum permissible temperature for the integrated
components is exceeded, however, HEIDENHAIN recommends using heat
exchangers. They ensure appropriate heat dissipation for the components in
the operating panel.

Note

HEIDENHAIN recommends against using fans with filter units for


dissipating the heat in the operating panel. Due to filter contamination
problems they are often not capable of ensuring the required heat
dissipation.

Humidity during
operation

Attention

Condensation on the electronics is not permitted!

Condensation can form, for example, if warm, moist air flows along cool
surfaces of the electronics. Therefore, cooling units with discontinuous
(e.g.two-position) temperature control must not be used. The resulting cyclic
changes in temperature and humidity can cause condensation on the cool
surfaces of the electronics. Furthermore, you must prevent condensate from
reaching the electronics and ensure that it can drain away without causing
damage.
In tropical areas it is recommended that the control not be switched off, so
that condensation is avoided on the circuit boards.

Storage For all control components: –20 °C to +60 °C.


temperatures
NiMH rechargeable batteries in the HR 550FS: –20 °C to +21 °C at a charge
status of 40 %.
Humidity during storage of NiMH rechargeable batteries
NiMH rechargeable batteries in the HR 550FS: Relative humidity 5 < 60 % rF

January 2015 3.2 Environmental conditions 253


3.2.2 Heat generation and cooling
A heat exchanger or a cooling unit is preferable for controlling the internal
temperature of the electrical cabinet.
If filtered air is blown into the electrical cabinet for cooling purposes, the
standard IEC 61800-5-1 applies, which permits contamination level 2.

Danger

Be sure to take the measures required for preventing dust or water from
entering the electrical cabinet or the housing.
Dust depositing inside electrical devices may cause them to fail and impair
the safety of the system. Max. contamination level 2 is permitted for the
components.

Incorrect Correct

CC 61xx
Inverter

CC 61xx
Blocking
Inverter
elements

Elements with
considerable heat
generation

254 HEIDENHAIN Technical Manual TNC 640


3.2.3 Limit values for ambient conditions
HEIDENHAIN specifies the range of application 2 for the use of its control
products.
Furthermore, the following limit values apply:

Characteristic Limit values to be Standard to be


values during maintained complied with
operation
(data according to
Technical
Manual):
Vibration ± 0.075 mm, 10 Hz to 41 Hz; DIN EN 60068-2-6
5 m/s2, 41 Hz to 500 Hz;
Shock 50 m/s2, 11 ms DIN EN 60068-2-27
Relative air humidity 75 % in continuous
operation;
95 % for not more than 30
days a year (randomly
distributed)
IP protection IP 54 for DIN EN 60529
HW, BF, MB, TE
ESD 61000-4-2 Severity level 3 DIN EN 6100-4-2
HF field 61000-4-3 Severity level 3 DIN EN 6100-4-3
Burst 61000-4-4 Severity level 3 DIN EN 6100-4-4
Surge 61000-4-5 Severity level 3 DIN EN 6100-4-5
Conducted Severity level 3 DIN EN 6100-4-6
disturbances

3.2.4 Installation elevation


The maximum elevation for installation is 3000 m above sea level.

January 2015 3.2 Environmental conditions 255


3.2.5 Mounting attitude of components in the electrical cabinet
For example MC 6xxx, CC 61xx, UV xxx, UM xxx, UE 2xx B(D), IPC xxxx

Attention

 When mounting, please observe proper minimum clearance, space


requirements, length and position of the connecting cables.
 Please ensure during installation that the components are properly
screwed to the wall of the electrical cabinet by using all of the provided
cutouts (holes). For example, the MC 6x4x, CC 61xx each provide four
cutouts for fastening.

Leave space for air circulation!


Air out
Temperatures of >150 °C are
possible with UE 21xB with
integral braking resistor; do not
mount any temperature-sensitive
components!

Leave space for servicing!

Leave space for air circulation and


servicing!

Air in

Leave space for servicing and


connecting cables!

PSL 130, UV(R), UE, UM, CC 61xx

256 HEIDENHAIN Technical Manual TNC 640


3.2.6 Mounting attitude of UMC 111 (FS)

Attention

When mounting, please observe proper minimum clearance, space


requirements, length and position of the connecting cables.

Leave space for air circulation!

Leave space for servicing!

Leave space for air circulation and


servicing!

(*) Recommended free space


for air circulation >50 mm next to
the last HEIDENHAIN component
in the combination.

Leave space for servicing and


connecting cables >90 mm!

UMC 111 (FS)

January 2015 3.2 Environmental conditions 257


3.2.7 Mounting attitude of UEC 11x (FS)

Attention

When mounting, please observe proper minimum clearance, space


requirements, length and position of the connecting cables.

Leave space for air circulation!


Temperatures of >150 °C are
possible with UEC 11x (FS) with
integral braking resistor; Do not
mount any temperature-sensitive
components!

Leave space for servicing and


connecting cables!

Leave space for air circulation and


servicing!

(*) Recommended free space


for air circulation >50 mm next to
the last HEIDENHAIN component
in the combination.

Leave space for servicing and


connecting cables >90 mm!

UEC 11x (FS)

258 HEIDENHAIN Technical Manual TNC 640


3.2.8 Mounting attitude of MC 7422, MC 7522, MC 7222, MC 6222

Attention

When mounting, please observe proper minimum clearance, space


requirements, length and position of the connecting cables.

Air out

15
Leave space for air
circulation and servicing!

20

Air in

January 2015 3.2 Environmental conditions 259


3.2.9 Mounting attitude of BF 750

Attention

When mounting, please observe proper minimum clearance, space


requirements, length and position of the connecting cables.

Air out

Leave space for air


circulation and servicing!

Air in

260 HEIDENHAIN Technical Manual TNC 640


3.2.10 Mounting attitude of BF 760

Attention

When mounting, please observe proper minimum clearance, space


requirements, length and position of the connecting cables.

Air out

Leave space for air


circulation and servicing!

Air in

January 2015 3.2 Environmental conditions 261


3.2.11 Mounting attitude of PLB 6xxx

Attention

When mounting, please observe proper minimum clearance, space


requirements, length and position of the connecting cables.

Air out
100
100

Air in

PLB 6xxx Leave space for air circulation and


servicing!

262 HEIDENHAIN Technical Manual TNC 640


3.3 Handling the HDR hard disk

Shipping brace of The HDR hard disks of the MC 6x4x are equipped with a shipping brace.
the hard disk Before putting the TNC 640 into service, the shipping brace of the hard disk
must be removed.

Attention

Do not transport the HDR with the MC 6x4x after you have installed the
HDR. If the entire machine is being transported, or the MC is being
transported inside the electrical cabinet, the shipping brace for the hard disk
is usually not required. However, if the possibility exists that the hard disk
could be subject to increased shock or vibration loads, then you must
remove the hard disk from the MC for transport, reinstall the shipping brace
in the HDR, and send the HDR separately in the original packaging.

Should servicing become necessary (i.e. the HDR is being shipped on its own),
the hard disk must be secured with the shipping brace.

Note

When handling the HDR disk and the SIK, ensure electrostatic discharge
protection. Improper handling can result in damage to the components or
assemblies due to ESD!

January 2015 3.3 Handling the HDR hard disk 263


3.4 Mounting the Solid State Disk (SSD)
A special shipping brace is not required for the Solid State Disk (SSD). The SSD
is to be mounted as follows:

Note

When handling the Solid State Disk (SSD), ensure electrostatic discharge
protection. Improper handling can result in damage to the components or
assemblies due to ESD!

264 HEIDENHAIN Technical Manual TNC 640


3.5 Overview of components

Hardware component ID
MC 6241 Main computer 1.8 GHz with HDR, electrical cabinet version, 573398-xx
without PROFIBUS interface
MC 6241 Main computer 1.8 GHz with HDR, electrical cabinet version, 653220-xx
with PROFIBUS interface
MC 7522 Main computer with 15-inch TFT display, Intel Core i7-3 CPU 1.7 1071597-xx
GHz dual-core with SSDR, 4 GB RAM, operating-panel version
MC 6341 Main computer, 2.2 GHz DualCore with HDR, electrical cabinet 671226-xx
version
MC 6341 Main computer, 2.2 GHz DualCore with HDR, electrical cabinet 735873-xx
version, with Profibus interface
MC 6541 Main computer, Intel Core i7-3 CPU 1.7 GHz dual-core with HDR, 1081185-xx
4 GB RAM, electrical cabinet version
MC 6542 Main computer, Intel Core i7-3 CPU 1.7 GHz dual-core with SSDR, 1081188-xx
4 GB RAM, suitable for operating panel or electrical cabinet
MC 6641 Main computer, Intel Core i7-3 CPU 2.1 GHz quad-core with HDR, 811550-xx
4 GB RAM, electrical cabinet version

TNC 640 HDR Hard disk for MC 6x41, 160 GB, NC software 340590-01 617779-0x
TNC 640 HDR Hard disk for MC 6x41 (export version), 160 GB, 617779-5x
NC software 340591-01

SIK TNC 640 SIK for MC 674989-01


SIK TNC 640 SIK for MC (export version) 674989-51

BF 750 15-inch TFT display with HDL connection, stainless-steel design 785080-xx
BF 760 19-inch TFT display with HDL connection, stainless-steel design 732589-xx

IPC 6641 Industrial PC for installation in an electrical cabinet, Intel Core i7-3 1039543-xx
CPU 2.1 GHz quad-core, 4 GB RAM
HDR IPC 6641 Empty data carrier for Windows operating system. Free capacity of 1074770-xx
160 GB.

ITC 755 Additional operating station with touch screen and ASCII keyboard, 1039527-xx
15-inch
ITC 750 Additional operating station with soft keys, 15-inch 1039544-xx
ITC 760 Additional operating station with soft keys, 19-inch 827086-xx

CC 6106 Controller unit for HSCI for max. 6 control loops 662636-xx
CC 6108 Controller unit for HSCI for max. 8 control loops 662637-xx
CC 6110 Controller unit for HSCI for max. 10 control loops 662638-xx

January 2015 3.5 Overview of components 265


Hardware component ID
Connecting cable Ribbon cable for connecting four X69 connectors of the CC (with 325816-22
each other: two CC 6108, or two CC 6110, or one CC 6108 to one
CC 6110)
Connecting cable Ribbon cable for connecting 2 x X69 connectors of the CC 6106 325816-24
(2 x CC 6106)
UMC 111FS Controller unit with inverter and PLC for power supply via external 664231-xx
DC link, 4 control loops, functional safety
UMC 111 Controller unit with inverter and PLC for power supply via external 736435-xx
DC link, 4 control loops
UEC 111 Controller unit with inverter and PLC, 4 control loops 625777-xx
UEC 111FS Controller unit with inverter and PLC, 4 control loops, functional 1075825-xx
safety
UEC 112 Controller unit with inverter and PLC, 5 control loops 625779-xx
UEC 112FS Controller unit with inverter and PLC, 5 control loops, functional 1075825-xx
safety
UEC 113 Controller unit with inverter and PLC, 6 control loops 828471-xx
UEC 113FS Controller unit with inverter and PLC, 6 control loops, functional 1038694-xx
safety

MS 110 Mounting case for multi-row configuration 658132-xx


MS 111 Mounting case for multi-row assembly, additional connection for 24 673685-xx
V supply to the fan

TE 720 Keyboard unit without touchpad (15-inch), stainless steel 805488-xx


TE 730 Keyboard unit with touchpad (15-inch), stainless steel 805489-xx
TE 740 Keyboard unit with touchpad (19-inch), stainless steel 886546-xx
TE 735 Keyboard unit with touchpad and integrated MB for HSCI 771898-xx
connection, 15-inch, stainless steel
TE 745 Keyboard unit with touchpad and integrated MB for HSCI 679817-xx
connection, 19-inch, stainless steel
TE 735FS Keyboard unit with touchpad and integrated MB for HSCI 805493-xx
connection, functional safety (FS), 15-inch, stainless steel
TE 745FS Keyboard unit with touchpad and integrated MB for HSCI 805482-xx
connection, functional safety (FS), 19-inch, stainless steel

PSL 130 Low-voltage power supply unit, 750 W, for +24 V NC and +24 V 575047-xx
PLC
PSL 135 Low-voltage power supply unit, 750 W, for +24 V NC and +24 V 627032-xx
PLC, also suitable for non-HEIDENHAIN systems

MB 720 Machine operating panel for HSCI connection (15-inch), stainless 784803-xx
steel
MB 720FS Machine operating panel for HSCI connection, functional safety, 805474-xx
15-inch stainless-steel design
PLB 6001 HSCI adapter for OEM-specific machine operating panel, 668792-xx
72 digital inputs, 40 digital outputs

266 HEIDENHAIN Technical Manual TNC 640


Hardware component ID
PLB 6001FS HSCI adapter for OEM-specific machine operating panel, functional 722083-xx
safety (FS), 36 digital FS inputs, 40 digital outputs

PLB 6104 PLB for HSCI, 4 slots 591828-xx


PLB 6106 PLB for HSCI, 6 slots 630058-xx
PLB 6108 PLB for HSCI, 8 slots 630059-xx
PLB 6204 PLB for HSCI, 4 slots, with system module 591832-xx
PLB 6206 PLB for HSCI, 6 slots, with system module 630054-xx
PLB 6208 PLB for HSCI, 8 slots, with system module 630055-xx
PLB 6104FS PLB for HSCI, 4 slots, functional safety 590479-xx
PLB 6204FS PLB for HSCI, 4 slots, with system module, functional safety 586789-xx
PLB 6206FS PLB for HSCI, 6 slots, with system module, functional safety 622721-xx
PLB 6208FS PLB for HSCI, 8 slots, with system module, functional safety 620927-xx
PLD-H 16-08-00 PL for PLB 6xxx: 16 digital inputs, 8 digital outputs 594243-xx
PLD-H 08-16-00 PL for PLB 6xxx: 8 digital inputs, 16 digital outputs 650891-xx
PLD-H 08-04-00 PL for PLB 6xxx FS: 8 digital inputs, 4 digital outputs, functional 598905-xx
FS safety
PLD-H 04-08-00 PL for PLB 6xxx FS: 4 digital inputs, 8 digital outputs, functional 727219-xx
FS safety
PLD-H 04-04-00 PL for PLB 6xxx FS, 4 digital inputs on channel A, 4 digital inputs on 746706-xx
HSLS FS channel B, 4 High Side digital outputs on channel B, 4 Low Side
digital outputs on channel A, Functional Safety
PLA-H 04-00-04 PL for PLB 6xxx, 4 x ±/- 10 V inputs, 0 analog outputs, 4 x PT 100 599070-xx
inputs
PLA-H 08-04-04 PL for PLB 6xxx, eight ±10 V inputs, four ±10 V analog outputs, 675572-xx
four PT 100 inputs
PL empty Empty housing for slots of a PL 6xxx 383022-11
housing

CMA-H 04-04-00 SPI expansion module for CC/UEC for analog axes/spindles for 688721-01
HSCI, 4 analog outputs ±10 V

HSCI cable HSCI connecting cable 618893-xx


HDL cable Connecting cable for connection to BF 625901-xx

Attention

In HSCI systems with integrated functional safety (FS) you may use only
devices that have been certified for use in such systems. For components
and devices permitted for use in systems with functional safety, please
refer to the Technical Manual for Functional Safety (FS). Upon request, your
contact partner at HEIDENHAIN can provide you with the manual.

January 2015 3.5 Overview of components 267


If you want to design the control system in accordance with the new standard
ISO 13849-1, you need the corresponding validation values of the individual
control components for calculating the required performance level. This also
applies to the inverters and power supply modules used in a system with HSCI
but without integrated functional safety (FS). Only devices whose index or
version number is greater than or equal to the device version numbers listed
below in the right column are permitted for use in accordance with ISO 13849-
1. The devices listed in the middle column can also be used.
Below you will find an overview of the devices that—according to ISO 13849-
1— are permitted for use:

Device designation Device ID for systems Device ID for systems


with integrated FS without integrated FS
Inverter modules
UM 117DW 689572-01
UM 116D 667954-01 542998-01
UM 116DW 667946-01 369629-01 index B
UM 115D 671566-01 387852-01 index E
UM 114D 671288-01 510509-01 index E
UM 113D 730435-01 518703-01 index B
UM 112D 731984-01 519971-01 index C
UM 122D 667633-01 519972-01 index C
UM 121BD 667942-01 513037-01 index C
UM 111BD 671968-01 513035-01 index E
UM 121D 667838-01 392319-01 index F
UM 111D 667945-01 392318-01 index F
Power supply modules
UVR 120D 728252-01 390188-01 index K
UV 130D 728250-01 389311-01 index E
UVR 130D 728248-01 377639-01 index K
UVR 140D 728253-01 390281-01 index N
UVR 150D 728255-01 390421-01 index P
UVR 160D 728257-01 530341-01 index G
UVR 160DW 728258-01 560106-01 index G
UVR 170DW 546911-02
UVR 170D 807429-01
Non-regenerative compact inverter
UE 210D 733421-01 558302-01 index C
UE 211D 733423-01 558303-01 index C
UE 212D 733424-01 558304-01 index C
UE 230D 733425-01 558305-01
UE 240D 733426-01 558306-01
UE 241D 733427-01 558307-01
UE 242D 733428-01 558308-01
UEC 111(FS) 1075825-01 625777-xx
UEC 112(FS) 1075826-01 625779-xx

268 HEIDENHAIN Technical Manual TNC 640


Device designation Device ID for systems Device ID for systems
with integrated FS without integrated FS
UEC 113(FS) 1038694-01 828471-xx
UMC 111 (FS) 664231-02 736435-xx
Regenerative compact inverter
UR 242D 741359-01 536565-01 index A
UR 230D 741356-01 536561-01 index A
UR 240D 741357-01 536564-01 index B

With the following HSCI control components, you must also make a
distinction between those that are required in a system with functional safety
and those that can be used in a system without functional safety. Devices with
FS are listed below in the middle column:

Device designation Device ID for systems Device ID for systems


with integrated FS without integrated FS
Machine operating panels and keyboard units
In systems with FS you must use a machine operating panel for functional-
safety applications. In these operating panels, all keys have twin channels. A
movement can therefore be executed without additional permissive button/
key.
MB 720(FS) 805474-xx 784803-xx
TE 735(FS) 805493-xx 771898-xx
TE 745(FS) 805482-xx 679817-xx
PLB basic modules
In FS systems, mixed use of PLB basic modules with and without FS is
possible. However, at least one PLB 62xx FS must be used in systems with
FS.
PLB 6104 (FS) 590479-xx 591828-xx
PLB 6106 (FS) 804755-xx 630058-xx
PLB 6108 (FS) 804756-xx 630059-xx
PLB 6204 (FS) 586789-xx 591832-xx
PLB 6206 (FS) 622721-xx 630054-xx
PLB 6208 (FS) 620927-xx 630055-xx
PLB 6001 (FS) 722083-xx 668792-xx
PLD-H I/O modules
In systems with FS, the mixed use of PLD-H modules with and without FS is
possible in PLB basic modules with FS. However, do not insert PLD-H
modules with FS in PLB basic modules without FS. Furthermore, the
modules with FS must always be inserted into the PLB with FS starting from
the left. In a PLB 6xxxFS, a maximum of four PLD-H modules can be used for
FS.
PLD-H 16-08-00, 598905-xx 594243-xx
PLD-H 08-04-00 FS
PLD-H 08-16-00, 727219-xx 650891-xx
PLD-H 04-08-00 FS

January 2015 3.5 Overview of components 269


Device designation Device ID for systems Device ID for systems
with integrated FS without integrated FS
Handwheels
In FS systems, handwheels with cross-circuit proof permissive buttons must
be used. Handwheels for which this has been implemented are identified
with FS.
HR 410(FS) 337159-xx, 296469-xx,
578114-xx (with detent) 535220-xx (with detent)
HR 520(FS) 670304-xx, 670302-xx,
670305-xx (with detent) 670303-xx (with detent)
HR 550FS 598515-02, ---
606622-02 (with detent)

The other control components, e.g. MC 6xxx or MC 7xxx, IPC xxxx, CC 6xxx,
PSL 13x, MS 1xx, BF 7xx, can be used regardless of whether the system is a
system with or without FS.

Attention

In HSCI systems with integrated functional safety (FS) you may use only
devices that have been certified for use in such systems. For components
and devices permitted for use in systems with functional safety, please
refer to the Technical Manual for Functional Safety (FS). Upon request, your
contact partner at HEIDENHAIN can provide you with the manual.

270 HEIDENHAIN Technical Manual TNC 640


3.6 HSCI

3.6.1 Introduction
The HSCI (HEIDENHAIN Serial Controller Interface) connects the main
computer to the controller units (CC or UxC) and the PLB 6xxx PLC basic
modules in the electrical cabinet. The MB machine operating panel is also
connected via HSCI. The connection of the various control components via
HSCI offers numerous benefits, including:
 Simple and uncomplicated wiring
 High noise immunity
 Comprehensive yet straightforward possibilities for diagnostics
The logic area of the control system is supplied with power via two separate
power loops:
 The power supply of MC, IPC, MB, PL's and BF is via the PSL 130 power
supply unit. Voltages of the PSL 130 comply with the PELV system
according to EN 61800-5-1.
 The logic voltages of the CC are voltages derived from the DC-link voltage
of the inverters, and are transmitted via connector X69 "NC supply voltages
and control signals." These voltages also correspond to the PELV system as
per EN 61800-5-1.
The following table shows the maximum permissible number of individual
HSCI participants:

HSCI component Maximum number

MC 1 in the system
(HSCI master)

CC, UEC, UMC 4 drive-control motherboards,


(HSCI slave) (distributed to CC, UEC, UMC as desired)

MB (FS), 2 in the system


PLB 6001 (FS)
(HSCI slave)

PLB 61xx (FS), 7 in the system


PLB 62xx (FS)
(HSCI slave)

HR (FS) handwheel 1 in the system


(on MB (FS) or
PLB 6001)

PLD-H xx-xx FS 10 in the system Total number of


(in PLB 6xxx FS) 1000 I/Os must not
be exceeded in this
PLD-H xx-xx, 25 in the system case
PLA-H xx-xx
(in PLB 6xxx FS)

January 2015 3.6 HSCI 271


Danger

When using several operating stations or machine operating panels, ensure


via the PLC program of the machine that only one operating option is active
at a time! Danger to the safety of the operator!

Note

13 HSCI slaves are permitted. This is the maximum number monitored by


the control. If this number is exceeded, an error message will be issued.

The order of the HSCI participants at X500 of the main computer can be freely
chosen. Each HSCI participant is assigned its HSCI address based on its
position in the HSCI chain:
• 1st device after the master (main computer): bus address 1
• 2nd device after the master (main computer): bus address 2 etc.
The main computer selects a master controller unit, based on the position of
the controller units in the HSCI network. The first controller unit in the system
(nearest the main computer) becomes the master controller unit.

272 HEIDENHAIN Technical Manual TNC 640


PLC module Module 9132 Selection of override potentiometer
In a control system with more than one HSCI machine operating panel or
keyboard unit, you can use Module 9132 to define which override
potentiometers are to be active. The potentiometer values of the selected
operating panel or keyboard unit are used to calculate the override.
The activation can take place either immediately or can be delayed specifically
for each override, as long as the newly selected potentiometer returns a
greater value than the previously selected potentiometer. Additionally,
assignments can be defined which are activated by the run-time system if
control is passed to or from an HR 5xx handwheel. If in both modes the
assignment is marked with the index –1, the assignments are not changed
when control is passed. If more than one assignment is defined and Module
9132 does not specify a selection, the assignment with index 1 is activated
when control is passed to the handwheel, and the assignment with index 0 is
activated when the handwheel passes control back.

Danger

If you use more than one operating station or machine operating panel, the
PLC program must ensure that only one of the two operating devices is
active at any one time so as to avoid danger to the operator.

Constraints:
 An assignment of operating panels is selected; this assignment results from
the transferred index for the "source" list of the
CfgPlcOverrideF, CfgPlcOverrideR and CfgPlcOverrideS configuration data.
 The numbering of the machine operating panels starts with 0 and is based
on the arrangement or sequence in the IOC configuration or the HSCI chain.
A machine operating panel or PLB 6001 at connector X501 of the MC always
receives the last, i.e. the highest number of the machine operating panels in
the HSCI system.
 After the control has been restarted and the PLC has been restarted/
compiled, the potentiometers on the machine operating panel with the
number 0 or the assignment with the number 0 are active (first operating
panel in the chain).
If you want the previously active operating panel to be active again, the PLC
program must write the corresponding information to the nonvolatile
memory and evaluate it during a restart of the PLC. To be safe,
HEIDENHAIN recommends setting the override values to 0 for the time the
PLC program takes (PLC words PP_ChnRapidFeedOverride,
PP_SpiOverride and PP_ChnFeedOverride).
 There is no basic switchover of operation between the machine operating
panels or the keyboard units. Only the evaluation of the potentiometers is
switched.

January 2015 3.6 HSCI 273


Call:
PS K/B/W/D <Number of machine operating panel or assignment>
0...n
PS K/B/W/D <Mode>
0: Selection of the active assignment, takes effect
immediately
1: Selection of the active assignment, takes effect if
override value smaller
2: Selection of the assignment if an HR 5xx handwheel is
deactivated
3: Selection of the assignment if an HR 5xx handwheel is
activated
PS K/B/W/D <Reserved>
CM 9132
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode 2 Programmed MB machine operating panel or
programmed assignment not found
47 Selection of a machine operating panel was not
entered in the control's log

274 HEIDENHAIN Technical Manual TNC 640


3.6.2 Topology
The HSCI slaves are connected—in series—to connector X500 of the main
computer. Connector X502 is always the HSCI input to the HSCI slaves and
X500 the HSCI output to the next HSCI slave.
The nonsynchronized second HSCI output X501 of the MC can be used to
connect a machine operating panel or a PLB 6001. However, do not connect
any devices other than a machine operating panel or a PLB 6001 to X501 (no
other or further HSCI components).
The HSCI components are connected via special shielded HSCI cables
adapted for the increased demands of machine tool environments.
Terminating resistors are not required in the HSCI system.
The HSCI network is to be structured as an "open" ring (line structure).
Connector X500 (or X501) on the main computer is the beginning of the HSCI
network. The HSCI connection is then led to X502 of the next HSCI participant
(CC, UxC, PL or MB), where X500 again serves as the output for continuing
the HSCI network to the next participant (X502). The last HSCI participant in
the ring detects its position automatically (X500 remains open) and internally
and independently closes the ring of the HSCI network.

Note

A star configuration of the HSCI network (e.g. by using a hub) is not


possible.

You start from connector X500 or X501 and refer to this as an HSCI segment.
The first HSCI segment extends from X500 of the MC to the last HSCI
component connected to X500 of the MC. The second HSCI segment extends
from X501 of the MC to the machine operating panel or a PLB 6001. The total
length of all HSCI cables must not exceed 70 m within one HSCI segment.
There is no need to consider an additional length limitation for individual cables
within the length of 70 m.

Note

The maximum permissible total length of HSCI cables within one HSCI
segment is 70 m.

January 2015 3.6 HSCI 275


3.6.3 HSCI interface
Face of the connector:

X500 Pin layout:


X501
The order of the HSCI participants at X500 of the MC or IPC is freely
X502
selectable. Each HSCI participant is assigned its HSCI address based on its
position in the HSCI chain, see page 275.
Pin layout of the HSCI cable:

ID 618893-xx
Female Color Assignment Female
1 White/Green Data 1
2 Green Data 2
3 White/Orange Data 3
4 Vacant Vacant 4
5 Vacant Vacant 5
6 Orange Data 6
7 Vacant Vacant 7
8 Vacant Vacant 8

276 HEIDENHAIN Technical Manual TNC 640


3.7 TNC 640 connection overview

3.7.1 Designation of the MC and IPC main computer units

MC xxxx
System Processor Mechanical design Memory medium
6 = HSCI 1 = Intel Celeron, 1 = Operating panel, 0 = CompactFlash
1 GHz or 400 MHz compact (CFR or CFast)
7 = Main 2 = Intel Pentium M, 2 = Operating panel, 1 = Hard disk
computer in 1.8 GHz modular (HDR)
operating panel,
3 = Intel Core Duo, 4 = Electrical cabinet 2 = SolidStateDisk
new stainless-
2.26 GHz (SSDR)
steel design,
HSCI 4 = Intel Celeron 1047 CPU, 5 = Electrical cabinet or
dual-core, 1.4 GHz operating panel
5 = Intel Core i7-3 CPU, dual-
core, 1.7 GHz
6 = Intel Core i7-3 CPU,
quad-core, 2.1 GHz

January 2015 3.7 TNC 640 connection overview 277


3.7.2 MC 7522

MC 7522: Main computer for installation in the operating panel, integrated display, HSCI interface
Pin layout Connector Function Page
X26, X116 Ethernet data interface 415
X29 Reserved –
X27 RS-232-C/V.24 data interface 417
X X141, X142, USB 3.0 interface (Type A) 418
X143, X144
X101 +24 V NC power supply 309
X29
X116 X500 HSCI output 1 276
+24V
0V (synchronized) to CC, PL,
X101 X125
X27 MB
X141 X142
X601
(not with MC 6x5x)
X26

X116 X501 HSCI output 2, only to MB or


X143 X144 PLB 6001
X500
X501
(not with MC 6x5x)
X600 Reserved –
X600
X601 Reserved –
Slot Optional field bus module 372
X121
X125 SIK (System Identification –
X Key)
X3 Connection for screen soft –
keys
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

278 HEIDENHAIN Technical Manual TNC 640


3.7.3 MC 6241

MC 6241: Main computer for installation in electrical cabinet


Pin layout Connector Function Page
X26, X116 Ethernet data interface 415
X29 Reserved –
X27 RS-232-C/V.24 data interface 417
X141, X142 USB 2.0 interface (Type A) 418
X101 +24 V NC power supply 309
X500 HSCI output 1 276
(synchronized) to CC, PL,
MB
(not with MC 6x5x)
X29 X501 HSCI output 2, only to MB or
+24V
X101
0V PLB 6001
X27 (not with MC 6x5x)
X116 X142
X141 X26 X600 Reserved –

X125 X500 X249 HDL interface for visual 419


X501
display unit
X601
X121 MC 6x4x: PROFIBUS 372
(option)
X600 X249

X125 SIK (System Identification –


X121 Key)
X601 Reserved –
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 279


3.7.4 MC 6242

MC 6242: Main computer for integration in the operating panel or electrical cabinet
Pin layout Connector Function Page
X26, X116 Ethernet data interface 415
X29 Reserved –
X27 RS-232-C/V.24 data interface 417
X141, X142 USB 2.0 interface (Type A) 418

X29 X101 X101 +24 V NC power supply 309


24V
0V X500 HSCI output 1 276
X27 (synchronized) to CC, PL,
X142
MB (not with MC 6x5x)
X141 X26 X501 HSCI output 2, only to MB or
X702 PLB 6001
X500
(not with MC 6x5x)
X501
X28 X600 Reserved –
X600
X249 X249 HDL interface for visual 419
display unit
X601 X121 MC 6x4x: PROFIBUS 372
(option)
X125
X121 X125 SIK (System Identification –
Key)
X116
X601, X28, Reserved –
X702
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

Note

With integration of the MC 6242 into the operating panel, special


integration conditions must be observed, see page 253.

280 HEIDENHAIN Technical Manual TNC 640


3.7.5 MC 6341

MC 6341: Main computer for installation in electrical cabinet


Pin layout Connector Function Page
X26, X116 Ethernet data interface 415
X29 Reserved –
X27 RS-232-C/V.24 data interface 417
X141, X142, USB 2.0 interface (Type A) 418
X143, X144
X101 +24 V NC power supply 309
X500 HSCI output 1 (synchronized) 276
to CC, PL, MB
(not with MC 6x5x)
X29 X501 HSCI output 2, only to MB or
+24V
0V PLB 6001
X101
X27 (not with MC 6x5x)
X144
X143 X116 X600 Reserved –
X141 X26 X249 HDL interface for visual 419
X125 X142
X500 display unit
X501
X601 X121 MC 6x4x: PROFIBUS 372
(option)
X600 X249

X125 SIK (System Identification –


X121 Key)
X601 Reserved –
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 281


3.7.6 MC 6542

MC 6542: Main computer for integration in the operating panel or electrical cabinet
Pin layout Connector Function Page
X26, X116 Ethernet data interface 415
X29 Reserved –
X27 RS-232-C/V.24 data interface 417
X141, X142 USB 3.0 interface (Type A) 418
X143, X144
X29 X101 +24 V NC power supply 309
+24V
X101
0V X500 HSCI output 1 276
X27 (synchronized) to CC, PL,
X142 MB (not with MC 6x5x)
X141 X26
X501 HSCI output 2, only to MB or
X143 X116 PLB 6001
X144
X125 (not with MC 6x5x)
X500
X501 X600 Reserved –
X601
X249 HDL interface for visual 419
X600 X249 display unit
Slot Optional PROFIBUS module 372

X121
X125 SIK (System Identification –
Key)
X601, X28, Reserved –
X702
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

Note

With integration of the MC 6542 into the operating panel, special


integration conditions must be observed, see page 253.

282 HEIDENHAIN Technical Manual TNC 640


3.7.7 MC 6541, MC 6641

MC 6541, MC 6641: Main computer for installation in electrical cabinet


Pin layout Connector Function Page
X26, X116 Ethernet data interface 415
X29 Reserved –
X27 RS-232-C/V.24 data interface 417
X141, X142, USB 3.0 interface (Type A) 418
X143, X144
X101 +24 V NC power supply 309
X500 HSCI output 1 276
(synchronized) to CC, PL,
MB (not with MC 6x5x)
X29 X501 HSCI output 2, only to MB or
+24V
X101
0V PLB 6001
X27 (not with MC 6x5x)
X142
X141 X26 X600 Reserved –

X125
X143
X144
X116 X249 HDL interface for visual 419
X500 display unit
X601 X501
Slot Optional PROFIBUS module 372
X600 X249 X125 SIK (System Identification –
Key)
X601 Reserved –
X121
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 283


3.7.8 IPC 6641

IPC 6641: Industrial PC for installation in electrical cabinet


Pin layout Connector Function
X29 Reserved –
X26, X116 Ethernet data interface 415
X27 RS-232-C/V.24 data interface 417
X141, X142, USB 3.0 interface (Type A) 285
X143, X144
X101 +24 V NC power supply 309
X500 Reserved –
X501 Reserved –
X600 Reserved –
X29
+24V
0V X249 VGA interface for monitor 285
X101
X27
X121 Reserved –
X142
X141 X26

X125
X143 X116 X125 Reserved –
X144
X601 Reserved –
X601
€ Protective ground –
X600 X249

X121

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

Note

Apart from that, the same operating conditions apply as for the MC 6xxx
main computer units.

284 HEIDENHAIN Technical Manual TNC 640


X249: For commissioning and maintenance purposes, a VGA monitor with a
resolution of 1280 x 1024 pixels can be connected to X249.

X141 to X144: For commissioning and maintenance purposes, USB devices (for example
mouse and keyboards) can be attached to connectors X141 to X144.
Pin layout on USB 3.0 connection (type A):

USB connection (female) 4-pin Assignment


1 +5 V
2 USBP–
3 USBP+
4 GND

January 2015 3.7 TNC 640 connection overview 285


3.7.9 Industrial Thin Client ITC 755

ITC 755; additional operating station with touch screen and ASCII keyboard
Connection overview Connector Function Page
X26 Ethernet data interface 415
X600 Reserved, do not assign –
X141, USB interface (USB 2.0) 418
X142, X143
X144, Reserved, do not assign –
X600 X145, X146
X26 X101 Power supply for NC, 24 V– 309
X141
X142 X143 X1 Reserved, do not assign –
X144 X146
X145
€ Protective ground –

+24V
0V X101

X1

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

286 HEIDENHAIN Technical Manual TNC 640


3.7.10 Industrial Thin Client ITC 750

ITC 750; additional operating station with soft keys, 15-inch


Connection overview Connector Function Page
X26 Ethernet data interface 415
X600 Reserved, do not assign –
X141, USB interface (USB 2.0) 418
X142,
X143,
X144,
X145
X146 Reserved, do not assign –
X600
X101 Power supply for NC, 24 V– 309
X26 € Protective ground –
X141
X142 X143
X144 X146
X145

+24V
0V X101

X3

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 287


3.7.11 Industrial Thin Client ITC 760

ITC 760; additional operating station with soft keys, 19-inch


Connection overview Connector Function Page
X26 Ethernet data interface 415
X600 Reserved, do not assign –
X141, USB interface (USB 2.0) 418
X142,
X143,
X144,
X145,
X146
X101 Power supply for NC, 24 V– 309
X600
€ Protective ground –
X26
X141 X143
X142
X144 X146
X145

+24V
0V X101

X3

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

288 HEIDENHAIN Technical Manual TNC 640


3.7.12 Model numbers for the CC controller units

CC xxxx
System Processor Number of control loops
6 = HSCI 1 = DSP, e.g.
500 MHz or 600 MHz 06 = 6 control loops

3.7.13 CC 6106

CC 6106, controller unit with 6 control loops and HSCI interface


Pin layout Connector Function Page
X15 to X20 Speed encoder 401
X51 to X56 PWM output 407
X15 X19
X69 Supply bus 311
X17
X201 to X206 Position encoder 398
X16 X20
X500 HSCI output 276
X18 X502 HSCI input
X51 X55 – SPI slot 1 (on bottom, –
reserved for expansion
X53
modules)
X52 X56 – SPI slot 2 (on bottom, –
reserved for expansion
X54
modules)

X74
X74 + 5 V supply 314
5V
X7 Bridge for signal ground 315
0V
(= functional ground)
X69 (on bottom)
X201 X205 € Protective ground –
X203
X500
X502 X202 X206

X204

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 289


3.7.14 CC 6108

CC 6108 controller unit with 8 control loops and HSCI interface


Pin layout Connector Function Page
X15A - X18A Speed encoder 401
Drive-control motherboard A
X15A X15B X15B - X18B Speed encoder
Drive-control motherboard B
X17A X17B
X51A - X54A PWM output 407
X16A X16B Drive-control motherboard A
X18A X18B X51B - X54B PWM output
Drive-control motherboard B
X51A X51B
X69A Supply bus 311
X53A X53B Drive-control motherboard A
X52A X52B X69B Supply bus
Drive-control motherboard B
X54A X54B
X201A - X204A Position encoder 398
X74
Drive-control motherboard A
5V
X201B - X204B Position encoder
0V Drive-control motherboard B
X69A X69B
X500A HSCI output 276
X201A X201B Drive-control motherboard A
X203A X203B
X500A X500B
X502A HSCI input
X502A X502B X202A X202B Drive-control motherboard A
X204A X204B
X500B HSCI output
Drive-control motherboard B
X502B HSCI input
Drive-control motherboard B
X74 + 5 V supply 314
– SPI slot 1 (on bottom, –
reserved for expansion
modules)
– SPI slot 2 (on bottom, –
reserved for expansion
modules)
X7 Bridge for signal ground 315
(= functional ground)
(on bottom)
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

290 HEIDENHAIN Technical Manual TNC 640


3.7.15 CC 6110

CC 6110 controller unit with 10 control loops and HSCI interface


Pin layout Connector Function Page
X15A - X18A Speed encoder 401
Drive-control motherboard A
X15A X15B X19B X15B - X20B Speed encoder
Drive-control motherboard B
X17A X17B
X51A - X54A PWM output 407
X16A X16B X20B Drive-control motherboard A
X18A X18B X51B - X56B PWM output
Drive-control motherboard B
X51A X51B X55B
X69A Supply bus 311
X53A X53B Drive-control motherboard A
X52A X52B X56B X69B Supply bus
Drive-control motherboard B
X54A X54B
X201A - X204A Position encoder 398
X74
Drive-control motherboard A
5V
X201B - X206B Position encoder
0V Drive-control motherboard B
X69A X69B
X500A HSCI output 276
X201A X201B X205B Drive-control motherboard A
X203A X203B
X500A X500B
X502A HSCI input
X502A X502B X202A X202B X206B Drive-control motherboard A
X204A X204B
X500B HSCI output
Drive-control motherboard B
X502B HSCI input
Drive-control motherboard B
X74 + 5 V supply 314
– SPI slot 1 (on bottom, –
reserved for expansion
modules)
– SPI slot 2 (on bottom, –
reserved for expansion
modules)
X7 Bridge for signal ground 315
(= functional ground)
(on bottom)
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 291


3.7.16 UMC 111FS

UMC 111FS: Compact controller unit with inverter, external DC-link power supply, PLC I/Os and
functional safety (FS)
Pin layout Connector Function Page
X4, X5 Single-channel PLC inputs 363
X6 Single-channel PLC outputs 367
X15 to X18 Speed encoder 401
X33 DC-link power supply 335
X81 Motor connection, axis 1 334
(9 A rated current at 3.3 kHz)
X82 Motor connection, axis 2
(9 A rated current at 3.3 kHz)
X83 Motor connection, axis 3
(9 A rated current at 3.3 kHz)
X84 Motor connection, axis 4
(9 A rated current at 3.3 kHz)
X103 +24 V power supply 335
X104 Single/dual-channel PLC 365
inputs
X20 X106 Single/dual-channel PLC 368
X206
outputs
X205 X112 Reserved (do not use) –
X113 Reserved (do not use) –
X201 to X205 No position encoder inputs –
(not assigned, reserved)
X204
X344 +24 V supply for motor 335
X203
holding brake
X394 Motor holding brake 1 to 4 336
X500 HSCI output 276
X502 HSCI input
Shield for DC-link 335
B Signal ground –
(= functional ground)
€ Protective ground M5 –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

292 HEIDENHAIN Technical Manual TNC 640


3.7.17 UMC 111

UMC 111: Compact controller unit with inverter, external DC-link power supply, PLC I/Os
Pin layout Connector Function Page
X4, X5 Single-channel PLC inputs 363
X6 Single-channel PLC outputs 366
X15 to X18 Speed encoder 401
X33 DC-link power supply 335
X81 Motor connection, axis 1 334
(9 A rated current at 3.3 kHz)
X82 Motor connection, axis 2
(9 A rated current at 3.3 kHz)
X83 Motor connection, axis 3
(9 A rated current at 3.3 kHz)
X84 Motor connection, axis 4
(9 A rated current at 3.3 kHz)
X103 +24 V power supply 335
X112 Reserved (do not use) –
X113 Reserved (do not use) –
X20
X206
X201 to X205 No position encoder inputs –
(not assigned, reserved)
X205 X344 +24 V supply for motor 335
holding brake
X394 Motor holding brake 1 to 4 336
X500 HSCI output 276
X204
X502 HSCI input
X203
B Signal ground –
(= functional ground)
€ Protective ground M5 –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 293


3.7.18 UEC 11x

UEC 11x: Compact controller unit with integrated inverter and PLC I/Os
(without functional safety FS) with ID 625777-xx, 625779-xx
Pin layout Connector Function Page
X4, X5 PLC inputs 363
X6 PLC outputs 366
X15 to X19 Speed encoder 401
X344

X394
X89 X90 X31 Supply voltage for UEC 11x 339
(3 x 400 V ± 10 %)
X71 Safety relay for spindle 341
(pulse inhibitor for spindle)
X72 Safety relay for axes (pulse
inhibitor for axes)
X80 Motor connection for spindle 341
(24 A rated current at 3.3 kHz)
X81 Motor connection, axis 1
X20 (6 A rated current at 3.3 kHz)
X5
X82 Motor connection, axis 2
X19
X4 (6 A rated current at 3.3 kHz)
X84
X83 Motor connection, axis 3
X18
X83
X206
(9 A rated current at 3.3 kHz)
X17 X84 Motor connection, axis 4
X82 X205
(6 A rated current at 3.3 kHz)
X204
X81 X16 X89 Braking resistor 342

X80
X203
X15
X90 +24 V NC output / 3.5 A 342
X202 X112 TS touch trigger probe 413
X113

X72 X71
X201
X112
X113 TT touch trigger probe
X201 to X205 Position encoder 398
X344 +24 V supply for motor 343
holding brake
X394 Motor holding brake 1 to 4 343
X500 HSCI output 276
X502 HSCI input
X502
€ Protective ground M5 –
X500

X6

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

294 HEIDENHAIN Technical Manual TNC 640


3.7.19 UEC 113 with DC-link connection

UEC 113: Compact controller unit with integrated inverter and PLC I/Os
(without functional safety FS) with ID 828471-xx
Pin layout Connector Function Page
X4, X5 PLC inputs 363
X6 PLC outputs 366
X344 X15 to X20 Speed encoder 401
X89
X394
X90 X31 Supply voltage for UEC 11x 339
(3 x 400 V ± 10 %)
X71 Safety relay for spindle 341
(pulse inhibitor for spindle)
X72 Safety relay for axes (pulse
X85 inhibitor for axes)
X394
X80 Motor connection, spindle 341
(24 A rated current at 3.3 kHz)

X87
X81 Motor connection, axis 1
(6 A rated current at 3.3 kHz)
X5
X82 Motor connection, axis 2
X84
X4 (6 A rated current at 3.3 kHz)

X18
X83 Motor connection, axis 3
X83 (9 A rated current at 3.3 kHz)
X20 X206

X82
X17 X84 Motor connection, axis 4
X205 (6 A rated current at 3.3 kHz)
X19
X16
X81 X85 Motor connection, axis 5
(6 A rated current at 3.3 kHz)
X80 X15
X202 X87 DC-link connection for 342
X204
X113 PSL 13x
X201
X72 X71 X203 X112 X89 Braking resistor 342
X90 +24 V NC output / 3.5 A 342
X112 TS touch trigger probe 413
X113 TT touch trigger probe
X201 to X206 Position encoder 398
X344 +24 V supply for motor 343
holding brake
X502
X31
X500
X394 Motor holding brake 1 to 5 343
X500 HSCI output 276
X6
X502 HSCI input
€ Protective ground M5 –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.7 TNC 640 connection overview 295


3.7.20 UEC 11xFS with DC-link connection

UEC 11xFS: Compact controller unit with integrated inverter and PLC I/Os
(with functional safety FS) with ID 1075825-xx, ID 1075826-xx, 1038694-xx
Pin layout Connector Function Page
X4, X5 PLC inputs 363
X6 PLC outputs 367
X344 X15 to X20 Speed encoder 401
X89
X394
X90 X31 Supply voltage for UEC 11x 339
(3 x 400 V ± 10 %)
X71 Safety relay for spindle 341
(pulse inhibitor for spindle)
X72 Safety relay for axes (pulse
X85 inhibitor for axes)
X394
X80 Motor connection, spindle 341
(24 A rated current at 3.3 kHz)
X81, X82, Motor connection, axis 1, 2,
X87
X84, X85 4 and 5 (6 A rated current at
X5
X106 3.3 kHz)

X84 X104
X4 X83 Motor connection, axis 3
(9 A rated current at 3.3 kHz)
X18
X83 X87 DC-link connection for 342
X20 X206
PSL 130
X17
X82
X19
X205 X89 Braking resistor 342
X16
X81 X90 +24 V NC output / 3.5 A 342

X80 X15
X104 Single/dual-channel PLC 365
X202 inputs
X204
X113
X201 X106 Single/dual-channel PLC 368
X72 X71 X203 X112 outputs
X112 TS touch trigger probe 413
X113 TT touch trigger probe
X201 to X206 Position encoder 398
X344 +24 V supply for motor 343
holding brake
X394 Motor holding brake 1 to 4 343
X502
X31
X500
X500 HSCI output 276
X502 HSCI input
X6
€ Protective ground M5 –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

296 HEIDENHAIN Technical Manual TNC 640


3.7.21 PLB 62xx

System module
Pin layout Connector Function Page
X500 HSCI output 276
X502 HSCI input
X9 Safety-related PLC inputs/outputs 356
X2 Reserved –
X3 + 24 V NC, + 24 V PLC power supply 348
X112 TS or TT touch trigger probe 413
X113 TS or TT touch trigger probe
Diagnosis: For meanings of the LEDs, see page 349

3.7.22 PLB 62xx FS

System module
Pin layout Connector Function Page
X500 HSCI output 276
X9 X502 HSCI input
X500
X9 Safety-related PLC inputs/outputs 357
X502
X2 Reserved –
X3 + 24 V NC, + 24 V PLC power supply 348
X112 TS or TT touch trigger probe 413
X112 X113 TS or TT touch trigger probe
X2
On the PL 62xx FS, the I/O terminals of connector X9 are dual-channel
terminals and can therefore be used for safety-related applications.
In the PLB 6xxx FS, only PLD-H FS (functional safety) can be used.
X113
A PLD-H FS must not be inserted after a PLD-H without FS, or after an
X3 empty slot. PLD-H FS must be inserted—one after the other—into
successive slots without interruption (empty slot). Only after all PLD-H FS
have been inserted can PLD-H without FS or PLA-H be inserted. In a PLB
6xxxFS, a maximum of four PLD-H modules can be used for FS.
Diagnosis: For meanings of the LEDs, see page 349

January 2015 3.7 TNC 640 connection overview 297


3.7.23 PLB 61xx

Expansion module
Pin layout Connector Function Page
X500 HSCI output 276
X502 HSCI input
X2 Reserved –
X3 + 24 V NC, + 24 V PLC power supply 348
Diagnosis: For meanings of the LEDs, see page 349

3.7.24 PLB 61xx FS

Expansion module
Pin layout Connector Function Page
X500 HSCI output 276
X502 HSCI input
X500
X2 Reserved –
X502
X3 + 24 V NC, + 24 V PLC power supply 348
In the PLB 6xxx FS, only PLD-H FS (functional safety) can be used.
A PLD-H FS must not be inserted after a PLD-H without FS, or after an
empty slot. PLD-H FS must be inserted—one after the other—into
successive slots without interruption (empty slot). Only after all PLD-H FS
X2
have been inserted can PLD-H without FS or PLA-H be inserted. In a
PLB 6xxxFS, a maximum of four PLD-H modules can be used for FS.
Diagnosis: For meanings of the LEDs, see page 349

X3

298 HEIDENHAIN Technical Manual TNC 640


3.7.25 PLD-H and PLA-H I/O modules
Explanation for product coding:
PLX-H 11-22-33 HSLS FS
PL: Programmable Logic
X: A = Analog, D = Digital
H: For PLB module on the HSCI bus
11: Number of PLC inputs on the module
22: Number of PLC outputs on the module
33: Number of PLC special inputs and outputs on the module
HSLS: High Side, Low Side components
FS: The module is approved for functional safety

PLD-H 16-08-00
Pin layout Connector Function Page
X11 8 digital PLC inputs, channel A 358
X12 8 digital PLC inputs, channel A
X21 8 digital PLC outputs, channel A 360
X11
Diagnosis: (meaning of LEDs)
 Red (X11/pin 1) status LED
• Flashes: status of I/O module OK
• Continuously on or off: error on I/O module
X12
 Yellow (per output): Status of the output

Error recognition:
 Short circuit: A short circuit is reported when a current >= 20 A flows
X21 for approximately 3 ms. Both the output-specific message and the group
message are modal.
After the short circuit has been removed, the PLC must reset the output
before it can be activated again.

January 2015 3.7 TNC 640 connection overview 299


PLD-H 08-16-00
Pin layout Connector Function Page
X11 8 digital PLC inputs, channel A 358
X21 8 digital PLC outputs, channel A 360
X22 8 digital PLC outputs, channel A
X11
Diagnosis: (meaning of LEDs)
 Red (X11/pin 1) status LED
• Flashes: status of I/O module OK
• Continuously on or off: error on I/O module
X21
 Yellow (per output): Status of the output

Error recognition:
 Short circuit: A short circuit is reported when a current >= 20 A flows
X22 for approximately 3 ms. Both the output-specific message and the group
message are modal.
After the short circuit has been removed, the PLC must reset the output
before it can be activated again.

300 HEIDENHAIN Technical Manual TNC 640


PLD-H 08-04-00 FS
Pin layout Connector Function Page
X11 8 digital PLC inputs, channel A 358
Safety
X14 8 digital PLC inputs, channel B
X27 4 digital PLC outputs, channel A and B 360
X11
Diagnosis: (meaning of LEDs)
 Red (X11/pin 1) status LED
• Flashes: status of I/O module OK
• Continuously on or off: error on I/O module
X14
 Yellow (per output): Status of the output

Error recognition:
 Short circuit: A short circuit is reported when a current >= 20 A flows
X27 for approximately 3 ms. Both the output-specific message and the group
message are modal.
After the short circuit has been removed, the PLC must reset the output
before it can be activated again.

Use:
 PLD-Hs for functional safety (FS) can be used only in the PLB 6xxx FS. A
safety-related PLD must not be inserted after a PLD without FS, or after
an empty slot. Safety-related PLDs must be inserted—one after the
other—into successive slots without interruption (empty slot). The
normal PLDs or PLAs must not be inserted until all PLDs with FS have
been inserted.

January 2015 3.7 TNC 640 connection overview 301


PLD-H 04-08-00 FS
Pin layout Connector Function Page
X17 4 digital PLC inputs, channel A and B 358
Safety
X21 8 digital PLC outputs, channel A 360
X24 8 digital PLC outputs, channel B
X17
Diagnosis: (meaning of LEDs)
 Red (X11/pin 1) status LED
• Flashes: status of I/O module OK
• Continuously on or off: error on I/O module
X21
 Yellow (per output): Status of the output

Error recognition:
 Short circuit: A short circuit is reported when a current >= 20 A flows
X24 for approximately 3 ms. Both the output-specific message and the group
message are modal.
After the short circuit has been removed, the PLC must reset the output
before it can be activated again.

Use:
 PLD-Hs for functional safety (FS) can be used only in the PLB 6xxx FS. A
safety-related PLD must not be inserted after a PLD without FS, or after
an empty slot. Safety-related PLDs must be inserted—one after the
other—into successive slots without interruption (empty slot). The
normal PLDs or PLAs must not be inserted until all PLDs with FS have
been inserted.

302 HEIDENHAIN Technical Manual TNC 640


PLD-H 04-04-00 HSLS FS
Pin layout Connector Function Page
X17 4 digital PLC inputs, channel A and B 358
Safety
X94 4 digital PLC outputs as High Side channel B
X91 4 digital PLC outputs as High Side channel B 360
X17
HSLS module (High Side Switch, Low Side Switch)
Diagnosis: (meaning of LEDs)
 Red (X11/pin 1) status LED
• Flashes: status of I/O module OK
X21
• Continuously on or off: error on I/O module
 Yellow (per output): Status of the output

Error recognition:
X24
 Short circuit: A short circuit is reported when a current >= 20 A flows
for approximately 3 ms. Both the output-specific message and the group
message are modal.
After the short circuit has been removed, the PLC must reset the output
before it can be activated again.
 The High Side and Low Side switch combination (series connection:
High Side switch - device - Low Side switch) must not be loaded with
more than 2 A.

Use:
 PLD-Hs for functional safety (FS) can be used only in the PLB 6xxx FS. A
safety-related PLD must not be inserted after a PLD without FS, or after
an empty slot. Safety-related PLDs must be inserted—one after the
other—into successive slots without interruption (empty slot). The
normal PLDs or PLAs must not be inserted until all PLDs with FS have
been inserted. The High Side and Low Side switch combination (series
connection: High Side switch - device - Low Side switch) must not be
loaded with more than 2 A.

January 2015 3.7 TNC 640 connection overview 303


PLA-H 08-04-04
Pin layout Connector Function Page
X66 ... X67 4 analog PLC outputs +/- 10 V 371
1a
X66
2a X46 ... X49 8 analog PLC inputs +/- 10 V 371
1c 2c
1a 2a X81 ... X82 4 analog PLC inputs Pt 100 371
X67
1c 2c
A maximum of two PLA-H-08-04-04 I/O modules can be used per
1a 2a PLB 6xxx.
X46
1c 2c
1a 2a
X47
1c 2c
1a 2a
X48
1c 2c
1a 2a
X49
1c 2c
1a 2a

X81
1e 2e
1a 2a

X82
1e 2e

304 HEIDENHAIN Technical Manual TNC 640


3.8 Supply voltages in the HSCI system
Two separate 24 V power supplies must be used to supply the +24 V power to
the individual control components in the HSCI system: +24 V NC and +24 V PLC.
HEIDENHAIN recommends using the DC-link buffered PSL 13x for supplying
power to the HSCI components, see "PSL 13x low-voltage power supply unit"
on page 316.
If you are using the UEC 11x, the main computer and other NC components
are usually supplied via the 24 V power supply unit of the UEC (connection
X90). A PSL 130 is not necessary if the total current consumption of the NC
supply of all HSCI components does not exceed 3.5 A.
External PL assemblies with HSCI (e.g. the PL 6xxx or the PL in the UxC 11x)
consist of an HSCI part (bus module and logic) and a PLC part (PLC input/
output assemblies). Due to the topology of the HSCI system, the 24 V NC
voltage supplied to the HSCI part must comply with the requirements for
double basic insulation according to EN 61800-5-1 (PELV). All other NC
components with HSCI interface (e.g. main computer and machine operating
panel) must also be supplied with 24 V NC voltage with double basic
insulation. The reason for the double basic insulation is electrical safety, e.g.
accessibility of connecting elements supplied with +24 V NC voltage.
PLC components, such as motor holding brakes and solenoid valves, usually
have simple basic insulation. The PLC part must therefore be powered by
another +24 V supply voltage. The two supply voltages must not be
connected to each other. The double basic insulation of the NC power supply
is removed through "mixed operation," i.e. +24 V NC voltage with double basic
insulation is connected to PLC components with simple basic insulation. This
is not permitted in an HSCI system.
The following components are powered by +24 V NC supply voltage:
 MC or IPC main computer unit
 BF 7xx TFT visual display unit
 MB 7xx(T) machine operating panel
 TE 7xx(T) keyboard unit
Protective Extra Low Voltage (PELV) according to EN 61800-5-1 must be
complied with by the power supply unit for the +24 V NC supply voltage.
The following components are powered by +24 V PLC supply voltage:
 PLB 6xxx input/output module
 UxC 1xx input/output module
 PLD-H digital plug-in module for PLB
 PLA-H analog plug-in module for PLB
 Motor holding brakes, further components in the PLC circuit

Note

HEIDENHAIN recommends also using a power supply unit complying with


Protective Extra Low Voltage (PELV) according to EN 61800-5-1 for the +24
V PLC power supply, although the circuit has only ELV status. In addition,
HEIDENHAIN recommends connecting the 0 V PLC supply voltage to
protective earth (PE). This is not strictly required according to the VDE
standards. However, it provides additional safety in the event of insulation
failure in the PLC circuit.

January 2015 3.8 Supply voltages in the HSCI system 305


The CC 6xxx controller unit is supplied by the X69 supply bus of the
HEIDENHAIN supply module and X74 (+5 V).

Danger

 The +24 V NC supply voltage (PELV system according to EN 61800-5-1)


is required to be safely separated voltage for the entire HSCI system and
must not be connected to the +24 V PLC supply voltage (ELV) of the
system.
 Protective Extra Low Voltage (PELV) according to EN 61800-5-1 must be
complied with for the +24 V NC power supply of the machine.
 VDE 0160/EN 50178 is to be observed for the +24 V NC voltage lines and
cable routing. Lines or cables for safely separated electric circuits thus
must have double or reinforced insulation between the wire and the
surface if they are routed without spatial separation from other cables
and lines.
 Due to the structure of the PLC area in the HSCI system, the +24 V PLC
supply voltage is a voltage with basic insulation (ELV as per EN 61800-5-1).
 The 0 V signal of the NC power supply must be connected by a 6 mm2
conductor to the machine's central functional ground (B).
 The 0 V signal of the PLC power supply must be connected by a 6 mm2
conductor to the machine's central protective ground (PE).

The signal ground is used for functional-equipotential bonding. The signal-


ground connections (B) of the HEIDENHAIN control components must be
connected to the central functional ground of the machine (minimum cross
section 6 mm2). The 0 V PLC and all of the protective-ground connections of
the HEIDENHAIN control components must be connected separately from the
signal-ground connections to the central protective ground (PE) of the machine
(minimum cross section 6 mm2). The central signal ground and the central
protective ground must be connected with each other for the machine! The
cross section of this conductor must be at least as large as the largest cross
section of the conductors for connecting the components used to protective
ground or functional ground.

Note

The line cross section of the +24 V NC power supply must be designed for
the power consumption of the connected devices. EN 60204-1 lists the
protection provided by line cross sections.
Minimum cross section of the +24 V NC power supply: 0.75 mm2

Note

The motor brakes are controlled by 24 V PLC voltage. The trigger circuit and
the brake itself are usually separated from the line power only by basic
insulation according to EN 618100-5-1 (also EN 50178). Also, other add-on
devices that are controlled by PLC circuits usually have only basic insulation
from the line power.

306 HEIDENHAIN Technical Manual TNC 640


3.8.1 Current consumption of the HSCI components
The following table shows the current consumption of the HSCI components
at 24 V NC:

HSCI component Current consumption


at 24 V DC

Main computer

MC 6240 / 6241 / 1.7 A


MC 6242

MC 6341 1.8 A

MC 6541 2.0 A

MC 6641 3.2 A

MC 7522 2.5 A

MC 6542 2.0 A

Machine operating PLB 6001 0.2 A (w/o handwheel)


panel
MB 7xx(T) 0.2 A (w/o handwheel)

MB 7xx(T) 1.0 A
(including all PLC
outputs)

Keyboard TE 7xx(T) 0.2 A (without


handwheel, without MB)

PLC inputs/outputs PLB 62xx 0.3 A (w/o touch probe)

PLB 62xx 0.5 A


(incl. TS and TT)

PLB 61xx 0.2 A

PLD 0.05 A

PLA 0.1 A

Visual display unit BF 760 2.5 A

BF 750 2.1 A

Handwheels HR 410 0.05 A

HR 520 0.05 A

HRA 551FS + 0.5 A (during charging)


HR 550FS

HR 130 0.05 A

HR 110 + 3 x HR 150 0.2 A

Touch probes See specifications of the touch probes

January 2015 3.8 Supply voltages in the HSCI system 307


3.8.2 X90: +24 V-NC output of the UxC 11x(FS)

Assignment

Connecting Assignment
terminal X90
+ or terminal 1 +24 V NC (max. 3.5 A)
– or terminal 2 0V

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Load capacity

Device Load capacity of 24 V NC supply (X90)


UEC 11x (FS) 3.5 A

Current Example: Typical TNC 620 configuration with UEC 11x


consumption of the
HSCI components Device Current consumption 24 V NC
MC 7410 2.2 A
MB 720 (including all PLC outputs) 1.0 A
PL 61xx 0.2 A
Total 3.4 A < 3.5 A

A PSL 130 unit is not needed for this application. The +24 V NC supply of the
UEC 11x (X90) suffices for the connected components.

308 HEIDENHAIN Technical Manual TNC 640


3.8.3 X101: NC power supply
The MC and IPC main computers are supplied with +24 V-NC (control voltage)
of the machine, for example by the PSL 130, see "PSL 13x low-voltage power
supply unit" on page 316 or by the integrated 24 V power supply unit of the
UEC 11x(FS).
Protective Extra Low Voltage (PELV) according to EN 61800-5-1 must be
complied with for the +24 V NC power supply.
Power supply: Minimum absolute value: +20.4 V–
Maximum absolute value +28.8 V–
Pin layout:

Connecting Assignment Fuse


terminals at X101
+ / terminal 1 +24 V NC 7 A safety fuse
integrated in the MC
– / terminal 2 0 V NC

Attention

Ensure that either the DC-link power supply unit is switched off or the line
power is disconnected before connecting the power cables!

Power consumption:

Device Power consumption


MC 6241 40 W
MC 6541, MC 6542 48 W
MC 6341, IPC 6341 43 W
MC 6641, IPC 6641 75 W
MC 7522 60 W
ITC 755 27 W
ITC 750 24 W
ITC 760 42 W

Note

If USB components that are connected to X141/X142 require more than 0.5
A, a separate power supply becomes necessary for these components.
One possibility is the USB hub from HEIDENHAIN (582884-02).

January 2015 3.8 Supply voltages in the HSCI system 309


3.8.4 Power supply of the CC 61xx
The CC 61xx controller unit is supplied with +5 V power by the power supply
units via supply bus X69 and connector X74, see page 311.
The control monitors the 5 V supply voltage. If it drops below 4.75 V, the error
message 5 V power supply too low appears. If it rises above 5.4 V, 5 V power
supply too high is indicated.
For information on the power supply units, refer to the "Inverter Systems
and Motors" Technical Manual.

Device Load capacity


UVR 1xxD, UE 2xxD 20.00 A via X74
10.00 A via X69

Device Current consumption of the 5 V supply


CC 6106/6 control loops 3.80 A
Consisting of:
1 drive-control motherboard: 2.00 A
2 drive-control expansion boards: 0.90 A
each
CC 6108/8 control loops 5.80 A
Consisting of:
2 drive-control motherboards: 2.00 A
2 drive-control expansion boards: 0.90 A
each
CC 6110/10 control loops 6.70 A
Consisting of:
2 drive-control motherboards: 2.00 A
3 drive-control expansion boards: 0.90 A
each
UxC drive control board 2.50 A
LS, LB 0.15 A
ERN, ROD, RON 0.20 A
Absolute rotary encoders 0.25 A (+0.085 A with line-drop
compensator)a
Absolute angle encoders 0.35 A (+0.085 A with line-drop
compensator)a
LC 0.30 A (+0.085 A with line-drop
compensator)a
a. For cable lengths > 10 m between the logic unit and the encoders
with EnDat interfaces, a line drop compensator is required
(efficiency = 75 %).

Power consumption of CC 61xx:


 CC 6106: 25 W
 CC 6108: 35 W
 CC 6110: 40 W

310 HEIDENHAIN Technical Manual TNC 640


X69: CC-supply
voltage and control
Pin layout:
signals
50-pin ribbon Assignment 50-pin ribbon Assignment
connector connector
1a to 5b +5 V 16b GND
6a to 7b +12 V 17a RDY.PS
8a +5 V (low-voltage 17b GND
separation)
8b 0 V (low-voltage 18a ERR.ILEAK
separation)
9a +15 V 18b GND
9b –15 V 19a PF.PS.AC (only
UV 120, UV 140,
UV 150, UR 2xx)
10a UZAN 19b GND
10b 0V 20a Do not assign
11a IZAN 20b GND
11b 0V 21a Do not assign
12a RES.PS 21b GND
12b 0V 22a Do not assign
13a PF.PS.ZK 22b GND
13b GND 23a Reserved (SDA)
14a ERR.UZ.GR 23b GND
14b GND 24a Reserved (SLC)
15a ERR.IZ.GR 24b GND
15b GND 25a RES.LE
16a ERR.TMP 25b GND

Combination of several CC 61xx controller units


Two drive-control motherboards are housed in one CC 6108 or CC 6110. Both
boards must be connected to the supply bus via the connectors X69A and
X69B. A short ribbon cable (ID 325816-15) with three connectors for X69 is
therefore included with either of the two CCs. Two of the connectors are
connected to X69A and X69B of the CC, respectively. The third connector of
the cable serves to establish the connection to X69 of the power supply
module.
Two CC 6106 controller units are to be connected via the ribbon cable with
ID 325816-24 (100 mm).

January 2015 3.8 Supply voltages in the HSCI system 311


However, if you want to arrange two CC 61xx controller units other than the
CC 6106 controller unit next to each other in one row, you need to use the
ribbon cable with ID 325816-22. This cable is required for the following
configurations: 2 x CC 6108, 2 x CC 6110 or CC 6110 with CC 6108. The four
connectors X69 of the CCs are then connected via the additional accessory
cable. The fifth connector of the cable is used to establish the connection to
X69 of the power supply module.

Ribbon cable

ID 325816-15

ID 325816-24

ID 325816-22

ID 325816-24
connecting two
CC 6106

312 HEIDENHAIN Technical Manual TNC 640


Ribbon cable

ID 325816-22
connecting two
CC 6108

If several CC 61xx controller units are connected via a cable with ID 325816-xx,
the +5 V power must usually only be supplied by connector X74 of the
rightmost CC controller unit. The +5 V supply must be tested, however, see
page 314.
Two drive-control motherboards are housed in one CC 6108 or CC 6110. The
HSCI bus must be forwarded from one board to the other via the connectors
X500A and X502B. A short HSCI cable (approx. 20 cm) is therefore included
with either of the two CCs.

January 2015 3.8 Supply voltages in the HSCI system 313


X74: +5 V power Maximum wire cross section: 2.5 mm2
supply for CC
Connecting terminal Assignment
at X74
1 +5 V NC from the UV supply module (X74)
2 0V

Attention

The +5 V NC supply via X74 from the supply module is mandatory for the
CC 61xx!

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

If the system includes several CCs 61xx that are connected to the same
supply bus (X69) via a UV supply module, it is usually sufficient to connect only
the last CC 61xx (usually the unit at the extreme right) to the UV via X74. The
other CC 61xx units are then supplied via supply bus X69.
If several CC 61xx units are supplied by more than one UV supply module,
which means that they are connected to different supply bus systems (X69),
then the last CC 61xx (usually the unit at the extreme right) of the respective
supply bus must also be supplied with the additional + 5 V of the UV via X74.
If the +5 V power supply to the CC 61xx is too low, the error message Self-
test cannot be started appears after the control has booted. In this case,
please open the bus diagnosis on your control to display more detailed
information on the cause of the error:
 Press the MOD key.
 Press the DIAGNOSIS soft key.
 Press the BUS DIAGNOSIS soft key.
If the error was caused by too low a supply voltage, the error (PF.BOARD)
Error in the supply voltage is displayed for the affected CC controller unit(s)
in the bus diagnosis. In these cases, check the wiring of the power supply at
X74 and contact your HEIDENHAIN service agency.

314 HEIDENHAIN Technical Manual TNC 640


X7: Bridge for
signal ground
(= functional Connecting terminal Assignment
ground) X7
1 Connection for signal ground (= functional ground)
2 Connection on housing

In shipping condition of the CC 61xx, the signal ground (pin 1) is connected to


the housing (pin 2) over an external bridge. If only one CC 61xx is in the
system, it ensures the correct signal-ground connection of the CC.
If there are two or more CC 61xx units in the system that are connected over
a UV power module to the same supply bus (X69), this external signal-ground
bridge can stay connected with only one CC 61xx. Disengage these bridges
on all other CCs in order to prevent ground loops.
As an alternative, the CC can be connected to ground using a line (X7/pin 1)
instead of a bridge for signal ground. This is shown with a dashed line in the
control's Grounding Diagrams. In this case, remove the bridge and use a line
to connect the CC to ground.
The basic rule is that only one CC 61xx can be connected to ground in a supply
system. All other CCs within a supply system are connected to signal ground
via the connection with X69. A supply system contains all CCs that are
powered by the same supply module.
If there are two or more CC 61xx units powered over more than one UV power
module and are therefore connected with different supply bus systems (X69),
then the external signal-ground bridge is to be connected with only one
CC 61xx of the respective supply bus. In order to prevent ground loops,
disengage this bridge for the signal ground on all other CC 61xx units that are
on a common supply bus (X69).

January 2015 3.8 Supply voltages in the HSCI system 315


3.8.5 PSL 13x low-voltage power supply unit

PSL 130 pin layout Connector Function


Conductor bar Connection of DC-link voltage Uz: DC 400
V...750 V
B – Signal Signal ground
ground (DC 0 V NC signal of the DC 24 V NC signal
(= functional connected internally to protective ground)
ground)
X90 Output for supply voltages:
 Terminal 1: DC 24 V NC
X90  Terminal 2: DC 0 V NC
(Ground DC 24 V NC)
 Terminal 3: DC 24 V PLC
 Terminal 4: DC 0 V PLC
(Ground DC 24 V PLC)
X33 Input voltages L1, L2:
AC 400 V ± 10% 50 Hz
€ Protective ground

X33

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

316 HEIDENHAIN Technical Manual TNC 640


PSL 135 pin layout Connector Function
X31 Input voltages L1, L2 (AC 400 V ± 10% 50 Hz)
and connection of the DC-link voltage Uz
(DC 400 V...750 V)
B – Signal Signal ground (DC 0 V NC signal of the
ground DC 24 V NC signal connected internally to
(= functional protective ground)
L1/L2 ground)
+UDC / –UDC
X31 X74 Output for supply voltages:
 Terminal 1: DC 5 V
X74  Terminal 2: DC 0 V
+5V
0V X69 Power supply and control signals for CC 61xx
(for X69 on CC)
X90 Output for supply voltages:

X69
 Terminal 1: DC 24 V NC
 Terminal 2: DC 0 V NC
(Ground DC 24 V NC)
X90  Terminal 3: DC 24 V PLC
24V
24V
0V  Terminal 4: DC 0 V PLC
0V (Ground DC 24 V PLC)
€ Protective ground

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.8 Supply voltages in the HSCI system 317


General The two 24 V output voltages of the PSL 13x are generated by two separate
information power supplies. The + 24 V NC and + 24 V PLC voltages are separated from
each other by basic insulation and fulfill the requirements of EN 61800-5-1 for
low voltage electrical separation.
The 0 V line of the NC supply voltage must be connected separately to the
central grounding point of the machine (= central functional ground). The 0 V
NC voltage in the PSL 130 is therefore connected internally with the outward
conductor to signal ground (= central functional ground). An outward
connector to protective ground will not be available for the 0 V PLC voltage
until variant 03. With the variants up to and including variant 02, the 0 V PLC
must be tapped at terminal X90.4 and led to the central protective ground. In
variant 03 and later variants, an outward connector at the PSL will be available
for connecting the 0 V PLC voltage, too.
With the PSL 135, the connections to the central functional ground and
protective ground must be realized over the 0 V connections. The respective
outward connections will not be available until the next hardware variants of
the PSL 135.
The +24 V PLC voltage is also electrically separated by the power supply unit.
However, because of the connection to the PLC part of the HSCI system this
is a supply voltage with basic insulation. This voltage must not be linked with
other voltages.
The +5 V NC supply voltage for X74 of the PSL 135 is taken from the +24 V
NC supply voltage and is therefore galvanically connected with it.

Danger

 For the entire HSCI system, the +24 V NC power supply voltage is
required to be safely separated voltage and must not be connected with
the +24 V PLC voltage of the system.
 Protective Extra Low Voltage (PELV) according to EN 61800-5-1 must be
complied with for the +24 V NC power supply of the machine.
 The 0 V signal of the PLC power supply must be connected by a 6 mm2
conductor to the machine's central protective ground (PE).
 Refer to your control's grounding diagram!

318 HEIDENHAIN Technical Manual TNC 640


Specifications

Specifications PSL 130 PSL 135


Power supplies:
at X33 (L1, L2) 400 V~ ± 10 % 50 Hz
Power supplies:
DC-link power bar or X31
400 V– to 750 V–
Protection Page 322, 323
Output voltages:
Accuracy of the +24 V NC +24 V NC: ± 5 % +24 V NC: ± 5 %
Accuracy of the +24 V PLC +24 V PLC: Variations depending +24 V PLC: Variations depending
on the load, between 20 V and on the load, between 20 V and
28 V 28 V
(adjustment to 25.0 V) (adjustment to 25.0 V)
Accuracy of the +5 V NC --- +5 V NC: ± 5 % (power supply
unit is adjusted to 5.2 V)
Output power 24 V PLC output: max. 500 W 24 V PLC output: max. 500 W
24 V NC output: max. 500 W 24 V NC output: max. 500 W
5 V NC output: max. 100 W
±15 V NC at X69:
+15 V NC max. 30 W
–15 V NC max. 22.5 W
+12 V NC at X69: max. 12 W
Total power output of PLC or NC
output voltages:
Total power output: max. 750 W
max. 500 W each
Total power output: max. 750 W
Output current 24 V NC Max. 20.5 A Max. 20.5 A
24 V PLC output current Max. 20.5 A Max. 20.5 A
5 V NC output current --- Max. 20 A
24 V output current total Continuous load: max. 31 A
Max. load time 1 s: max. 41 A
Max. load time 0.1 s: max. 46 A

The outputs are short-circuit proof and


switch off automatically when overloaded.

January 2015 3.8 Supply voltages in the HSCI system 319


Specifications PSL 130 PSL 135
5 V output current --- Max. 20 A

The outputs are short-circuit proof


and switch off automatically when
overloaded.
Power consumption Max. 1000 W
Power loss Max. 100 W
Degree of protection IP 20
Module width 50 mm
Weight 2.1 kg 3.2 kg
ID 575047-xx 627032-xx

It is possible to connect both 24 V output voltages of the PSL 13x in parallel.


In this way the PSL supplies only a maximum output power of 750 W, which
fulfills the requirements for PELV according to EN 61800-5-1. However,
because of the parallel circuit, a PSL 130 supplies only an output voltage of
+24 V, which can then be used as desired for the 24 V NC voltage or the
24 V PLC voltage. An additional PSL 13x can be used for the respective other
voltage.

Danger

When using it to supply the PLC, the common 0 V signal must be


connected by a 6 mm2 conductor to the machine's central ground.

320 HEIDENHAIN Technical Manual TNC 640


UZ DC-link Since the power to the PSL 130 is supplied through the DC-link, the voltage
connection fed into the DC-link by the motors that are still running can be used during line
voltage failures. The PSL 130 uses the supply voltage buffered via the DC-link
to maintain the power supply for the control until the non-HEIDENHAIN
inverter system has been shut down properly by the control.
If the PSL is connected over litz wires instead of the DC-link conductor bars, a
wire cross section of at least 1.5 mm2 must be used. Fuses or a motor
protection switch of 6.3 A or greater for conductor protection must be
selected depending on the wire cross section used. The PSL 130 is protected
internally by a fuse (4 A).

Connecting Assignment
terminals
–UZ DC-link voltage –
+UZ DC-link voltage +

HEIDENHAIN offers insulated conductor bars if you want to position the PSL
130 next to the left of the UVR inverter and connect it to the DC-link via
conductor bars. Two conductor bars are required for each connection. The
conductor bars are shipped in packaging units. Also, this position makes it
possible to connect the grounding conductor of the PSL via conductor bars.
Therefore, angulated non-insulated conductor bars are also included in this
packaging unit. This makes it possible to continue using the straight conductor
bar included with the UVR for the grounding conductor connection from the
UVR to the inverters via the right side.

Length For connection to ID (conductor bar set)


150 mm UVR 120D/130D 687669-01
200 mm UVR 140D/150D 687670-01
250 mm UVR 160D/160DW 687671-01

Note

Tightening torque for the screws of the DC-link conductor bars = 3.5 Nm.

January 2015 3.8 Supply voltages in the HSCI system 321


X33: Input voltage Supply voltage: 400 V ± 10 %
of the PSL 130
Connection:

Connecting terminal Assignment


L1 Phase 1 / 400 V~ ±10 % / 50 Hz to 60 Hz
L2 Phase 2 / 400 V~ ±10 % / 50 Hz to 60 Hz
Protective conductor (YE/GN),
€ ≥ 10 mm2
Connecting lead:
Wire cross section: at least 1.5 mm2 (AWG 16)
Conductor protection (back-up fuse):
Fuses or a motor protection switch of 6.3 A or
greater depending on the wire cross section
used.
Line fuse:
Internal protection of the PSL (6.3 A).
Tightening torque:
for the connecting terminals
0.5 Nm to 0.6 Nm
Grounding terminal:
≥ 10 mm2 (AWG 6)
Strain relief:
Ensure that the connecting cables are not subject to excessive strain.

Through the connection to the 400 V AC line voltage (L1, L2) via X33, the
output voltages of the PSL 130 are available as soon as the machine’s main
switch has been turned on. The connection of L1 and L2 is absolutely essential
for booting the control.
Since the power to the PSL 130 is supplied through the DC-link, the voltage
fed into the DC-link by the motors that are still running can be used during line
voltage failures. The PSL 130 uses the supply voltage buffered via the DC-link
to maintain the power supply for the control until the inverter system has been
shut down properly by the control.

Note

HEIDENHAIN recommends connecting the PSL 130 power supply unit to


the Uz DC-link voltage and the 400 V supply voltage (X33).

Operation of the PSL 130 without a connection to the Uz dc-link voltage is


possible, e.g. as PLC supply in combination with the UEC 11x.
However, be aware that operation with the Uz DC-link voltage but without the
power connection (L1 and L2) at X33 is not possible. The line voltage is
necessary for the PSL 130 to start correctly.

322 HEIDENHAIN Technical Manual TNC 640


X31: Input voltage Supply voltage: 400 V ± 10 % or 400 V– to 750 V–
of the PSL 135
Connection:

Connecting terminal Assignment


L1 Phase 1 / 400 V~ ±10 % / 50 Hz to 60 Hz
L2 Phase 2 / 400 V~ ±10 % / 50 Hz to 60 Hz
+UDC 400 V– to 750 V–
–UDC 0 V–
Protective conductor (YE/GN),
≥ 10 mm2
Connecting lead:
Wire cross section: at least 1.5 mm2 (AWG 16)
Conductor protection (back-up fuse):
Fuses or a motor protection switch of 6.3 A or
greater depending on the wire cross section
used.
Line fuse:
Internal protection of the PSL (6.3 A).
Tightening torque:
for the connecting terminals
0.5 Nm to 0.6 Nm
Grounding terminal:
≥ 10 mm2 (AWG 6)
Strain relief:
Ensure that the connecting cables are not subject to excessive strain.

Through the connection to 400 V (L1, L2) via X31, the output voltages of the
PSL 135 are available as soon as the machine's main switch has been turned
on. These voltages are indispensable to be able to boot the control.
Since the power to the PSL 135 is supplied through the DC-link, the voltage
fed into the DC-link by the motors that are still running can be used during line
voltage failures. The PSL 135 uses the supply voltage buffered via the DC-link
to maintain the power supply for the control until the inverter system has been
shut down properly by the control.

Note

If the power supply is other than 400 V, an autotransformer is required.


Otherwise, an isolating transformer is not necessary when using a
PSL 135.

Note

HEIDENHAIN recommends connecting the PSL 135 power supply unit to


the Uz DC-link voltage and the 400 V supply voltage (X31).

January 2015 3.8 Supply voltages in the HSCI system 323


X90: Output Output voltages: + 24 V (2 x)
voltage of the
Connection:
PSL 13x

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Connecting terminal Assignment


Terminal 1 (top) + 24 V NC
Terminal 2 0 V NC (ground + 24 V NC)
Terminal 3 + 24 V PLC
Terminal 4 (bottom) 0 V PLC (ground + 24 V PLC)
Tightening torque:
for the connecting terminals
0.5 Nm to 0.6 Nm
Strain relief:
Ensure that the connecting cables are not subject to excessive strain.

X74: Output Output voltages: + 5 V


voltage of the
Connection:
PSL 135

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Connecting terminal Assignment


Terminal 1 (top) + 5 V NC
Terminal 2 0 V NC (also ground +24 V NC)
Tightening torque:
for the connecting terminals
0.5 Nm to 0.6 Nm
Strain relief:
Ensure that the connecting cables are not subject to excessive strain.
Maximum wire cross section: 4 mm2

Signal ground Connections for signal ground, which are connected internally in the PSL 13x
(= functional to 0 V NC and 0 V PLC signals.
ground)
Connection:

Note

Conductor cross section of at least 6 mm2 for connecting to signal ground


(= central functional ground).

324 HEIDENHAIN Technical Manual TNC 640


Power connection

Fuse
L1
400 V +/– 10 %
50 Hz
L2 X31/X33

DC link at PSL 130 PSL 13x 24 V NC/PLC supply


PELV according to
EN 60204-1:2006

B
1
Turoidal core
X90.1 24V-NC
0V-NC
X90.2
24V-PLC
X90.3
X90.4 0V-PLC
2

2 2
6 mm 6 mm

2 Central functional earth (B)


6 mm

Connection between
central functional earth
and central
protective earth

Central protective earth (PE)

The 0 V line of the NC supply voltage must be connected separately to the


central grounding point of the machine (= central functional ground). The 0 V
NC voltage of the PSL 130 is therefore connected internally with the outward
conductor to signal ground (= central functional ground).
An outward connector to protective ground will not be available for the 0 V PLC
voltage until variant 03. With the variants up to and including variant 02, the 0
V PLC must be tapped at terminal X90.4 and led to the central protective
ground. In variant 03 and later variants, an outward connector at the PSL will
be available for connecting the 0 V PLC voltage, too.
With the PSL 135, the connections to the central functional ground and
protective ground must be realized over the 0 V connections. The respective
outward connections will not be available until later hardware variants of the
PSL 135.
If a suitable type of network (see Technical Manuals for Inverters and Motors)
is used, the inverter system from HEIDENHAIN and the PSL 13x are
connected to the main power line without an additional isolating transformer.
If an isolating transformer is required for the inverter system due to the type
of network, then the PSL 13x must also be powered via the isolating
transformer of the inverter system.
If the line voltage is 3 x 480 V~ and inverters suitable for this voltage (UE
compact inverters) are used, then the PSL 13x must be powered via an
additional autotransformer. The required output voltage of the
autotransformer is 400 V~ +0 % / –15 %.

January 2015 3.8 Supply voltages in the HSCI system 325


UL certification Overvoltage protection is mandatory for UL certification! For general
information on overvoltage protection, please refer to the "Mounting and
operating conditions" chapter in the Technical Manual for Inverter Systems
and Motors.

Conducted To suppress occurrence of conducted interference, the conductors for the 24


interference V NC and 24 V PLC output voltages (X90 of the PSL) must be passed through
a toroidal core (ID 309694-07, inside diameter 14 mm). There are different
ways to do this depending on the PSL variant:
 Variants 02 and 03 of the PSL 130, variant 01 of the PSL 135
The toroidal core is included with the PSL. The output lines of connector X90
(24 V NC, 24 V PLC) must be passed through the toroidal core in order to
suppress conducted interference. The lines must not be wound around the
toroidal core, however.
 Variant 02 of the PSL 135, variant 04 of the PSL 130
The toroidal core is integrated in the unit. No further external measures for
noise suppression must be taken.

326 HEIDENHAIN Technical Manual TNC 640


3.9 MS 110 / MS 111 installation kit for double-row configuration

3.9.1 General information


Sometimes limited space prevents the control and inverter system from being
mounted in the same row in a machine’s electrical cabinet, meaning that they
must be mounted in two separate rows. In other cases the design calls for a
second electrical cabinet to house the inverter system. This means that the
distribution and arrangement of the components can be very different from
case to case.
In order to establish an electrical connection (immune to noise) between the
components of the inverter system, the MS 1xx installation kits are needed.
The ribbon cables (unit bus, PWM lines, supply bus) from the other
components are connected to the MS mounting cases, and shielded round
cables of the appropriate lengths connect the MS mounting cases with each
other.
In some cases, in order to ensure that the power supply for the fans of the
inverters is maintained under all circumstances, it is also necessary to feed
24 V from an external power supply unit to the unit bus (since this is handled
by the unit bus).
In most cases the additional 24 V are not needed, since the UVR 1xxD
provides enough current for the fans.
If this is the case, and a double-row configuration is used, then two MS 110
mounting cases are necessary (see basic circuit diagram). For the current
consumption of the fans, refer to the "Inverter Systems and Motors" Technical
Manual. Based on these values you can calculate whether feeding in the
additional 24 V is necessary.
For inverter systems with many powerful UM 1xxD power modules, it might
be the case that the current provided by the UV(R)1xx power supply unit for
the fans of the UMs does not suffice to guarantee safe and reliable operation
of the fans. The sum of the currents must not exceed the maximum current
provided by the UV(R).
If it is exceeded, then an MS111 must be used in the inverter row where the
current consumption is very high.
With the MS 111, the 24 V from an external 24 V power supply unit are fed to
the unit bus X79 in order to ensure reliable operation of the fans, and therefore
the reliable cooling of the inverters. The 24 V supply that is routed via X79C is
interrupted internally at the MS 111.

Note

With the MS 111, an additional power supply unit must be used for the
24 V power supply of the fans.

January 2015 3.9 MS 110 / MS 111 installation kit for double-row configuration 327
3.9.2 Double-row configuration
Components and cables for double-row configuration:

Component/Cable ID
Unit bus cable (shielded, round) with 37-pin D-sub at both ID 664023-xx
ends; max. length: 3 m
PWM cable (round) with ribbon connector at both ends; ID 664332-xx
max. length: 5 m
Supply bus cable (round) with ribbon connector at both ID 361508-xx
ends; max. length: 5 m
(only necessary if the UV(R) 1xxD is not in the same row
as the CC/MC)
Wire for DC-link (16 mm2, shielded, color: red); max. ID 655440-xx
length: 3 m
Wire for DC-link (16 mm2, shielded, color: blue); max. ID 655438-xx
length: 3 m

When using a double-row configuration, please keep the following in mind:


 The litz wires used for the DC-link connection of the power modules in the
"second row" must not be longer than 3 m.
 Litz wires with 16 mm² cross section make a DC-link current of approx. 67 A
possible. In a regenerative system, this results in approx. 35 kW of
continuous power for the system connected by these wires.
 In a nonregenerative system the resulting maximum power is
approx. 25 kW.
 Use fast-acting semiconductor fuses for protection of the UV(R) 1xxD on the
primary side.
 The length of the unit bus ribbon cable must not exceed 1 m!
 If necessary, place the MS 110 or MS 111 in the "second row" in the center
of the UMs.
 When calculating the length of the ribbon cables, make sure to include the
module width of the MS 110 or MS 111.

328 HEIDENHAIN Technical Manual TNC 640


Basic circuit diagram for double-row configuration:

January 2015 3.9 MS 110 / MS 111 installation kit for double-row configuration 329
3.9.3 Connection overview

MS 110 pin layout Connector Function Page


DC-link 400 V– to 750 V– –
conductor
bar
Screw strip For fastening the PWM round cable –
shields
X79 Unit bus (connection for ribbon cable) 332
X79C Unit bus (connection for round cable) 333
€ Protective ground

X79

X79C

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

330 HEIDENHAIN Technical Manual TNC 640


MS 111 pin layout Connector Function Page
DC-link 400 V– to 750 V– –
conductor
bar
Screw strip For fastening the PWM round cable –
shields
X79 Unit bus (connection for ribbon cable) 332
X79C Unit bus (connection for round cable) 333
LED +24 V supply for fans is available
X101 Connection for +24 V supply for fans 333
€ Protective ground

X79

X101

X79C

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

January 2015 3.9 MS 110 / MS 111 installation kit for double-row configuration 331
X79: Unit bus Connection:

40-pin ribbon Assignment


connector
1a to 3b 0 V *1
4a +24 V *1
These voltages must
4b +24 V *1
not be linked with other voltages
5a +15 V *1 (only basic insulation)!
5b +24 V *1
6a +15 V *1
6b +15 V *1
7a to 8b Do not assign
9a Reserved (SDA)
9b Do not assign
10a Reserved (SCL)
10b ERR.TEMP
11a PF.PS
11b 0V
12a RES.PS
12b 0V
13a PWR.OFF
13b 0V
14a 5 V FS (spindle
enable)
14b 0V
15a 5 V FA (axis
enable)
15b to 16b 0V
17a and 17b –15 V
18a and 18b +15 V
19a to 20b +5 V

Danger

The interface complies with the requirements of EN 61800-5-1 for low


voltage electrical separation (except for 1a to 6b).

332 HEIDENHAIN Technical Manual TNC 640


X79C: Unit bus Connection:

Round cable Assignment


connector 37-
pin
17 -19, 35 -37 0 V *1
16 +24 V *1
These voltages must
34 +24 V *1
not be linked with other voltages
15 +15 V *1 (only basic insulation)!
33 +24 V *1
14 +15 V *1
32 +15 V *1
12, 13 Do not assign
11 Reserved (SDA)
30, 31 Do not assign
29 Reserved (SCL)
10 ERR.TEMP
28 PF.PS
9 0V
27 RES.PS
0 0V
26 PWR.OFF
25 0V
7 5 V FS (spindle
enable)
6 5 V FA (axis
enable)
5, 23, 24 0V
4.22 –15 V
3.21 +15 V
1,2,20 +5 V

Danger

The interface complies with the requirements of EN 61800-5-1 for low


voltage electrical separation (except for 1a to 6b).

X101: Power supply Pin layout:

Connecting Assignment
terminals
+ / terminal 1 +24 V NC
– / terminal 2 0 V NC

January 2015 3.9 MS 110 / MS 111 installation kit for double-row configuration 333
3.10 UxC 11x (FS): Power supply and motor connection

3.10.1 UMC 111 (FS)

General Number of available control loops


information
 UMC 111 (FS): 4 control loops

Specifications UMC 111FS


4 axes
External DC-link voltage 565 V
Power loss Max. 400 W
Rated current at a PWM frequency of 3333 Hz 9.0 A
4000 Hz 8.3 A
5000 Hz 7.5 A
6666 Hz 6.3 A
8000 Hz 5.5 A
10000 Hz 4.6 A
Maximum currenta at a PWM frequency of 3333 Hz 18.0 A
4000 Hz 16.5 A
5000 Hz 15.0 A
6666 Hz 12.6 A
8000 Hz 11.0 A
10000 Hz 9.2 A
Current consumption +24 V (incl. 4 speed encoders) Max. 2.6 A
Current consumption of PLC outputs Max. 48 x 0.15 A
= 7.2 A
Weight Approx. 11 kg
a. 0.2 s cyclic duration factor for duty cycle time of 10 s with 70 %
rated current preload

X81: Axis motor 1 Connection:


X82: Axis motor 2
X83: Axis motor 3 Connecting Assignment
X84: Axis motor 4 terminals
U Motor connection U
V Motor connection V
W Motor connection W

For information on synchronous motors, asynchronous motors and power


cables, refer to the Technical Manual on Inverter Systems and Motors,
"Motors for Axis and Spindle Drives" chapter.

334 HEIDENHAIN Technical Manual TNC 640


X103: 24 V input

Connecting terminals Assignment


1 +24 V NC or +24 V PLC (max. 2.6 A)
2 0 V NC

Note

The integrated logic part, the inverter electronics and the integrated
controller unit of the UMC are supplied via X103. The UMC generates the
individual internal supply voltages with an integrated power supply unit,
which complies with Protective Extra Low Voltage (PELV) according to EN
61800-5-1. The internally generated voltages thus have double basic
insulation. This means that a +24 V PLC voltage with simple basic insulation
(ELV as per EN 61800-5-1) is sufficient as supply via X103.

X33: DC-link power Connection at UMC 11x (FS):


supply
Connecting terminals Assignment
1 +UZ
2 –UZ

Note

The line cross section should be 10 mm2.


For connection to a regenerative inverter system, use shielded cables for
reasons of EMC. Route the cables closely to each other and ground on both
ends.
Cable lengths exceeding 3 m require fuse protection (e.g. SITOR 20 A fast).

Shield for DC-link If the UMC 11x is connected to a regenerative inverter system, the shield of
the DC-link must be grounded using the clamp provided at the top.

X344: 24 V supply
for motor holding
brakes Connecting terminals Assignment
1 +24 V PLC
2 0 V PLC

January 2015 3.10 UxC 11x (FS): Power supply and motor connection 335
X394: Motor
holding brakes
Connecting terminals Assignment
1 Holding brake X80
2 0 V PLC
3 Holding brake X81
4 0 V PLC
5 Holding brake X82
6 0 V PLC
7 Holding brake X83
8 0 V PLC

Mounting the To suppress conducted interference, toroidal cores must be mounted in the
toroidal cores motor leads (X80 to X83).

UMC 11x

Control of
the motor brakes
via X394

Shield

PE power cable
Pass W, V, U of the axes three
times through the toroidal core. Shield for motor brake
Strain relief
Arrange the wires in parallel.

To motor

336 HEIDENHAIN Technical Manual TNC 640


3.10.2 UEC 11x (FS)

General Number of available control loops


information
 UEC 111 (FS): 4 control loops
 UEC 112 (FS): 5 control loops
 UEC 113 (FS): 6 control loops

Specifications UEC 112 (FS) UEC 111 (FS)


3 axes 1 axis Spindle 2 axes 1 axis Spindle
Power supply 3 x 400 V to 480 V ~ ±10 % (50 Hz to 60 Hz)
DC-link voltage 565 V– (with supply voltage of 400 V)
Power loss Approx. 450 W Approx. 450 W
Rated current at a PWM
frequency of 3333 Hz 6.0 A 9.0 A 24.0 A 6.0 A 9.0 A 24.0 A
4000 Hz 5.5 A 8.3 A 22.0 A 5.5 A 8.3 A 22.0 A
5000 Hz 5.0 A 7.5 A 20.0 A 5.0 A 7.5 A 20.0 A
6666 Hz 4.2 A 6.3 A 16.8 A 4.2 A 6.3 A 16.8 A
8000 Hz 3.6 A 5.5 A 14.6 A 3.6 A 5.5 A 14.6 A
10000 Hz 3.0 A 4.6 A 12.2 A 3.0 A 4.6 A 12.2 A
Peak power 6-40 %a 18 kW 18 kW
DC-link power 14 kW 14 kW
Maximum currentb at a PWM
frequency of 3333 Hz 12.0 A 18.0 A 36.0 A 12.0 A 18.0 A 36.0 A
4000 Hz 11.0 A 16.5 A 33.0 A 11.0 A 16.5 A 33.0 A
5000 Hz 10.0 A 15.0 A 30.0 A 10.0 A 15.0 A 30.0 A
6666 Hz 8.4 A 12.6 A 25.2 A 8.4 A 12.6 A 25.2 A
8000 Hz 7.3 A 11.0 A 21.9 A 7.3 A 11.0 A 21.9 A
10000 Hz 6.0 A 9.2 A 18.3 A 6.0 A 9.2 A 18.3 A
Integral braking resistor
Continuous power 2.1 kW 2.1 kW
c 27 kW 27 kW
Peak power
Resistance 18 ohms 18 ohms
Load capacity +24 V NC 3.5 A 3.5 A
Weight Approx. 14 kg Approx. 14 kg
a. Spindle: 40 % cyclic duration factor for duty cycle time of 10 minutes (S6-40 %)
b. Axes: 0.2 s cyclic duration factor for duty cycle time of 10 s with 70 % rated current preload
Spindle: 10 s cyclic duration factor for duty cycle time of 60 s with 70 % rated current
preload
c. 1.5 % cyclic duration factor for duration of 120 s

Note

Under some circumstances, certain high-speed spindles cannot be


satisfactorily controlled with 3.3 kHz PWM frequency. In this case, increase
the PWM frequency of the spindle. The spindle (X80) and the 1st axis (X81)
share a controller group. You therefore have to set the same PWM
frequency for X80 and X81. (Note the D rating!)

January 2015 3.10 UxC 11x (FS): Power supply and motor connection 337
Specifications UEC 113 (FS)
4 axes 1 axis Spindle
Power supply 3 x 400 V to 480 V ~ ±10 % (50 Hz to
60 Hz)
DC-link voltage 565 V– (with supply voltage of 400 V)
Power loss Approx. 450 W
Rated current at a PWM
frequency of 3333 Hz 6.0 A 9.0 A 24.0 A
4000 Hz 5.5 A 8.3 A 22.0 A
5000 Hz 5.0 A 7.5 A 20.0 A
6666 Hz 4.2 A 6.3 A 16.8 A
8000 Hz 3.6 A 5.5 A 14.6 A
10000 Hz 3.0 A 4.6 A 12.2 A
Peak power 6-40 %a 18 kW
DC-link power 14 kW
Maximum currentb at a PWM
frequency of 3333 Hz 12.0 A 18.0 A 36.0 A
4000 Hz 11.0 A 16.5 A 33.0 A
5000 Hz 10.0 A 15.0 A 30.0 A
6666 Hz 8.4 A 12.6 A 25.2 A
8000 Hz 7.3 A 11.0 A 21.9 A
10000 Hz 6.0 A 9.2 A 18.3 A
Integral braking resistor
Continuous power 2.1 kW
Peak powerc 27 kW
Resistance 18 ohms
Load capacity +24 V NC 3.5 A
Weight Approx. 14 kg
a. Spindle: 40 % cyclic duration factor for duty cycle time of 10
minutes
(S6-40 %)
b. Axis: 0.2 s cyclic duration factor for duty cycle time of 10 s with
70 % rated current preload
Spindle: 10 s cyclic duration factor for duty cycle time of 60 s with
70 % rated current preload
c. 1.5 % cyclic duration factor for duration of 120 s

For more information about the controller groups of the UEC 11x (FS), see
"Configuring the controller unit and drive motors" on page 1651.

338 HEIDENHAIN Technical Manual TNC 640


X31: UEC power
supply

Danger

Danger of electrical shock!


The UEC 11x controller unit must be opened only by HEIDENHAIN service
engineers.
Do not engage or disengage any terminals while they are under power.

Note

EN 61800-5-1 requires a non-detachable connection to the line power


supply.

Note

If the power supply is other than 400 V/ 480 V, an autotransformer is


required. It must comply at least with the connection specifications of the
UEC 11x.

January 2015 3.10 UxC 11x (FS): Power supply and motor connection 339
With a power supply of 400 V, the inverter voltage UZ is 565 V–, and with a
power supply of 480 V it is 678 V–.
For information on the power connection, refer to the Technical Manual for
"Inverter Systems and Motors."

Connecting UEC 111, UEC 112, UEC 113


terminals
Operation on 400 V~
L1 400 V~ ± 10 %
L2 50 Hz to 60 Hz
L3
Cable / single conductor (HT wire):
6 mm2 (AWG 10)
Single conductor H07 V2-K:
4 mm2 (AWG 10)
Line fuse:
35 A (gR) Siemens Sitor type
Grounding terminal:
≥ 10 mm2 (AWG 6)
Tightening torque for connecting terminals:
0.7 Nm (6.5 to 7 pound-inch)
Operation on 480 V~
L1 480 V~ ± 10 %
L2 50 Hz to 60 Hz
L3
Cable / single conductor (HT wire):
6 mm2 (AWG 10)
Single conductor H07 V2-K:
4 mm2 (AWG 10)
Line fuse:
25 A (gR) Siemens Sitor type
Grounding terminal:
≥ 10 mm2 (AWG 6)
Tightening torque for connecting terminals:
0.7 Nm (6.5 to 7 pound-inch)

340 HEIDENHAIN Technical Manual TNC 640


X80: Spindle motor Connection:
X81: Axis motor 1
X82: Axis motor 2 Connecting Assignment
X83: Axis motor 3 terminals
X84: Axis motor 4
U Motor connection U
X85: Axis motor 5
V Motor connection V
W Motor connection W

For information on synchronous motors, asynchronous motors and power


cables, refer to the Technical Manual on Inverter Systems and Motors,
"Motors for Axis and Spindle Drives" chapter.

X71: Safety relay For information on the wiring and function, see the Basic Circuit Diagram for
for spindle your control. Registered customers can download the Basic Circuit Diagram
X72: Safety relay from the HEIDENHAIN FileBase on the Internet.
for axes
Connecting terminals Assignment
X71 to X72
1 +24 V pulse release output (max. 250 mA) for
control of the relays at X71.3 and X72.3 for drive
enabling (Axis ON, Spindle ON).
2 0 V for pulse release output
3 +24 V pulse release input for Axis ON,
Spindle ON
4 Do not assign
5 Do not assign
6a Normally closed contact (OE1, OE1A or OE1S)
7a Normally closed contact (OE2, OE2A or OE2S)
a. Max. 125 V

Note

The +24 V pulse release voltage at terminals X71.1 and X72.1 is generated
internally by a separate power supply unit of the UxC 11x (FS). Use this
voltage exclusively for drive enabling—for supplying the relay coils that are
internally connected to X71.3 and X72.3.

Attention

The +24 V pulse release voltage must not be linked with other voltages
(e.g. +24 V NC or +24 V PLC) of the HEIDENHAIN control system.

Attention

A recovery diode is required in the proximity of inductive loads, e.g. relay or


contactor coils.

January 2015 3.10 UxC 11x (FS): Power supply and motor connection 341
X87: DC-link The DC-link voltage Uz is available at connector X87 for the connection of an
connection for additional PSL 13x. The connection of other inverters is not possible.
PSL 130
Maximum output current for PSL 13x connection: 3.0 A

Connecting UEC 111FS, UEC 112FS, UEC 113(FS)


terminals
+Uz DC-link voltage +
–Uz DC-link voltage –
Line cross section:
4 mm2
Tightening torque for connecting terminals:
0.5 Nm to 0.6 Nm

X89: Braking Connection at the UEC 11x:


resistor
Connecting Assignment PW 21x PW 1x0(B);
terminal X89 connecting
UE 11x terminal X1
1 +UZ RB1 1
2 Switch to –UZ RB2 2

On the UEC 11x compact inverters, there must be no bridge at connector X89.
A bridge at X89 would cause the internal braking resistor to be bridged and
lead to a short circuit of the DC-link voltage. If necessary, you can connect an
external braking resistor (PW 210) via X89 in parallel to the internal braking
resistor.

X90: 24 V NC
output
Connecting Assignment
terminal X90
+ or terminal 1 +24 V NC (max. 3.5 A)
– or terminal 2 0V

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

342 HEIDENHAIN Technical Manual TNC 640


X344: 24 V supply
for motor holding
brakes Connecting terminals Assignment
1 +24 V PLC
2 0 V PLC

X394: Motor X394 with 10 pins:


holding brakes
Connecting terminals Assignment
1 Holding brake X80
2 0 V PLC
3 Holding brake X81
4 0 V PLC
5 Holding brake X82
6 0 V PLC
7 Holding brake X83
8 0 V PLC
9 Holding brake X84
10 0 V PLC

X394 with 2 pins at UEC 113(FS), ampacity 1.5 A:

Connecting terminals Assignment


1 Holding brake X85
2 0 V PLC

January 2015 3.10 UxC 11x (FS): Power supply and motor connection 343
Mounting the To suppress conducted interference, toroidal cores must be mounted in the
toroidal cores motor leads (X80 to X84) and in the voltage supply lead (X31).

From line power

PE
Pass L1, L2, and L3
four times through the
double toroidal core.
Arrange the wires in
parallel.

UEC 1xx

Controlling the
motor brakes
through X394

Shield
PE power cable
Pass W, V, U of the axes three
times through the toroidal core. Strain relief Shield for motor brake
Pass W, V, U of the spindle
three times through the
double toroidal core. Arrange
the wires in parallel.

To motor

344 HEIDENHAIN Technical Manual TNC 640


3.11 UxC 11x (FS): Meaning of the LEDs
On the front of the UxC 11x (FS) are several LEDs for functional control, with
the following meaning:

UxC 11x LED Meaning Signal Signal


direction
NC RESET Reset signal from the MC MC → UxC RES.LE
computer unit to the UxC
PWR FAIL UZ too low, UZ < 410 V (e.g. UxC → MC PF.PS
failure of a phase under load,
power < 290 V)
PWR RES Reset signal from the UxC to UxC → MC RES.PS
the MC computer unit
SH2 SH1 (RED)
RDY (GREEN) READY Inverter ready UxC → MC RDY
X84
TEMP >> Temperature of heat sink UxC → MC ERR.TEMP
too high (> 100 °C)
SH2 SH1 (RED)
RDY (GREEN) UDC LINK >> UZ too high (> approx. 850 UxC → MC ERR.UZ.GR
X83 V); power modules are
switched off
SH2 SH1 (RED)
RDY (GREEN) STO A (RED) Safe Torque Off; no enable MC → UEC STO.A.x
X82 from control (main contactor
not active, DSP error, PLC
SH2 SH1 (RED)
RDY (GREEN)
error with emergency stop,
X81 hardware or software error UxC → MC RDY
of MC, CC)
SH2 SH1 (RED) READY Axis/Spindle enabled
RDY (GREEN)
(GREEN)
X80
STO B Safe Torque Off; no drive MC → UxC STO.B.x
PWR RES. READY enable from control (e.g. by
UDC-LINK >> PWR FAIL
NC RESET TEMP. >>
the PLC, active via external
AX. SPINDLE signal or STO A)

X71

LED at X9 on top surface of PL green  PL not ready  Off


the UxC  PL ready  On
 PL initialization  Slow blinking
 Error with SS2 reaction is  Blinking twice
present
 Error with SS1F reaction is  Fast blinking
present
HSCI green  Not ready for HSCI  Off
communication
 Ready for HSCI  On
communication
 Error in HSCI  Blinking twice
communication
 No HSCI communication  Fast blinking

January 2015 3.11 UxC 11x (FS): Meaning of the LEDs 345
3.12 Power supply for PLC outputs
The PLC outputs of the PLB 62xx are powered by the 24 V control voltage of
the machine (PELV in accordance with EN 61800-5-1). The power to the PLC
outputs is supplied via the corresponding terminals on the respective I/O
module connectors for PLC outputs.
The control voltage must be smoothed with a capacitance of 150 µF per amp
of rated current, and in any case with at least 1000 µF. At a current load of 15
A, for example, this corresponds to a capacitance of 2250 µF. If the PSL 130
is used as 24 V– supply unit, this additional smoothing is not necessary.

Note

HEIDENHAIN recommends the PSL 130 (575047-01) as 24 V power supply


unit, see "PSL 13x low-voltage power supply unit" on page 316.

EN 61 131-2:1994 permits:
 Minimum absolute value: 20.4 V–
 Maximum absolute value: 25.4 V– at 200 W power output
 Maximum absolute value: 28.8 V– at 100 W power output

Attention

Use only original replacement fuses.

Power If half of the outputs are switched at the same time, the following are the
consumption values for power consumption:
PL 6xxx: approx. 485 W
UxC 11x: 48 W

Power output The maximum permissible power output of a PLD-H xx-xx-xx is 200 W.

346 HEIDENHAIN Technical Manual TNC 640


Rated operating UxC 11x: 0.150 A
current per output PLD-H xx-xx-xx: 2A
Simultaneity with a supply voltage of 25.4 V:
2 outputs with 4 A each
4 outputs with 2 A each
8 outputs with 1 A each
Total current:
Out0 to Out7: ≤ 8 A
Out0 to Out3: ≤ 4 A
Out4 to Out7: ≤ 4 A
For all PLD-H xx-xx-xx units, it must be remembered that a total current of
max. 8 A per slot (PLD-H) must not be exceeded! This applies regardless of
the number of outputs of the PLD-H. With the UxC 11x, a total current of 1.2 A
for the eight outputs of a connector must not be exceeded.
With all PLD-H xx-xx-xx with High Side and Low Side switches, the series
connection: High Side Switch - device - Low Side Switch must not be loaded
with more than 2 A.
In the event of an overload or short circuit and as a consequence of excessive
temperature, the individual PLC outputs of a PLD or UxC switch off
automatically. Then the outputs will try to switch on again cyclically.
Furthermore, the modules have a fuse that prevents an excessive total current
per output module with eight outputs (> 8 A not self-healing on PLD, > 1.2 A
self-healing on UxC) and thus destruction of the modules.

January 2015 3.12 Power supply for PLC outputs 347


3.13 Power supply for PLB 6xxx (FS)

Note

The control cyclically monitors the supply voltage of the PL 6xxx.

X3: +24 V NC, +24 V Power consumption of the PL 6xxx via X3 if every slot is used, including the
PLC power supply TS, TT:
 At +24 V NC: max. 48 W
 At +24 V PLC: max. 21 W
For more details regarding the power supply, see page 307.
The power to the PLC outputs is also supplied via the corresponding terminals
on the respective I/O module connectors for PLC outputs. The power
consumption of the +24 V PLC via X3 and the power consumption of the PLC
outputs add to each other.
Pin layout of X3:
Supply voltage for logic and PLC outputs

Connecting terminal Assignment


1 (top terminal) + 24 V NC
2 0 V NC (ground + 24 V NC)
3 € Protective ground
Minimum wire cross section of
the power cables for 24 V PLC
4 + 24 V PLC
5 (bottom terminal) 0 V PLC (ground + 24 V PLC)

348 HEIDENHAIN Technical Manual TNC 640


3.14 Meaning of the LED on PLB 6xxx

PLB 6xxx LED LED status Meaning


PL green  Off  PL not ready
(right)  On  PL ready
X500  Slow blinking  PL initialization
PL yellow  Off  No error
X502
(left)  Fast blinking  Error with SS1F reaction is present
PL Channel A
 Blinking twice  Error with SS2 reaction is present
HSCI
PL
HSCI green  Off  PL not ready for HSCI communication
Channel B
HSCI (right)  On  PL ready for HSCI communication
HSCI yellow  Off  No HSCI communication error
X2 (left)  Fast blinking  No HSCI communication
 Blinking twice  Error in HSCI communication
Channel A/Channel B refers to the safety channels A and B of the PLB 6xxxFS
X3

January 2015 3.14 Meaning of the LED on PLB 6xxx 349


3.15 Power supply for control-is-ready signal

X9: Power supply The control-is-ready signal output is powered by 24 V– provided by the
for control-is-ready UE 2xxB inverter or the UV 1xx power supply unit. The voltage is connected
signal with terminal X9 of the PLB 620x.

Pin layout:

Connecting terminal Assignment Connection when using a


X9 HEIDENHAIN inverter
1a +24 V X72/1
2b 0V X72/2

Power consumption via X9, +24 V PLC: max. 120 W (depending on the
connection of PLC outputs to X9)

350 HEIDENHAIN Technical Manual TNC 640


3.16 Drive controller enable

Drive controller A CC 61xx or a UEC 11x does not have an X150 connector for axis-specific or
enabling for axis axis-group-specific drive controller enabling. But in the
groups MP_driveOffGroupInput machine parameter, you can enter up to six
numbers of those PLC inputs that simulate the inputs of X150.
With the axis-specific parameter MP_driveOffGroup you have to define the
axes to be switched off if the 24 V are no longer available at the specified PLC
input.
For more information, see "HSCI: Switching drives on and off, enabling the
drive controller" on page 1368

MP_driveOffGroupInput
PLC inputs belonging to the switch-off groups
Available from NCK software version: 597110-03.
Format: Array
Input: Group1...Group8
You can specify up to 8 PLC inputs for the switch-off groups.
Depending on the number of switch-off groups you want to
realize, you have to enter the parameters here and define the
PLC inputs.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RUN

MP_driveOffGroup
Assignment of the axis to the switch-off group
Available from NCK software version: 597 110-03.
Format: Array [0...7]
Input: You can assign the axis to a maximum of 8 switch-off groups.
To do so, insert one parameter each under MP_driveOffGroup
and select the desired switch-off group in the selection menu.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

January 2015 3.16 Drive controller enable 351


3.17 Digital PLC inputs/outputs

Input signals and Input signals of the switching inputs:


addresses
Voltage range PLD-H UEC 11x, X9 of PL 62xx, and
(with LED) machine operating panel
(without LED)
"1" signal: Ui 11 V to 30.0 V 11 V to 30.0 V
"0" signal: Ui –3.0 V to 2.2 V –3 V to 2.2 V

Current range PLD-H UEC 11x, X9 of PL 62xx, and


(with LED) machine operating panel
(without LED)
"1" signal: Ii 2.0 mA to 6.1 mA 2.1 mA to 6.0 mA
"0" signal: Ii at 0.3 mA 0.43 mA
Ui = 2.2 V

If 24 V DC is present, and therefore a "1" signal is transmitted, the PLC inputs


of the HSCI system consume a current of 5 mA.

Output signals and The switching outputs are transistor outputs with current limitation.
addresses
Please note:
 Permissible load: Resistive load (ohmic load). Inductive loads (e.g. relay,
contactor) with an energy content of up to 100 mJ do not require a
quenching diode. If the energy content exceeds 100 mJ: only with
quenching diode parallel to inductance. Pay attention to the manufacturer's
specification of the energy content when selecting the switching devices.
 For the rated operating currents of the PLC outputs, see "Rated operating
current per output" on page 347.
 If an output is operated with an inductive load without a quenching diode
and is read back to an input, the input must be protected by varistors or RC
circuits.
 PLD-H: The outputs are short-circuit proof.
 For component-related reasons, the switching outputs should be loaded
with at least 5 mA in "1" state. They conform to EN 61131-2. If a resistive
load consumes less than 5 mA, it is necessary to either insert a relay or
perform a usability test in accordance with the calculation described in the
following (see "Calculation of the voltage drop in "0" state" on page 353).
 For component-related reasons, a current of IOff = 500 µA flows through the
switching outputs also in "0" state. If high-impedance loads with a low-level
lower switching threshold are connected directly to the output, the voltage
drop can lead to a "1" state. In such a case, a shunt resistor must be
connected to the output, see "Calculation of the voltage drop in "0" state" on
page 353.
 If the holding brakes of motors are not driven exclusively over the inverter
outputs for brakes, a protective circuit in the form of a varistor must be used.
Due to the inductance of the holding brakes and any relays used, a voltage
peak that may exceed 1000 V occurs when the exciting current is switched
off. This may destroy other electronics, such as connected PLC inputs/
outputs.
 A protective circuit is not necessary only if the holding brakes are driven
exclusively over the inverter outputs for brakes, because the voltage is
limited internally by electronic switches in the inverters.

352 HEIDENHAIN Technical Manual TNC 640


Output signals:

PLD-H
Min. output voltage for "1" signal 3 V below supply voltage

Attention

PLC outputs must neither be connected to a 24 V supply, nor to other PLC


outputs with a difference in potential. Otherwise, the voltage present at the
PLC outputs is transmitted to the power supply. As a result, the PLC
outputs that can be switched off may nevertheless be supplied with this
voltage.

Calculation of the Current (IOff = 500 µA) also flows in "0" state of the PLC output for component-
voltage drop in "0" related reasons.
state
If resistive loads with high input impedance (> 15 kOhm) and a low-level lower
switching threshold are operated directly (without an interconnected relay) on
the PLC output, a shunt resistor may be necessary under certain
circumstances. Typical values of the shunt resistor are e.g. 5 kOhm or 10
kOhm. The voltage at the output in "0" state should be clearly (approx. 50 %)
below the lower switching threshold of the resistive load.
Calculation example—Resistive load does not require shunt resistor:
Reversing load relay directly on PLC output, data sheet specifications:
Rated control voltage Uc: 24 V DC
Rated operating current Ic: 3 mA
Switching threshold "0" state ULow: 9.6 V
Switching threshold "1" state UHigh: 19.2 V
In "0" state of the output, the voltage drop has to be less than 9.6 V. Calculation
of the input resistance Rc of the reversing load relay:
Uc 24V
Rc = ---------
Ic
= ----------------
3mA
= 8kΩ

Calculation of the voltage drop ULow in "0" state at the output:


U Low = Rc ⋅ I Off = 8kΩ ⋅ 500μA = 4V

With 4 V, the voltage drop is clearly below the switching threshold for the "0"
state (9.6 V). The reversing load relay can be operated directly at the PLC
output.

January 2015 3.17 Digital PLC inputs/outputs 353


Calculation example—Resistive load requires shunt resistor:
Interlocking switch directly at PLC output, data sheet specifications:
Rated control voltage Uc: 28 V DC
Rated operating current Ic: 2.2 mA
Switching threshold "0" state ULow: 3.6 V
Switching threshold "1" state UHigh: 17.4 V
In "0" state of the output, the voltage drop has to be less than 3.6 V .
Calculation of the input resistance Rc of the interlocking switch:
Uc 28V
R c = --------- = ----------------------- = 12.73 kΩ
12, 73kΩ
Ic 2, 2mA
2.2 mA

Calculation of the voltage drop ULow in "0" state at the output:

U Low = R c ⋅ I Off = 12.73 kΩ ⋅ 500μA


12 ,73kΩ = 6, 36V

The shunt resistor at the output should be such that the voltage drop at the
output in "0" state goes clearly below the lower switching threshold, e.g.
Rp = 5 kW:
1 1 1
----------------------------- = -------- + ---------
RTotal R R
Gesamt c p
1 1 1
----------------------------- = ---------------------------- + -------------
R Total
Gesamt 12.73
12 , 73kΩ k Ω 5kΩ

R Gesamt = 3.59 kΩ
3 ,59kΩ U Low = 3.59 kΩ ⋅ 500μA
3 ,59kΩ = 1.79 V
1 ,79V
Total

With a voltage drop of 1.79 V in "0" state, the value falls below the lower
switching threshold of the interlocking switch. If the shunt resistor of 5 kW is
used, operation directly at the PLC output is possible in this case.

354 HEIDENHAIN Technical Manual TNC 640


Terminal X9 on
PLB 62xx (FS)
Properties Socket connectors on the PLA-H
08-04-04
Connection: Socket connector with tension clamp
connection, type:
Weidmüller B2L 3.5/30 SN SW
2-row, 30-pin
Connectable conductors: Usable conductor cross sections
without wire-end sleeve:
0.08 mm2 to 1.0 mm2
Usable conductor cross sections with
wire-end sleeve:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller PZ 6/
5 crimping pliers)

Note

HEIDENHAIN recommends:
Preferably use a conductor cross section of 0.34 mm2 if you use stranded
wires with wire-end sleeves. This cross section can be clamped
appropriately and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross
section of 0.5 mm2, the Weidmüller PZ 6/5 crimping pliers (setting 0.25–0.5
mm2) must be used for crimping. In this case, orient the crimped wire-end
sleeve before inserting it into the socket connector. If crimping pliers from
other manufacturers are used for crimping conductors with a cross section
of 0.5 mm2, the crimped wire-end sleeves cannot be inserted into the
socket connector and clamped appropriately, and therefore do not result in
a reliable terminal connection.

January 2015 3.17 Digital PLC inputs/outputs 355


X9: Safety-related Pin layout of PLB 620x:
PLC inputs/outputs
The triggering outputs at X9 each supply up to 150 mA of output current. The
only exceptions are the two outputs -STOS.A.G and -STO.A.G with max. 2 A
of output current. In the event of an overload or short circuit and as a
consequence of excessive temperature, the individual PLC outputs switch off
automatically. Then the outputs will try to switch on again cyclically. Seven
outputs and twelve inputs are available at X9 of a PLB 620x for free use.
Further PLC inputs/outputs must be realized by means of I/O modules.

Terminal NEW signal OLD connector/signal design. Assignm. / Function


design. (MC 42xC)
1a 24 V.A X34 24 V supply of the outputs
MC.RDY, O.0 to O.2
2a Do not assign – –
3a MC.RDYa –SH1A (safe stop) 24 V output: (safe torque off)
X41.34 / O33 Control-is-ready signal
4a O0 24 V outputs (high-side driver)
5a O1
6a O2
7a –ES.A –NE1 / X42.4 / I3 24 V input
Acknowledgment: "Control is ready" Emergency stop input 1
8a I0 24 V inputs (PLC)
9a I1
10a I2
11a I3
12a I4
13a I5
14a –PF.PS.AC –PF.PS.AC (signal on X69) 24 V outputs for powerfail
15a –PF.PS.DC –PF.PS.ZK (signal at X69)
1b 24 V.B X44 24 V supply of the outputs O.3 to
O.6
2b 0V 0 V PLC for all I/Os
3b O3a 24 V outputs (high-side driver)
4b O4
5b O5
6b O6
7b –ES.B –NE2 / X42.33 / I32 24 V input
"Drive enabling" Emergency stop input 2
8b I6 24 V inputs (PLC)
9b I7
10b I8
11b I9
12b I10
13b I11
14b –SP.REF X30 Rapid 24 V input for spindle REF
15b Do not assign – –
a. 2 A outputs

356 HEIDENHAIN Technical Manual TNC 640


X9—Safety: Safety- Pin layout of PLB 620x FS:
related PLC inputs/
The triggering outputs at X9 each supply up to 150 mA of output current. The
outputs
only exceptions are the two outputs -STOS.A.G and -STO.A.G with max. 2 A
of output current. In the event of an overload or short circuit and as a
consequence of excessive temperature, the individual PLC outputs switch off
automatically. Then the outputs will try to switch on again cyclically.
Two outputs and six inputs are available at X9 of a PLB 620x FS for free use.
Further PLC inputs/outputs must be realized by means of I/O modules.

Terminal NEW signal OLD connector/signal design. Assignm. / Function


design. (MC 42xC)
1a 24 V.A X44 24 V supply of the outputs MC.RDY,
O.0 to O.1
2a –STOS.A.Ga –SHS1A (safe stop of spindle) 24 V output: (spindle safe torque off)
X41.32
3a –STO.A.Ga –SH1A (safe stop) 24 V output: (safe torque off)
X41.34 / O33 Control-is-ready signal
4a TEST.A T.2 / X165.2 24 V output for emergency stop
chain
5a O0.A 24 V outputs (high-side driver)
6a O1.A
7a –ES.A –NE1 / X42.4 / I3 24 V input
Acknowledgment: "Control is Emergency stop input 1
ready"
8a I0.A 24 V inputs (PLC)
9a I1.A
10a I2.A
11a I3.A
12a I4.A
13a I5.A
14a –PF.PS.AC –PF.PS.AC (signal on X69) 24 V outputs for powerfail
15a –PF.PS.DC –PF.PS.ZK (signal at X69)
1b 24 V.B X44 24 V supply of the outputs O.0 to
O.1
2b 0V 0 V PLC for all I/Os
3b Do not assign 24 V outputs (high-side driver)
4b TEST.B T.1 / X165.1 24 V output for emergency stop
chain
5b O0.B 24 V outputs (high-side driver)
6b O1.B
7b –ES.B –NE2 / X42.33 / I32 24 V input
"Drive enabling" Emergency stop input 2

January 2015 3.17 Digital PLC inputs/outputs 357


Terminal NEW signal OLD connector/signal design. Assignm. / Function
design. (MC 42xC)
8b I0.B 24 V inputs (PLC)
9b I1.B
10b I2.B
11b I3.B
12b I4.B
13b I5.B
14b –SP.REF X30 Rapid 24 V input for spindle REF
15b Do not assign – –
a. 2 A outputs

PLC inputs on the


PLD-H
Socket connectors X11, X12, X14, X17, X21, X22, X24, X27, X91, X94
Connection: Socket connector with tension clamp
connection, type:
Phoenix Contact FK-MCP 1.5/10-ST-
3.81
Connectable conductors: Usable conductor cross sections
without wire-end sleeve:
0.14 mm2 to 1.5 mm2
Usable conductor cross sections with
wire-end sleeve:
0.25 - 1.5 mm2 without plastic
sheathing
0.25 - 0.5 mm2 with plastic sheathing

Pin layout on the PLD-H xx-xx-xx input/output module:

Note

The 0 V terminals of X11, X12 and X14 of the PLD-H are connected
internally. These connections are used for connecting the potential of the
electronics and for operating the LEDs. Since only a low current is required
(max. 50 mA), it is sufficient to establish only one 0 V connection
(preferably at X11).
With Low Side outputs on the HSLS modules, the 0VPLC connections
must be wired with low impedance.

358 HEIDENHAIN Technical Manual TNC 640


X11: PLC inputs channel A
Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V PLC 0 V PLC I0 I1 I2 I3 I4 I5 I6 I7

X12: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V PLC 0 V PLC I8 I9 I10 I11 I12 I13 I14 I15

X14: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V PLC 0 V PLC I0.B I1.B I2.B I3.B I4.B I5.B I6.B I7.B

X17: PLC inputs, channel A/B


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V PLC 0 V PLC I0.A I1.A I2.A I3.A I0.B I1.B I2.B I3.B

Please note that a system with functional safety (FS) permits up to 256 safe,
dual-channel inputs (channels A and B). An MB 6xx FS from HEIDENHAIN
requires 56 of the 100 safe inputs, and connector X9 of a system PL requires
eight additional safe inputs. This means that max. 192 safe inputs can be
distributed to the PLD-H xx-xx-xx FS.
The designation "Channel A" or ".A" for the PLC inputs is relevant only for I/O
modules with functional safety (FS).

Fast Only the first four slots of a PL 6xxx can be used for fast PLC inputs. The fifth
PLC inputs slot and the successive slots (on PL 6x06, PL 6x08) must not be defined as
fast PLC inputs.
The configuration of fast PLC inputs in the HSCI system corresponds to the
previous configuration using machine parameters.

HSLS HSLS outputs, in addition to switching the 24 V PLC supply voltage, can also
PLC outputs switch the ground 0 V PLC on the device. The High Side Switch can switch
24 V/2 A, the Low Side Switch can switch 0 V/2 A. An appropriate application
is the series connection of 24 V PLC supply voltage, High Side Switch,
consumer, Low Side Switch and 0 V system ground. This must not be loaded
with more than 2 A. If a device is connected to an HSLS PLD-H, then all poles
can be disconnected.

January 2015 3.17 Digital PLC inputs/outputs 359


PLC outputs on the Pin layout on the PLD-H xx-xx-xx input/output module:
PLD-H

X21: PLC outputs A


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 O0.A O1.A O2.A O3.A O4.A O5.A O6.A O7.A 24 V 24 V
PLC PLC
for for
O0.A O4.A
to to
O3.A O7.A

X22: PLC outputs, channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 O8.A O9.A O10.A O11.A O12.A O13.A O14.A O15.A 24 V 24 V
PLC PLC
for for
O8.A O12.A
to to
O11.A O15.A

X24: PLC outputs, channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 O0.B O1.B O2.B O3.B O4.B O5.B O6.B O7.B 24 V 24 V
PLC PLC
for for
O0.B O4.B
to to
O3.B O7.B

X27: PLC outputs, channel A / channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 O0.A O1.A O2.A O3.A O0.B O1.B O2.B O3.B 24 V 24 V
PLC PLC
for for
O0.A O0.B
to to
O3.A O3.B

360 HEIDENHAIN Technical Manual TNC 640


X91: PLC outputs Low Side channel A
Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 DNU O0.A DNU O1.A DNU O2.A DNU O3.A 0V- 0V-
LS LS LS LS PLC PLC
for for
O0.A O2.A
LS to LS to
O01.A O3.A
LS LS

X94: PLC outputs High Side channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 O0.B O1.B O2.B O3.B DNU DNU DNU DNU 24V- 24V-
HS HS HS HS PLC PLC
for for
O0.B O2.B
HS to HS to
O1.B O3.B
HS HS

Please note that a system with functional safety (FS) permits up to 126 safe,
dual-channel outputs (channels A and B). Connector X9 of a system PL
requires three of the outputs. This means that max. 123 safe outputs can be
distributed to the PLD-H xx-xx-xx FS.
"Channel A" or ".A" of the PLC outputs needs to be entered only for I/O
modules with functional safety (FS).

January 2015 3.17 Digital PLC inputs/outputs 361


3.17.1 UxC 11x (FS): Digital PLC inputs/outputs

Type of terminals
on the UxC 11x(FS)
Socket connectors X4, X5, X6, X104, X106 on the UxC 11x (FS)
Connection: Socket connector with tension clamp
connection, type:
Weidmüller B2L 3.5/24 SN SW
2-row, 24-pin
Connectable conductors: Usable conductor cross sections
without wire-end sleeve:
0.08 mm2 to 1.0 mm2
Usable conductor cross sections with
wire-end sleeve:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller PZ 6/
5 crimping pliers)

Note

HEIDENHAIN recommends:
Preferably use a conductor cross section of 0.34 mm2 if you use stranded
wires with wire-end sleeves. This cross section can be clamped
appropriately and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross
section of 0.5 mm2, the Weidmüller PZ 6/5 crimping pliers (setting 0.25–0.5
mm2) must be used for crimping. In this case, orient the crimped wire-end
sleeve before inserting it into the socket connector. If crimping pliers from
other manufacturers are used for crimping conductors with a cross section
of 0.5 mm2, the crimped wire-end sleeves cannot be inserted into the
socket connector and clamped appropriately, and therefore do not result in
a reliable terminal connection.

The digital inputs/outputs described below are available on the UxC 11x (FS).

362 HEIDENHAIN Technical Manual TNC 640


X4: Single-channel Connections on the front of the UxC 11x (FS):
PLC inputs (on the
 18 single-channel PLC inputs are freely available:
front) I0 to I17

Terminal Signal designation Assignm. / Function


1a +24 V PLC.01 24 V supply of the outputs MC.RDY, O16
to O22
2a +24 V PLC.02 24 V supply of the outputs O8 to O15
3a +24 V PLC.03 24 V supply of the outputs O0 to O7
4a 0 V PLC 0 V for all I/Os
5a –SP.REF Rapid 24 V input for spindle REF
6a 0 V PLC 0 V for all I/Os
7a I12 24 V inputs
8a I13
9a I14
10a I15
11a I16
12a I17
1b I0 24 V inputs
2b I1
3b I2
4b I3
5b I4
6b I5
7b I6
8b I7
9b I8
10b I9
11b I10
12b I11

Note

It must be ensured that the maximum possible current to the terminals 1a,
2a, and 3a does not exeed 50 A.

January 2015 3.17 Digital PLC inputs/outputs 363


X5: Single-channel Connections on the front of the UxC 11x (FS):
PLC inputs (on the
 20 single-channel PLC inputs are freely available:
front) I18 to I37

Terminal Signal designation Assignm. / Function


1a I30 24 V inputs
2a I31
3a I32
4a I33
5a I34
6a I35
7a I36
8a I37
9a –ES.A +24 V input
Acknowledgment: "Control is ready"
10a –ES.B 24 V input
"Drive enabling"
11a Do not assign
12a Do not assign
1b I18 24 V inputs
2b I19
3b I20
4b I21
5b I22
6b I23
7b I24
8b I25
9b I26
10b I27
11b I28
12b I29

Note

If the integrated PLC inputs do not suffice for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the
UxC 111FS via the HSCI interface.

364 HEIDENHAIN Technical Manual TNC 640


X104—Safety: Connections on the front of the UxC 11xFS:
Dual-channel PLC
 8 dual-channel PLC inputs:
inputs (on the front) I0.A to I7.A
I0.B to I7.B

Terminal Signal designation Assignm. / Function


1a +24 V.A 24 V supply of the outputs O0.A to O7.A
2a +24 V.B 24 V supply of the outputs O0.B to O7.B
3a +24 V.C 24 V supply of the outputs O8.A to O15.A
4a Do not assign
5a I4.B 24 V inputs
6a I5.B
7a I6.B
8a I7.B
9a I4.A
10a I5.A
11a I6.A
12a I7.A
1b Do not assign
2b Do not assign
3b Do not assign
4b Do not assign
5b I0.B 24 V inputs
6b I1.B
7b I2.B
8b I3.B
9b I0.A
10b I1.A
11b I2.A
12b I3.A

Note

It must be ensured that the maximum possible current to the terminals 1a,
2a, and 3a does not exeed 50 A.

Note

If the integrated PLC inputs do not suffice for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the
UxC 111FS via the HSCI interface.

January 2015 3.17 Digital PLC inputs/outputs 365


X6: Single-channel Connections at the top of the UxC 11x:
PLC outputs (at the
 23 single-channel PLC outputs
top) O0 to O22

Terminal Signal designation Assignm. / Function


1a O4 24 V outputs, can be switched off via
2a O5 terminal X4.3a (+24 V PLC.03)
3a O6
4a O7
5a O12 24 V outputs, can be switched off via
6a O13 terminal X4.2a (+24 V PLC.02)
7a O14
8a O15
9a O20 24 V outputs, cannot be switched off
10a O21
11a O22
12a MC.RDY 24 V output
Control-is-ready signal
1b O0 24 V outputs, can be switched off via
2b O1 terminal X4.3a (+24 V PLC.03)
3b O2
4b O3
5b O8 24 V outputs, can be switched off via
6b O9 terminal X4.2a (+24 V PLC.02)
7b O10
8b O11
9b O16 24 V outputs, cannot be switched off
10b O17
11b O18
12b O19

Note

Each output of the UxC 11x can be loaded with a maximum current of
150 mA.

Note

If the integrated PLC outputs do not suffice for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the UxC 11x
via the HSCI interface.

366 HEIDENHAIN Technical Manual TNC 640


X6—Safety: Connections at the top of the UxC 11xFS:
Single-channel PLC
 20 single-channel PLC outputs
outputs (at the top)
Terminal Signal designation Assignm. / Function
1a O4 24 V outputs, can be switched off via
2a O5 terminal X4.3a (+24 V PLC.03)
3a O6
4a O7
5a O12 24 V outputs, can be switched off via
6a O13 terminal X4.2a (+24 V PLC.02)
7a O14
8a O15
9a –TEST.A 24 V output for emergency stop chain
10a –TEST.B 24 V output for emergency stop chain
11a –STOS.A.G 24 V output: (spindle safe torque off)
12a –STO.A.G 24 V output: (safe torque off)
Control-is-ready signal
1b O0 24 V outputs, can be switched off via
2b O1 terminal X4.3a (+24 V PLC.03)
3b O2
4b O3
5b O8 24 V outputs, can be switched off via
6b O9 terminal X4.2a (+24 V PLC.02)
7b O10
8b O11
9b O16 24 V outputs, cannot be switched off
10b O17
11b O18
12b O19

Note

Each output of the UxC 11x can be loaded with a maximum current of
150 mA.

Note

If the integrated PLC outputs do not suffice for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the UxC 11x
via the HSCI interface.

January 2015 3.17 Digital PLC inputs/outputs 367


X106—Safety: Connections on the front of the UxC 11xFS:
Single-/dual-
 8 dual-channel PLC outputs:
channel PLC O0.A to O7.A
outputs (on the O0.B to O7.B
front)
 8 single-channel PLC outputs:
O8.A to O15.A

Terminal Signal designation Assignm. / Function


1a O4.B 24 V outputs, cannot be switched off
2a O5.B
3a O6.B
4a O7.B
5a O4.A
6a O5.A
7a O6.A
8a O7.A
9a O12.A 24 V outputs, can be switched off via
10a O13.A terminal X104.3a (+24 V.C)
11a O14.A
12a O15.A
1b O0.B 24 V outputs, cannot be switched off
2b O1.B
3b O2.B
4b O3.B
5b O0.A
6b O1.A
7b O2.A
8b O3.A
9b O8.A 24 V outputs, can be switched off via
10b O9.A terminal X104.3a (+24 V.C)
11b O10.A
12b O11.A

Note

Each output of the UxC 11x (FS) can be loaded with a maximum current of
150 mA.

Note

If the integrated PLC outputs do not suffice for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the
UxC 111FS via the HSCI interface.

368 HEIDENHAIN Technical Manual TNC 640


3.18 Analog PLC inputs/outputs

Note

The interfaces of the PLA-H 08-04-04 module are electrically separated


from the 230 V line power in accordance with EN 50178 (EN 61800-5-1).
Sensors and external devices that are connected to the PLA-H 08-04-04
module must be supplied exclusively either with 24 V NC or with 24 V PLC.
The inputs and outputs of the module are not galvanically isolated internally.
In the HSCI system, the two supply voltages must not be connected with
each other, however.
Sensors and external devices that are connected to the PLA-H 08-04-04
module and are supplied with 24 V NC must have double basic insulation.

Specifications:

Analog inputs Voltage range: –10 V to +10 V


Input resistance: > 40 kOhm
Resolution: 10 mV

Analog outputs Voltage range: –10 V to +10 V


Load impedance: > 5 kOhm
Output current: < 2 mA
Resolution: 10 mV

Inputs for Pt 100 Measuring current: 2.25 mA


thermistors Temperature range: –4 °C to 120 °C (0xF230 to 0x0000)
Resolution: 0.002 °C

Note

If the module has not been configured correctly with the IOconfig software
for PCs or if errors (exceeding the measuring range, cable breakage, loose
connection, etc.) occur during the measurement, the module transmits a
voltage value of 0.000 V, as well as an accompanying diagnostic message
if temperatures of 120 °C are reached, to the control. To avoid excessive
temperature measurement values, these 120 °C values must not be taken
into account in averaging the measured values. If the measured values fall
below the measuring range, the module transmits a value of –4 °C to the
control.

January 2015 3.18 Analog PLC inputs/outputs 369


Terminals on the
PLA-H 08-04-04
Properties Socket connectors on the PLA-H
08-04-04
Connection: Socket connector with tension clamp
connection, type:
X81, X82:
Weidmüller B2L 3.5/10 SN SW
2-row, 10-pin
X66, X67, X46, X47, X48, X49:
Weidmüller B2L 3.5/6 SN SW
2-row, 6-pin
Connectable conductors: Usable conductor cross sections
without wire-end sleeve:
0.08 mm2 to 1.0 mm2
Usable conductor cross sections with
wire-end sleeve:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller PZ 6/
5 crimping pliers)

Note

HEIDENHAIN recommends:
Preferably use a conductor cross section of 0.34 mm2 if you use stranded
wires with wire-end sleeves. This cross section can be clamped
appropriately and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross
section of 0.5 mm2, the Weidmüller PZ 6/5 crimping pliers (setting 0.25–0.5
mm2) must be used for crimping. In this case, orient the crimped wire-end
sleeve before inserting it into the socket connector. If crimping pliers from
other manufacturers are used for crimping conductors with a cross section
of 0.5 mm2, the crimped wire-end sleeves cannot be inserted into the
socket connector and clamped appropriately, and therefore do not result in
a reliable terminal connection.

Power consumption of a PLA-H 08-04-04 I/O module:


 Without load: 2.6 W
 Under full load: 4.5 W

370 HEIDENHAIN Technical Manual TNC 640


X46 to X49: Pin layout
Analog inputs
Connecting Assignment
terminals
1a/1b –10 V to +10 V (input)
2a/2b 0 V (reference potential)
3a/3b Shield

X66 to X67: Pin layout


Analog output
Connecting Assignment
terminals
1a/1b –10 V to +10 V (output)
2a/2b 0 V (reference potential)
3a/3b Shield

X81 to X82: Pin layout:


Connection for
Pt 100 Connecting Assignment
terminals
1a/1b I+ Constant current for PT 100
2a/2b U+ Measuring input for Pt 100
3a/3b U– Measuring input for PT 100
4a/4b I– Constant current for PT 100
5a/5b Shield

January 2015 3.18 Analog PLC inputs/outputs 371


3.19 Field bus systems
The TNC 640 also has optional standard field bus systems for automation
technology in addition to the HSCI bus.
The following field bus modules can be integrated in the MC of the TNC 640.
These include:
 MC 6541
 MC 6542
 MC 6641
 MC 7522
To integrate the field bus module into the MC, the protective shield on the
front of the MC must be removed. The field bus module can then be inserted
via the plastic guide and screw-fastened.

Note

Ensure that the MC is in de-energized state before installing the field bus
module

3.19.1 PROFIBUS-DP

General PROFIBUS-DP (Process Field Bus - de-central periphery) is a universal field


information bus that is widely used in production and process automation. The bus has
been standardized as per IEC 61158. This enables automation components to
be networked regardless of manufacturer. The PROFIBUS protocol has
similarities to the OSI structure: Each transmission layer implements specific
tasks.
The bit-serial transmission permits fast, cyclic data transfer between the
control (DP master) and local peripherals (DP slaves). The TNC 640 modifies
the usage data from the PROFIBUS telegrams. These data packages are
available for the PLC in an address range. The PLC can write and read to this
range. The information in the address range is cyclically written back to the
PROFIBUS.
PROFIBUS is designed as a master-slave bus architecture. A token is sent in
the bus system. Only entities with a token are permitted to send. Slaves are
not permitted to send, apart from sending an acknowledgement or usage data
for the master.
A PROFINET system can be configured with the IOconfig PC program.
IOconfig creates a configuration file for transfer to the control. This file is the
basis for the operation of the PROFIBUS on the TNC 640.
In addition, the TNC 640 Diagnose Software (BUS diagnosis) is also available,
facilitating error searches.

Note

For more information about PROFIBUS-DP, refer to the website of


PROFIBUS & PROFINET International PI as the leading organization in this
sector.
www.de.profibus.com

372 HEIDENHAIN Technical Manual TNC 640


Use on the MC The PROFIBUS module (ID 828539-xx) is used with the MC or PNC main
computer. The PROFIBUS connection is established via the X121 connection.
Characteristics of the PROFIBUS module:
 The module is always the master in the PROFIBUS network.
 Decentral field bus devices (slaves) from various manufacturers can be
connected. Precondition: The field bus devices are specified as per
PROFIBUS standard, and a suitable GSD file is available for
IOconfig
 Network topology: Line connection (no ring line)
 Transmission speed: Up to 12 Mbit/s
 Maximum slaves on the bus: 32 devices

Non-supported The following functions are not supported on the PROFIBUS module:
functions
 Multimaster operation

January 2015 3.19 Field bus systems 373


Pin layout Pin layout of the X121 connector on the PROFIBUS module:

D-sub connector (female) 9-pin Assignment


1 Not assigned
2 Not assigned
3 Data line B
4 RTS (Request To Send)
5 GND
6 +5 V
7 Not assigned
8 Data line A
9 Not assigned
Housing External shield

All signals on the X121 of the MC main computer are electrically isolated.
The +5 V and GND pins supply the terminating resistor in the connector.

Note

Only use PROFIBUS connectors suitable for this purpose.


Observe requisite termination at the PROFIBUS line ends. Missing or
erroneous bus connections often cause communication problems.

Note

For more information about configuring PROFIBUS on the TNC 640, refer
to the help file of the IOconfig software for PCs.

374 HEIDENHAIN Technical Manual TNC 640


3.19.2 PROFINET-IO

General PROFINET-IO (Process Field Network - Input Output) is an open Industrial


information Ethernet standard developed in accordance with IEC 61158 and IEC 61784-2.
PROFINET-IO is the direct further development of PROFIBUS-DP in Industrial
Ethernet.
The aims of PROFINET-IO is complete communication via field bus and
Ethernet, enabling open, distributed automation. The use of open standards
expands the application range of this field bus. Despite Ethernet, PROFINET-
IO enables the transition of usage data and alarms in real time. This is
supported by channel separation of the usage information and modification of
data in OSI Layer 3.
A PROFINET system can be configured with the IOconfig PC program.
IOconfig creates a configuration file for transfer to the control. This file is the
basis for the operation of the PROFIBUS on the control.
In addition, the Diagnose Software (BUS diagnosis, HwViewer) is also
available, facilitating commissioning and error searches.

Note

For more information about PROFIBUS-IO, refer to the website of


PROFIBUS & PROFINET International PI as the leading organization in this
sector.
www.de.profibus.com

Use on the MC The PROFINET module (ID 828541-xx) is used on the MC or PNC main
computer. The PROFINET connection is established via the X621 or X622
connections. These two connections have an integrated switch, are equal and
can be operated in parallel.
Characteristics of the PROFINET module:
 The module is always the master (IO controller) in the PROFINET network.
 Decentral field bus devices (IO devices) from various manufacturers can be
connected. Precondition: The field bus devices are certified and the correct
GSD file (in gsdml format) is available for IOconfig (from Version 3.0).
 Network topology: Star and/or line connection (no ring line)
 Transmission speed: Up to 100 Mbit/s (Fast Ethernet)
 Maximum IO devices on the bus: 21 devices

January 2015 3.19 Field bus systems 375


Conformance Class To better categorize the performance range of PROFINET devices,
conformance classes (Conformance Class A - C) were introduced. A
conformance class specifies a particular performance range that must be
provided by the device. The conformance classes increase from Class A to
Class C in terms of functional scope. Class C is the performance class with
maximum demands on the field bus devices. Higher performance classes
always contain the function of the classes below.
The PROFINET module is approved for Conformance Class A (CC-A). CC-A
includes e.g. the following characteristics:
 PROFINET basis functionality
 Cyclic real time communication (RT) for process data and alarms (10 ms
response time)
 Acyclic communication for parameter assignment via TCP/IP (100 ms
response time)
 Topology information (LLDP)

Functional IO devices must comply with the following minimum requirements for
preconditions for IO connection to the TNC 640 via the PROFINET module:
devices
 All PROFINET ports must be defined in the GSD file. If these are not defined,
designing the cabling topology is not possible
 The IO device must supply the data block
RealIdentifiactionData (data block index 0xE001) defined in the
PROFINET standard. This data block is used to compare the module
structure of the actual and nominal configuration.
 The IO device must supply the data block ModuleDiffBlock (data block index
0xE002) defined in the PROFINET standard. This data block is used to
compare the module structure of the actual and nominal configuration.
 The IO device must supply the data block
Diagnosis, Maintenance, Qualified and Status (data block index 0x800C)
as defined in the PROFINET standard. This data block is used to read out the
diagnosis messages of the IO device.
 The control software of the TNC 640 and IOconfig support the following
data types as standard for process data: Bit, Integer8, Integer16, Integer32,
Unsigned8, Unsigned16 and Unsigned32. Other types of process data must
be manually mapped in the PLC.
 The module only supports applications with Application Process Identifier
(API) 0
 Diagnosis alarms sent by IO devices must be designed strictly according to
the PROFINET standard.
 Each submodule must continuously supply a positive IOPS (process data)
following commissioning by the TNC control.

376 HEIDENHAIN Technical Manual TNC 640


Non-supported The following functions are not supported on the IO devices:
functions
 Port for automatic deactivation of the machine following shutdown of the
TNC 640
 Fast PLC inputs
 Fast inputs for axis group enabling
 Fast inputs for the spindle
 Implementation for IRT (isochronous real-time, e.g. for motion control)
 Multimaster operation

Note

If the above specifications cannot be complied with, then correct


functionality of the IO devices on the TNC 640 cannot be guaranteed.

Pin layout Connections on the module are RJ45 connections

Pin layout of connectors X621 and X622 on the PROFINET module:

RJ45 connection (female) 8-pin Assignment


1 TX+
2 TX–
3 RX+
4 Not assigned
5 Not assigned
6 RX–
7 Not assigned
8 Not assigned
Housing External shield

January 2015 3.19 Field bus systems 377


Meaning of LEDs on LEDs are positioned on the terminal strip of the PROFINET module to signal
the interface the bus status.

RX/TX
X622
(CH1) LINK

RX/TX
X621
(CH1) LINK

SYS-LED
X622
X621

LED Status Meaning


LINK green On Connection established
Off No connection
RX/TX yellow Blinking Communication active
Off No communication
SYS green On Controller is running
SYS yellow On Controller is waiting for software
SYS yellow Off Controller is defective or not correctly
connected

Note

Only use twisted pair cables and connectors certified for Industrial
Ethernet.

Note

For more information about configuring PROFINET on the TNC 640, refer
to the help file of the IOconfig software for PCs.

378 HEIDENHAIN Technical Manual TNC 640


Error messages The following error messages may occur when configuring
PROFINET on the TNC 640.

Error text Status Explanatory text


No contact to Cause The PROFINET terminal does not
PROFINET terminal respond
Cause Possible causes:
 Error in project setup
 Inconsistent configuration of the
PROFINET terminal name
 Interrupted connection between TNC
and PROFINET terminal
 There is a fault in the PROFINET
terminal
Correction Check the PROFINET topology and
project setup. Acknowledge the error
Comment  A PROFINET terminal is a device
connected via PROFINET to the TNC
 As part of project set up, each
PROFINET terminal is assigned a
unique name
 This name must be identical on the
terminal and in the configuration data
of the PROFINET interface

Error text Status Explanatory text


Faulty module Cause The ACTUAL and NOMINAL
configuration on configuration do not match on the
PROFINET terminal PROFINET terminal:
 A module is configured, but it has not
been plugged into the device
 A different module is configured than is
plugged into the device
Correction Check the hardware setup, the
IOC file and the set options
Correction You can find more information in the
PROFINET diagnostics

January 2015 3.19 Field bus systems 379


Error text Status Explanatory text
Supervisor takes Cause A supervisor has taken control of a
over control of PROFINET terminal connected to the
PROFINET terminal control
Cause The machine cannot be switched back on
until the supervisor has returned control
Correction Tell the supervisor to return control to the
NC control
Correction Acknowledge the error
Correction Switching on the machine
Correction You can find more information in the
PROFINET diagnostics

Note

The error messages specified above cannot be acknowledged by the user.


These remain in the error list until they are rescinded. When all field bus
devices are available again following configuration, the control
automatically resets the error messages.

3.19.3 PROFINET-IO and Python

possible functions The TNC 640 provides Python expansions enabling use of the PROFINET
functions. The following functions are available:
 Read and write data blocks (records)
 Read diagnoses
 Read alarms
These functions are limited to the IO devices saved in the iocp file.

Note

This section details the required processes for accessing


PROFINET with Python. For general operation, please refer to the "Python
in HEIDENHAIN Controls" Technical Manual. The "Python OEM Process"
option (option 46) must be activated for this purpose.

380 HEIDENHAIN Technical Manual TNC 640


Setting up the The PROFINET functions in Python are available after importing the
module libHWSPythonInterface module
import libHWSPythonInterface as _pn
A class Dpv1 is then available. This is instantiated via
obj = _pn.Dpv1 ( address , option )

Parameter Description
address Addresses a submodule on an IO device via a tuple with the
three elements:
 Station name as string
 Slot number as int
 Subslot number as int
option This optional parameter enables the reading of diagnoses or
alarms via a bit mask:
 Bit0 = read diagnosis active
 Bit1 = read alarms active
 Bit2 = also read alarm history

Reading data block To read a data block the following exemplary command line is added to the
source code:
record = obj.Read ( index , size )

Parameter Description
record Returned value: read data block as a string
index Data block as int
size Optional: Maximum number of bytes to be read as int. If this
is undefined, the default value of 4096 is adopted

Writing data block To read a data block the following exemplary command line is added to the
source code:
obj.Write ( index , record )

Parameter Description
record Data block to be written as a string
index Data block index as int

January 2015 3.19 Field bus systems 381


Error reaction These error reactions apply to both methods (reading and writing).
If read or write data block fails, (e.g. the data block does not exist), this method
triggers the "RuntimeError" exception. Following this, querying the "status" or
"controller" attributes from "Dpv1 object" enables an error code of the field bus
device or PROFINET controller to be read out.

Parameter Description
status = A tuple with three elements:
obj.status
 PNIO status
 addVal1
 addVal2
The meaning and coding of these status specifications are
found in the V2.3 PROFINET standard.
status = A long with an error code of the PROFINET controller
obj.controller

If no status information exists (i.e. no error), a "None" is returned.

Note

Please contact HEIDENHAIN Customer Services for further information


about programming Python and PROFINET.

Reading diagnosis To read diagnoses, the "Dpv1 object" with


"option = 1" parameter must be instantiated:
obj = _pn.Dpv1 ( address , 1 )
If an empty tuple is transferred with the "address" parameter, then the
diagnostic information of all field bus devices defined in the iocp file is
returned.
obj = _pn.Dpv1 ( () , 1 )
Both variants can be optionally used. Several "Dpv1 objects" addressing
different field bus devices can be used in parallel.
If the "Read diagnosis" function is active, the "CheckDiag" method must be
cyclically called in the Python script.
diag = obj.CheckDiag ()
If diagnostic information exists, "CheckDiag" generates a tuple with two
elements: The address of the device and the list of diagnostic information
about this device.
If diagnostic information already exists at the time of instantiation, then this is
already generated with the first call of "CheckDiag".

382 HEIDENHAIN Technical Manual TNC 640


Diagnostic With each message, the control software always sends the complete
Information diagnostic condition of a submodule, i.e. the sum of all diagnostic information.
It is therefore not necessary in the Python script to evaluate the specifications
for coming or going with diagnostic information. A single diagnostic
information is transferred via a dictionary with the following keys:
Channel diagnosis

Key Data type Comment


channel long Channel number
channelProperties See properties
errortype long Error code

Expanded channel diagnosis

Key Data type Comment


channel long Channel number
channelProperties See properties
errortype long Error code
extChannelErrorType long Expanded error code
extChannelAddValue long Additional Information

Qualified channel diagnosis

Key Data type Comment


channel long Channel number
channelProperties See properties
errortype long Error code
extChannelErrorType long Expanded error code
extChannelAddValue long Additional information
qualChannelQualifier long Additional information

Manufacturer-specific channel diagnosis

Key Data type Comment


channel long Channel number
channelProperties See properties
usi long User Structure Identifier
identifying the structure of the
subsequent data block
data Manufacturer-specific data block
with diagnostic information

January 2015 3.19 Field bus systems 383


Properties
The "channelProperties" are transferred as a dictionary with the following keys:

Key Data type Comment


specifier string "Failure", "Status" indicates
whether the manufacturer-
specific diagnosis returns an
error or status
type string Data length of the channel
accumulative boolean "False"/"True": Diagnosis applies
to a single channel or group of
channels
maintenance string "Diagnosis", "Required",
"Demanded", "Qualified" indicates
the severity of the error
direction string "ManufacturerSpec", "Input",
"Output", "InputAndOutput"
indicates the data direction

The precise meaning and coding of the values are specified in the V2.3
PROFINET standard or in the manufacturer documentation of the IO device.

Reading alarms To read diagnoses, the "Dpv1 object" with


"option = 2" parameter must be instantiated:
obj = _pn.Dpv1 ( address , 2 )
If an empty tuple is transferred with the "address" parameter, then the
diagnostic information of all field bus devices defined in the iocp file is
returned.
obj = _pn.Dpv1 ( () , 2 )
Both variants can be optionally used. Several "Dpv1 objects" addressing
different field bus devices can be used in parallel.
If the "Read alarm" function is active, the "CheckAlarm" method must be
cyclically called in the Python script.
diag = obj.CheckAlarm ()
If the IO device returns an alarm, "CheckAlarm" generates a tuple with two
elements: The address of the device and the alarm information for this device.
Only the alarm messages from instantiation
of the "Dpv1 object" are generated.

384 HEIDENHAIN Technical Manual TNC 640


Alarm information
The alarm information is transferred as a dictionary with the following keys:

Key Data type Comment


alarmPriority long Alarm priority
alarmType long Alarm type, e.g. remove/connect
module etc.
usi long User Structure Identifier:
Identifies the structure of the
subsequent data
data string Manufacturer-specific data in
accordance with USI

The precise meaning and coding of the values are specified in the V2.3
PROFINET standard or in the manufacturer documentation of the IO device.

Reading alarms To read diagnoses, the "Dpv1 object" with


with history "option = 6" parameter must be instantiated:
obj = _pn.Dpv1 ( address , 6 )
If an empty tuple is transferred with the "address" parameter, then the
diagnostic information of all field bus devices defined in the iocp file is
returned.
obj = _pn.Dpv1 ( () , 6 )
Both variants can be optionally used. Several "Dpv1 objects" addressing
different field bus devices can be used in parallel.
If the "Read alarm" function is active, the "CheckAlarm" method must be
cyclically called in the Python script.
diag = obj.CheckAlarm ()
If the IO device returns an alarm, "CheckAlarm" generates a tuple with two
elements: The address of the device and the alarm information for this device.
For each submodule, the control software buffers up to 32 alarm messages in
a ring buffer. Following instantiation of the "Dpv1 object", "CheckAlarm"
generates all buffered alarm messages in succession in the sequence of their
occurrence (oldest first).
The alarm information is defined in the previous section, "Reading alarms".

January 2015 3.19 Field bus systems 385


3.20 IOconfig

General IOconfig is the project development program for all bus systems that can be
information connected to the
TNC 640 .

IOconfig has the following characteristics:


 Setup of all available bus and field bus systems in a software
• AS interface
• HSCI bus
• PROFIBUS
• PROFINET
• SPI bus
 Clear depiction of the bus structure
 Convenient management of bus devices
 Simple configuration and testing of entered data
 Integrated library with definitions for all connectable HEIDENHAIN
components
 Library function for all previously imported field bus devices (e.g.
PROFIBUS, PROFINET)
 All configurable bus systems together in an iocp file

386 HEIDENHAIN Technical Manual TNC 640


IOconfig from Version 3.0 provides the following new functionality:
 Configuration of PLC input/output systems PL 51x
 IOconfig supports the configuration of HSCI inputs and outputs with special
functionality:
• Output for automatic deactivation of the system following control
shutdown (max. 1 output)
• Fast PLC inputs (max. 5 inputs)
• Fast inputs for axis group enabling (max. 8 inputs)
• Fast inputs for controlling spindles (referencing and stop, max. 5 inputs)
• The NC software evaluates the configuration of these inputs and
outputs
 Configuration of handwheels via HSCI machine operating panels. If a
handwheel was not configured in IOconfig, the control provides a preset
handwheel.

Note

For more information about using IOconfig and configuring the field bus
modules, please refer to the IOconfig online help.

January 2015 3.20 IOconfig 387


HSCI configuration HEIDENHAIN provides device files (HDD files) for all HSCI components with
the technical characteristics of these components. These HDD files are of
critical importance for the configuration of the HSCI system. You should
therefore make sure that you always use the latest version of IOconfig and the
HDD files for the configuration.
When configuring a project, IOconfig takes the description of the HSCI
components from the HDD file and transfers it to the configuration file (iocp
file).

PROFIBUS and Manufacturers of PROFIBUS and PROFINET field bus devices supply the
PROFINET configuration files for commissioning. This GSD (General Station Description)
configuration file contains all requisite information for correct operation of the field bus
device in the specific bus system.
When configuring a PROFIBUS or PROFINET field bus in
IOconfig, GSD files can be imported. These imported GSD files are then
available in the catalog and can be used any number of times. The GSD file is
then no longer needed.

Special information Display of IO devices


for PROFINET
Each PROFINET field device is at least logically integrated into a number of
modules. The first module (slot 0) is always the header assembly, establishing
communication with the higher-level control system, e.g. the TNC 640.
IOconfig does not display the header assembly as an independent module but
outputs its submodules directly below the station level.
Configuration of the bus master - timeout for device readiness
IOconfig specifies 30 seconds as the preset. With use of field bus devices
with long start-up times, it may be necessary to specify a longer waiting time.
Settings on IO devices - transmit clock
HEIDENHAIN always recommends an integral multiple of 1000 µs for the
transmit clock.

Note

IP addresses of IO devices in PROFINET


The TNC 640 does not detect whether IP addresses have been assigned
more than once. The commissioning dialog is capable of solving the
problem, but the TNC 640 cannot provide specific information concerning
collision of the IP addresses.

388 HEIDENHAIN Technical Manual TNC 640


3.21 Buffer battery in MC 7xxx(T), MC 61xx(T)

Note

Make a data backup before changing the buffer battery.

Danger

When exchanging the buffer battery, remember:


 Switch off the machine and the TNC 640.
 The buffer battery may be exchanged only by trained personnel.
 When exchanging the buffer battery, ensure electrostatic discharge
protection. Improper handling can result in damage to the components or
assemblies due to ESD!

Battery type: 1 lithium battery, type CR 2450N (Renata), ID 315878-01


If the voltage of the buffer battery falls below 2.6 V, the error message
Exchange buffer battery appears. If the voltage does not rise above 2.6 V
again, the error message is reactivated after 30 minutes. You can determine
the voltage of the buffer battery with the OLM, see "Diagnosis with the online
monitor (OLM)" on page 1794.
To exchange the battery:
 The buffer battery is on the main board of the MC
 Loosen the screws securing the rear housing cover of the MC
 Remove the cover
 The buffer battery is located on the upper edge of the PCB

Buffer battery

January 2015 3.21 Buffer battery in MC 7xxx(T), MC 61xx(T) 389


 Exchange the buffer battery; the new battery can be inserted in only one
position.

Note

The buffer battery ensures that "continuous" data, e.g. the date and time,
are maintained during a power failure.
After extended storage times (>1.5 years), the buffer battery should be
replaced to avoid shipment of an almost empty battery to the end user.

Please dispose of the batteries safely and in accordance with the applicable
laws and regulations in your country.

390 HEIDENHAIN Technical Manual TNC 640


3.22 Buffer battery in MC 6441, MC 6541, MC 6641

Note

Make a data backup before exchanging the buffer battery.

Danger

When exchanging the buffer battery, remember:


 Switch off the machine and the TNC 640.
 The buffer battery may be exchanged only by trained personnel.
 When exchanging the buffer battery, ensure electrostatic discharge
protection. Improper handling can result in damage to the components or
assemblies due to ESD!

Battery type: 1 lithium battery, type CR 2450N (Renata), ID 315878-01


If the voltage of the buffer battery falls below 2.6 V, the error message
Exchange buffer battery appears. If the voltage does not rise above 2.6 V
again, the error message is reactivated after 30 minutes. You can determine
the voltage of the buffer battery with the OLM, see "Diagnosis with the online
monitor (OLM)" on page 1794.
To exchange the battery:
 The buffer battery is on the main board of the MC
 Loosen the screws securing the housing cover of the MC
 Remove the cover
 The buffer battery is located on the edge of the PCB

Buffer battery

 Exchange the buffer battery. The new battery can be inserted in only one
position.

January 2015 3.22 Buffer battery in MC 6441, MC 6541, MC 6641 391


Note

The buffer battery ensures that "continuous" data, e.g. the date and time,
are maintained during a power failure.
After extended storage times (>1.5 years), the buffer battery should be
replaced to avoid shipment of an almost empty battery to the end user.

Please dispose of the batteries safely and in accordance with the applicable
laws and regulations in your country.

392 HEIDENHAIN Technical Manual TNC 640


3.23 Buffer battery of the MC 6542, IPC 6490

Note

Make a data backup before exchanging the buffer battery.

Danger

When exchanging the buffer battery, remember:


 Switch off the machine and the TNC 640.
 The buffer battery may be exchanged only by trained personnel.
 When exchanging the buffer battery, ensure electrostatic discharge
protection. Improper handling can result in damage to the components or
assemblies due to ESD!

Battery type: 1 lithium battery, type CR 2450N (Renata), ID 315878-01


If the voltage of the buffer battery falls below 2.6 V, the error message
Exchange buffer battery appears. If the voltage does not rise above 2.6 V
again, the error message is reactivated after 30 minutes.
You can determine the voltage of the buffer battery with the OLM, see
"Diagnosis with the online monitor (OLM)" on page 1794.
To exchange the battery:
 The buffer battery is on the main board
 Loosen the screws securing the housing cover
 Remove the cover
 The buffer battery is located on the edge of the PCB

Buffer battery

 Exchange the buffer battery. The new battery can be inserted in only one
position.

January 2015 3.23 Buffer battery of the MC 6542, IPC 6490 393
Note

The buffer battery ensures that "continuous" data, e.g. the date and time,
are maintained during a power failure.
After extended storage times (>1.5 years), the buffer battery should be
replaced to avoid shipment of an almost empty battery to the end user.

Please dispose of the batteries safely and in accordance with the applicable
laws and regulations in your country.

394 HEIDENHAIN Technical Manual TNC 640


3.24 Buffer battery in MC 6240, MC 6241, MC 6341

Note

Make a data backup before exchanging the buffer battery.

Danger

When exchanging the buffer battery, remember:


 Switch off the machine and the TNC 640.
 The buffer battery may be exchanged only by trained personnel.
 When exchanging the buffer battery, ensure electrostatic discharge
protection. Improper handling can result in damage to the components or
assemblies due to ESD!

Battery type: 1 lithium battery, type CR 2450N (Renata), ID 315878-01


If the voltage of the buffer battery falls below 2.6 V, the error message
Exchange buffer battery appears. If the voltage does not rise above 2.6 V
again, the error message is reactivated after 30 minutes.
To exchange the battery:
 The buffer battery is on the main board of the MC
 Loosen the screws securing the housing cover of the MC
 Remove the cover
 The buffer battery is located on the edge of the PCB—next to the slot for
the HDR hard disk in the MC 6241 or MC 6341

Buffer battery

 Exchange the buffer battery. The new battery can be inserted in only one
position.

January 2015 3.24 Buffer battery in MC 6240, MC 6241, MC 6341 395


Note

The buffer battery ensures that "continuous" data, e.g. the date and time,
are maintained during a power failure.
After extended storage times (>1.5 years), the buffer battery should be
replaced to avoid shipment of an almost empty battery to the end user.

Please dispose of the batteries safely and in accordance with the applicable
laws and regulations in your country.

396 HEIDENHAIN Technical Manual TNC 640


3.25 Encoder connections

3.25.1 General information


HEIDENHAIN contouring controls are designed for use with incremental or
absolute linear and angular encoders as measuring systems. The encoder
signals are subdivided 1024-fold.
Encoders with one reference mark or distance-coded reference marks and
with EnDat interface are permissible.
HEIDENHAIN recommends the use of absolute encoders with EnDat interface
or the use of encoders with distance-coded reference marks because they
greatly reduce the traverse distance required to establish the absolute
position.

Note

On controller units with HSCI interface (e.g. CC 61xx, UEC 11x) you can no
longer directly connect encoders with 11 µA signals. You need an adapter,
ID 313119-xx, to adjust the signals.

Please use only HEIDENHAIN encoder cables, connectors and couplings.

Position encoder Speed encoder


Signal amplitude EnDat, 1 VPP (to be EnDat, 1 VPP
defined in
MP_posEncoderSignal)
Input frequency 1 VPP CC 61xx: CC 61xx: 400 kHz
27 kHz/400 kHz (to be
defined in
MP_posEncoderFreq)

Note

Keep in mind the line count of the speed encoders when choosing the
motors:
f ⋅ 60 ⋅ 1000
x = -------------------------------
n

x: line count of the speed encoder


f: maximum input frequency
n: maximum speed

Example:
f = 350 kHz; n = 10 000 min–1

350 ⋅ 60 ⋅ 1000
x = --------------------------------------- ≈ 2048
10000

January 2015 3.25 Encoder connections 397


3.25.2 Position encoder input

X201 to X206: Pin layout:


Position encoder
1 VPP

CC or UEC Adapter cable 309783-xx Encoder


Adapter cable 310199-xx
Male Assignment Female Color Female Male Color
1 +5 V (UP) 1 Brown/Green 12 12 Brown/Green
2 0 V (UN) 2 White/Green 10 10 White/Green
3 A+ 3 Brown 5 5 Brown
4 A– 4 Green 6 6 Green
5 Do not assign 5
6 B+ 6 Gray 8 8 Gray
7 B– 7 Pink 1 1 Pink
8 Do not assign 8
9 +5 V (sensor) 9 Blue 2 2 Blue
10 R+ 10 Red 3 3 Red
11 0 V (sensor) 11 White 11 11 White
12 R– 12 Black 4 4 Black
13 0V 13
14 Do not assign 14 Violet 7 7 Violet
15 Do not assign 15
Hsg. External shield Hsg. External shield Hsg. Hsg. External shield

Pin 1 of connectors X201 to X206 is always at the top right

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

398 HEIDENHAIN Technical Manual TNC 640


X201 to X206: Pin layout:
Position encoder
with EnDat 2.1
interface

CC or UEC Adapter cable 332115-xx Connecting cable, Adapter cable


323897-xx 313791-xx
Male Assign- Female Color Female Male Color Fem. Male Color Fem.
ment
Brown/ Brown/ Brown/
1 +5 V (UP) 1 Green 7 7 Green 7 7 Green 5b
White/ White/ White/
2 0 V (UN) 2 Green 10 10 Green 10 10 Green 6a
Green/ Green/ Green/
3 A+ 3 Black 15 15 Black 15 15 Black 2a
Yellow/ Yellow/ Yellow/
4 A– 4 Black 16 16 Black 16 16 Black 2b

5 Data 5 Gray 14 14 Gray 14 14 Gray 3b


Blue/ Blue/ Blue/
6 B+ 6 Black 12 12 Black 12 12 Black 1a
Red/ Red/ Red/
7 B– 7 Black 13 13 Black 13 13 Black 1b

8 Data 8 Pink 17 17 Pink 17 17 Pink 3a


+5 V
9 (sensor) 9 Blue 1 1 Blue 1 1 Blue 5a

10 Vacant 10 3 3 Red 3 3
0V
11 (sensor) 11 White 4 4 White 4 4 White 6b

12 Vacant 12 2 2 Black 2 2
Internal Internal Internal Internal
13 shield 13 shield 11 11 shield 11 11 shield

14 Clock 14 Violet 8 8 Violet 8 8 Violet 4a

15 Clock 15 Yellow 9 9 Yellow 9 9 Yellow 4b


Ext. External Ext.
Hsg. Housing Hsg. shield Hsg. shield Hsg. shield

Pin 1 of connectors X201 to X206 is always at the top right

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

January 2015 3.25 Encoder connections 399


Note

For cable lengths > 10 m between the CC 61xx or UxC 11x and the
encoders with EnDat interfaces (EnDat 2.1), a line-drop compensator
(336697-xx) is required (efficiency = 75 %).

X201 to X206: Pin layout:


Position encoder
with EnDat 2.2 CC or UEC Adapter cable 673459-xx
interface
Male Assign- Female Color Female
ment
Brown/
1 +5 V (UP) 1 Green 11
White/
2 0 V (UN) 2 Green 12
Vacant
3 A+ 3
Vacant
4 A– 4

5 Data 5 Gray 2
Vacant
6 B+ 6
Vacant
7 B– 7

8 Data 8 Pink 1
+5 V
9 (sensor) 9 Blue 14
Vacant
10 Vacant 10
0V
11 (sensor) 11 White 13
Vacant
12 Vacant 12
Internal Vacant
13 shield 13

14 Clock 14 Violet 10

15 Clock 15 Yellow 9
External
Hsg. Housing Hsg. shield Hsg.

Pin 1 of connectors X201 to X206 is always at the top right

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

400 HEIDENHAIN Technical Manual TNC 640


3.25.3 Speed encoder input

Attention

If you connect angle or linear encoders from HEIDENHAIN to the speed


encoders (such as for torque motors), you must pay attention to the
different connector layouts!
HEIDENHAIN offers special cables and line-drop compensators for such
applications. More information is in the Cable overviews.

X15 to X20: Shaft Pin layout:


speed encoder
1 VPP

CC or UxC(FS) Adapter cable 289440-xx Connecting cable 336847-xx


Male Assignment Female Color Female Male Color Female
1 +5 V (UP) 1 Brown/Green 10 10 Brown/Green 10
2 0 V (UN) 2 White/Green 7 7 White/Green 7
3 A+ 3 Green/Black 1 1 Green/Black 1
4 A– 4 Yellow/Black 2 2 Yellow/Black 2
5 0V
6 B+ 6 Blue/Black 11 11 Blue/Black 11
7 B– 7 Red/Black 12 12 Red/Black 12
8 0V 8 Internal shield 17 17 Internal shield 17
9 Do not assign
10 Do not assign
11 Do not assign
12 Do not assign
13 Temperature + 13 Yellow 8 8 Yellow 8
14 +5 V (sensor) 14 Blue 16 16 Blue 16
15 Do not assign
16 0 V (sensor) 16 White 15 15 White 15
17 R+ 17 Red 3 3 Red 3
18 R– 18 Black 13 13 Black 13
19 C+ 19 Green 5 5 Green 5
20 C– 20 Brown 6 6 Brown 6
21 D+ 21 Gray 14 14 Gray 14
22 D– 22 Pink 4 4 Pink 4
23 Do not assign
24 0V
25 Temperature – 25 Violet 9 9 Violet 9
Hsg. Housing Hsg. External shield Hsg. Hsg. External Hsg.
shield

Pin 1 of connectors X15 to X20 is always at the top right

January 2015 3.25 Encoder connections 401


Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

402 HEIDENHAIN Technical Manual TNC 640


X15 to X20: Speed Pin layout:
encoder with EnDat
interface

CC or UxC(FS) Adapter cable 336376-xx Connecting cable 340302-xx


Male Assignment Female Color Female Male Color Female
1 +5 V (UP) 1 Brown/Green 10 10 Brown/Green 10
2 0 V (UN) 2 White/Green 7 7 White/Green 7
3 A+ 3 Green/Black 1 1 Green/Black 1
4 A– 4 Yellow/Black 2 2 Yellow/Black 2
5 0V
6 B+ 6 Blue/Black 11 11 Blue/Black 11
7 B– 7 Red/Black 12 12 Red/Black 12
8 0V 8 Internal shield 17 17 Internal shield 17
9 Do not assign
10 Clock 10 Green 5 5 Green 5
11 Do not assign
12 Clock 12 Brown 14 14 Brown 14
13 Temperature+ 13 Yellow 8 8 Yellow 8
14 +5 V (sensor) 14 Blue 16 16 Blue 16
15 Data 15 Red 3 3 Red 3
16 0 V (sensor) 16 White 15 15 White 15
17 Do not assign
18 Do not assign
19 Do not assign
20 Do not assign
21 Do not assign
22 Do not assign
23 Data 23 Black 13 13 Black 13
24 0V
25 Temperature – 25 Violet 9 9 Violet 9
Hsg. Housing Hsg. External shield Hsg. Hsg. External Hsg.
shield

Pin 1 of connectors X15 to X20 is always at the top right

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Danger

Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected.

January 2015 3.25 Encoder connections 403


Pin layout (for the LC or RCN):

CC or UxC(FS) Adapter cable 336376-xx Adapter cable


369124-xx
Adapter cable
369129-xx
Male Assignment Female Color Female Male Color
1 +5 V (UP) 1 Brown/Green 10 7 Brown/Green
2 0 V (UN) 2 White/Green 7 10 White/Green
3 A+ 3 Green/Black 1 15 Green/Black
4 A– 4 Yellow/Black 2 16 Yellow/Black
5 0V
6 B+ 6 Blue/Black 11 12 Blue/Black
7 B– 7 Red/Black 12 13 Red/Black
8 0V 8 Internal shield 17 11 Internal shield
9 Do not assign
10 Clock 10 Green 5 8 Violet
11 Do not assign
12 Clock 12 Brown 14 9 Yellow
13 Temperature+ 13 Yellow 8
14 +5 V (sensor) 14 Blue 16 1 Blue
15 Data 15 Red 3 14 Gray
16 0 V (sensor) 16 White 15 4 White
17 Do not assign
18 Do not assign
19 Do not assign
20 Do not assign
21 Do not assign
22 Do not assign
23 Data 23 Black 13 17 Pink
24 0V
25 Temperature – 25 Violet 9
Hsg. Housing Hsg. External shield Hsg. Hsg. External shield
1
2 temper-
ature+
3 temper-
ature–
4

Pin 1 of connectors X15 to X20 is always at the top right

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

404 HEIDENHAIN Technical Manual TNC 640


Pin layout (for the LC or RCN):

CC or UxC(FS) Adapter cable 509667-xx Adapter cable


369124-xx
Adapter cable
369129-xx or RCN
Male Assignment Female Color Female Male Color
1 +5 V (UP) 1 Brown/ 7 7 Brown/
Green Green
2 0 V (UN) 2 White/ 10 10 White/
Green Green
3 A+ 3 Green/ 15 15 Green/Black
Black
4 A– 4 Yellow/ 16 16 Yellow/
Black Black
5 0V
6 B+ 6 Blue/ 12 12 Blue/Black
Black
7 B– 7 Red/Black 13 13 Red/Black
8 0V 8 Int. shield 11 11 Int. shield
9 Do not assign
10 Clock 10 Green 8 8 Violet
11 Do not assign
12 Clock 12 Brown 9 9 Yellow
13 Temperature+ 13 Yellow 5
14 +5 V (sensor) 14 Blue 1 1 Blue
15 Data 15 Red 14 14 Gray
16 0 V (sensor) 16 White 4 4 White
17 Do not assign
18 Do not assign
19 Do not assign
20 Do not assign
21 Do not assign
22 Do not assign
23 Data 23 Black 17 17 Pink
24 0V
25 Temperature – 25 Violet 6
Hsg. Housing Hsg. Ext.shield Hsg. Hsg. Ext. shield

Pin 1 of connectors X15 to X20 is always at the top right

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

January 2015 3.25 Encoder connections 405


X15 to X20: Speed Pin layout (LC x15/EnDat22):
encoder with
EnDat 2.2 interface

CC or UxC(FS) Adapter cable 641926-xx Conn. cable 533661-xx


Male Assignment Female Color Female Male Color Female
1 +5 V (UP) 1 Brown/Green 8 8 Brown/Green 11
2 0 V (UN) 2 White/Green 5 5 White/Green 12
3 A+
4 A–
5 0V
6 B+
7 B–
8 0V
9 Do not assign
10 Clock 10 Violet 7 7 Violet 10
11 Do not assign
12 Clock 12 Yellow 6 6 Yellow 9
13 Temperature+
14 +5 V (sensor) 14 Blue 2 2 Blue 14
15 Data 15 Gray 3 3 Gray 2
16 0 V (sensor) 16 White 1 1 White 13
17 Do not assign
18 Do not assign
19 Do not assign
20 Do not assign
21 Do not assign
22 Do not assign
23 Data 23 Pink 4 4 Pink 1
24 0V
25 Temperature –
Hsg. Housing Hsg. External shield Hsg. Hsg. External shield Hsg.

Pin 1 of connectors X15 to X20 is always at the top right

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Danger

Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected.

406 HEIDENHAIN Technical Manual TNC 640


3.26 Connecting the motor power modules (only CC 61xx)
The TNC 640 is connected with HEIDENHAIN or non-HEIDENHAIN inverters
through a PWM interface.
For a description of the HEIDENHAIN inverter systems, refer to the Technical
Manual "Inverter Systems and Motors." The components required for
operation of the TNC 640 with non-HEIDENHAIN inverter systems are
described in the manual "Technical Information for the Operation of
SIMODRIVE and POWER DRIVE Inverter Systems." The individual PWM
outputs of the CC 61xx are assigned to different controller groups.

For more information on the controller groups of the CC 61xx, see


"Configuring the controller unit and drive motors" on page 1651.

The following applies to the output signals to the power module:


Logic level: 5V
Analog signals IACTL: ±7.5 V
PWM frequency: Can be set at
3333 Hz, 4166 Hz, 5000 Hz, 6666 Hz,
8333 Hz and 10000 Hz
X51 to X56: Pin layout:
PWM-output
Ribbon connector, 20-pin Assignment
1a PWM U1
1b 0 V U1
2a PWM U2
2b 0 V U2
3a PWM U3
3b 0 V U3
4a SH2
4b 0 V (SH2)
5a SH1
5b 0 V (SH1)
6a +IACTL 1
6b –IACTL 1
7a 0 V (analog)
7b +IACTL 2
8a –IACTL 2
8b 0 V (analog)
9a Do not assign
9b BRK
10a ERR
10b RDY

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

January 2015 3.26 Connecting the motor power modules (only CC 61xx) 407
3.27 Analog nominal value output
In the HSCI system, analog nominal-value outputs are available via the
CMA-H 04-04-00, e.g. for controlling spindles and
auxiliary axes.
The CMA-H 04-04-00 is an optional SPI expansion module (ID 688721-xx). It
adds four analog nominal-value outputs to the CC 61xx controller unit or the
UEC 1xx.

Controller unit Number of CMA-H 04- Max. number of nominal-


04-00 modules per unit value outputs
CC 61xx 2 8
UEC 11x 1 4

The CMA-H 04-04-00 is supported by the following CC 61xx and UEC 11x:
 CC 6106 as of ID 662636-01 (as of index A, Jun. 29, 2010)
 CC 6108 as of ID 662637-01 (as of Index A, Jun. 29, 2010)
 CC 6110 as of ID 662638-01 (as of Index A, Jun. 29, 2010)
 UEC 111 as of ID 625777-02 (as of Index A, Feb. 3, 2010)
 UEC 112 as of ID 625779-02 (as of Index A, Feb. 3, 2010)
 UEC 113 as of ID 828471

Note

 The analog nominal value outputs can only be accessed via the NC, and
not via the PLC. The PL 6xxx provides PLC analog outputs, see "Analog
PLC inputs/outputs" on page 369.
 The CMA-H can generally also be used to control axes that are
interpolated together with other digital axes. However, please discuss
such applications with your contact person at HEIDENHAIN beforehand.
 Axes/spindles controlled via the CMA-H module can be operated without
an encoder if necessary.

408 HEIDENHAIN Technical Manual TNC 640


Properties Socket connectors
Output: ±10 V
Smallest voltage step: 0.328 mV
Maximum load capacity of the 10 mA
outputs:
Maximum capacity: 3 nF
Connection: 4 socket connectors with tension
spring connection, type:
Weidmüller B2L 3.5/6 SN SW
2-row, 6-pin
Connectable conductors: Usable conductor cross sections
without wire-end sleeve:
0.08 mm2 to 1.0 mm2
Usable conductor cross sections with
wire-end sleeve:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller PZ 6/
5 crimping pliers)

Note

HEIDENHAIN recommends:
Preferably use a conductor cross section of 0.34 mm2 if you use stranded
wires with wire-end sleeves. This cross section can be clamped
appropriately and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross
section of 0.5 mm2, the Weidmüller PZ 6/5 crimping pliers (setting 0.25–0.5
mm2) must be used for crimping. In this case, orient the crimped wire-end
sleeve before inserting it into the socket connector. If crimping pliers from
other manufacturers are used for crimping conductors with a cross section
of 0.5 mm2, the crimped wire-end sleeves cannot be inserted into the
socket connector and clamped appropriately, and therefore do not result in
a reliable terminal connection.

Each CMA-H 04-04-00 has four analog outputs, see "CMA-H 04-04-00—Pin
layout" on page 410.

Behavior of CMA-H 04-04-00 in case of error:


An error is deemed to be an interruption of the HSCI transmission, insufficient
supply voltage, overtemperature, overcurrent or short circuit of a nominal-
value output. If the module identifies an error, all outputs for 1 ms are actively
switched to 0 V. Then all outputs are switched to 0 V (high impedance) and
remain in this state until a reset.

January 2015 3.27 Analog nominal value output 409


3.27.1 CMA-H 04-04-00—Pin layout

X67: Analog outputs 3 and 4

X66: Analog outputs 1 and 2

X47: Reserved, do not assign

X46: Reserved, do not assign

X46
X47
X66
1 2 3 X67
1 2
b
3

1 2 3
1 2 a
3

CMA-H
Analog outputs
X66: Analog outputs 1 and 2
Function Analog output 1
Connecting terminal 1a 2a 3a
Assignment ±10 V 0V Shield
Function Analog output 2
Connecting terminal 1b 2b 3b
Assignment ±10 V 0V Shield

X67: Analog outputs 3 and 4


Function Analog output 3
Connecting terminal 1a 2a 3a
Assignment ±10 V 0V Shield
Function Analog output 4
Connecting terminal 1b 2b 3b
Assignment ±10 V 0V Shield

Note

The terminals X46 and X47 on the CMA-H 04-04-00 are reserved for future
functions and are not yet supported by the NC software. Please do not
assign them.

410 HEIDENHAIN Technical Manual TNC 640


Note

Please note:
 Connect the shield of the connecting cable leading to the nominal-value
output both to pin 3 a/b on the CMA-H and to the ground potential of the
housing of the CC 61xx or UEC 11x.
HEIDENHAIN recommends using EMC shielding terminals. The max.
distance between the CMA-H and the ground point is 500 mm.
 On the analog servo amplifier, you also connect the shield of the
connecting cable to the ground potential of the housing via an EMC
shielding terminal.
 Use only shielded twisted-pair connecting cables.
 The connecting cables to the nominal-value outputs must not have more
than one intermediate terminal.

Configuration of The drive interface is determined with the parameter MP_axisHw (CfgAxis).
the CMA-H plug-in You must set the value AnalogCC for an (auxiliary) axis or spindle connected to
module the CMA-H plug-in module.
Analog (auxiliary) axes and analog spindles are assigned to the nominal value
outputs on the CMA-H 04-04-00 with MP_analogOutput (CfgAxisAnalog),
see "MP_analogOutput" on page 1091.
A CC 61xx has slots for up to two CMA-H 04-04-00 modules, and a UEC 11x
has a slot for a maximum of one. MP_analogOutput = analog Output 1...4
is used to address the first CMA-H, and the second CMA-H with
MP_analogOutput = analog Output 5...8, see table:

Setting in Active analog output on the CMA-H


MP_analogOutput
analog Output 1 X66: Analog output 1
(SPI slot 1 on CC 61xx or UEC 11x)
analog Output 2 X66: Analog output 2
(SPI slot 1 on CC 61xx or UEC 11x)
analog Output 3 X67: Analog output 3
(SPI slot 1 on CC 61xx or UEC 11x)
analog Output 4 X67: Analog output 4
(SPI slot 1 on CC 61xx or UEC 11x)
analog Output 5 X66: Analog output 1
(SPI slot 2 on CC 61xx)
analog Output 6 X66: Analog output 2
(SPI slot 2 on CC 61xx)
analog Output 7 X67: Analog output 3
(SPI slot 2 on CC 61xx)
analog Output 8 X67: Analog output 4
(SPI slot 2 on CC 61xx)

January 2015 3.27 Analog nominal value output 411


Overview of CMA-H 04-04-00—Schematic wiring diagram
wiring

Analog Drives

±10V
€
€
CC / UEC
0V

Shield

1 Axis

±10V
€
0V

EMC Shield

Shielding clamp 1 Axis

X 66/67
1 Analog axis ±10V 0V Shield
1b 2b 3b

CMA
1a 2a 3a
1 Analog axis

€
EMC
Shielding clamp

412 HEIDENHAIN Technical Manual TNC 640


3.28 Touch probes
The following touch probes can be connected to the TNC 640:
 TS 220, TS 230, TS 260: Touch-trigger probes with cable connection for
workpiece setup and measurement during machining
 TS 440, TS 444, TS 640, TS 642, TS 740, touch-trigger probes with infrared
transmission for workpiece setup and measurement during machining
 TS 460, touch-trigger probe with infrared or radio transmission for
workpiece setup and measurement during machining
 TT 130, TT 140, TT 160, touch probes for tool measurement with cable
connection
 TT 449, touch probe for tool measurement with infrared transmission
 TT 460, touch probe for tool measurement with infrared or radio
transmission

Note

The touch probes are connected to the PLB 620x PLC system module or
UEC 11x at X112 (TS) and X113 (TT).

For suitable connecting cables, see "Cable Overview" at the end of the
chapter.

X112/X113: X112 / X113 pin layout on PLB 62xx and UEC 11x(FS):
Triggering touch
(15-pin D-sub, triple-row)
probe

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Female Assignment of X112 (TS) Assignment of X113 (TT)


1 Trigger signal Trigger signal
2 Trigger signala Trigger signala
3 TS ready Do not assign
4 Battery warning Do not assign
5 + 5 V NC (+/–5 %) + 5 V NC (±5 %)
6 TS start Do not assign
7 TT start TT start
8 0 V NC 0 V NC
9 0 V NC 0 V NC
10 + 24 V NC + 24 V NC
11 TT readyb TT ready
12 Do not assign Do not assign
13 Do not assign Do not assign
14 Do not assign Do not assign
15 Do not assign Do not assign
a. Stylus at rest means logic level HIGH.
b. Only if SE 642 is configured at X112 via machine parameter

January 2015 3.28 Touch probes 413


Load capacity of output voltages of X112, X113:
 Socket 10, +24 V NC: max. 0.8 A
 Socket 5, +5 V NC: max. 0.8 A
The currents are total currents for X112 and X113 together; they are not the
output currents per connector.

Danger

Please note that the outputs of connectors X112 and X113 are supplied
internally with 24 V NC and thus supply NC voltages derived from it at the
outputs.
For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

Readiness of the TS at socket 3 is detected at a voltage of +8 V NC to +24 V


NC.
Wire colors of adapter cable ID 633608-xx for X112/X113 to TS or TT:

X112/X113 on Adapter cable 633608-xx


PLB 62xx or UEC
11x (FS)
Female (D-sub) Male (D-sub) Color Female (M12)
1 1 Not assigned
2 2 Pink 4
3 3 Green 5
4 4 Gray 6
5 5 Not assigned
6 6 Blue 3
7 7 White 7
8 8 Not assigned
9 9 White/Green 1
10 10 Brown/Green 2
11 11 Brown 8
12 to 15 12 to 15 Not assigned

414 HEIDENHAIN Technical Manual TNC 640


3.29 Data interfaces

X26, X116: Ethernet  Maximum cable length:


interface RJ45-port • Unshielded: 100 m
• Shielded: 400 m
 Network topology: Star configuration
A hub serves as a central node that establishes the connection to the other
participants.

Danger

The Ethernet interfaces of the MC 6xxx, MC 7xxx and IPC xxxx comply
with the requirements of PELV ("low voltage electrical separation")
according to EN 61800-5-1 and are powered internally by 24 V NC.

Danger

Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected.

Maximum data transfer rate:


 For integration into the company network via NFS or SMB protocol:
Up to 1 Gbps
 For LSV2 protocol (in conjunction with TNCremo or RemoTools):
2 to 5 Mbps (depending on file type and network utilization)
Assignment for 100 Mb Ethernet interface:

RJ45 connection (female) 8-pin Assignment


1 TX+
2 TX–
3 RX+
4 Do not assign
5 Do not assign
6 RX–
7 Do not assign
8 Do not assign
Housing External shield

January 2015 3.29 Data interfaces 415


Assignment for 1 Gb Ethernet interface (available on all current MCs):

RJ45 connection (female) 8-pin Assignment


1 MX0+
2 MX0–
3 MX1+
4 MX2+
5 MX2–
6 MX1–
7 MX3+
8 MX3–
Housing External shield

Face of the connector:

Meanings of the LEDs on the Ethernet data interface:

LED Status Meaning


Green On Interface active
Off Interface inactive
Orange On 1 Gb interface active
Yellow Flashing 100 Mb network or 1 Gb network
Off 10 Mb network

For more information on the Ethernet interface, see "The Ethernet interface"
on page 2681.

416 HEIDENHAIN Technical Manual TNC 640


X27:  Maximum cable length with RS-232-C/V.24 is 20 meters
RS-232-C/V.24 data
Pin layout:
interface

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

25-pin adapter block:

MC or IPC Conn. cable 365725-xx Adapter block Conn. cable 274545-xx


310085-01
Male Assignment Female Color Female Male Female Male Color Female
1 Do not assign 1 1 1 1 1 White/ 1
Brown
2 RXD 2 Yellow 3 3 3 3 Yellow 2
3 TXD 3 Green 2 2 2 2 Green 3
4 DTR 4 Brown 20 20 20 20 Brown 8
5 Signal GND 5 Red 7 7 7 7 Red 7
6 DSR 6 Blue 6 6 6 6 6
7 RTS 7 Gray 4 4 4 4 Gray 5
8 CTS 8 Pink 5 5 5 5 Pink 4
9 Do not assign 9 8 Violet 20
Hsg. External shield Hsg. Ext. Hsg. Hsg. Hsg. Hsg. Ext. Hsg.
shield shield

9-pin adapter block:

MC or IPC Conn. cable 355484-xx Adapter block Conn. cable 366964-xx


363987-02
Male Assignment Female Color Male Female Male Female Color Female
1 Do not assign 1 Red 1 1 1 1 Red 1
2 RXD 2 Yellow 2 2 2 2 Yellow 3
3 TXD 3 White 3 3 3 3 White 2
4 DTR 4 Brown 4 4 4 4 Brown 6
5 Signal GND 5 Black 5 5 5 5 Black 5
6 DSR 6 Violet 6 6 6 6 Violet 4
7 RTS 7 Gray 7 7 7 7 Gray 8
8 CTS 8 White/ 8 8 8 8 White/ 7
Green Green
9 Do not assign 9 Green 9 9 9 9 Green 9
Hsg. External shield Hsg. External Hsg. Hsg. Hsg. Hsg. External Hsg.
shield shield

January 2015 3.29 Data interfaces 417


3.29.1 USB interface

X141, X142, X143, Pin layout for USB connection (type A):
X144
USB connection (female) 4-pin Assignment
1 +5 V
2 USBP–
3 USBP+
4 GND

Note

If USB components that are connected to one of the USB ports require
more than 0.5 A, a separate power supply becomes necessary for these
components. One possibility is the USB hub (USB 2.0) from HEIDENHAIN
(582884-02).

If a USB hub is connected to one of the USB ports, the maximum permissible
length of the USB cable (ID 624775-xx) is reduced to 20 m.
The MC 61xx, 62xx, MC 63xx, and MC 72xx main computer units feature USB
2.0 interfaces.
The MC 64xx, MC 65xx, MC 66xx, MC 74xx(T), MC 75xx, and IPC 6490 main
computer units feature USB 3.0 interfaces.
Please note, however, that the USB cable with ID 624775-xx only supports
USB 1.1.

USB hub The supply voltage of the USB hub must correspond to protective extra-low
voltage (PELV) as per EN 61800-5-1.

For more information on the USB interface, see "The USB interface of the
TNC 640" on page 2722.

418 HEIDENHAIN Technical Manual TNC 640


3.29.2 HDL interface

X249 Pin layout:

MC 6xxx, X249 Connecting BF 2xx, X2


cable ID
625901-xx
25-pin Assignment 25-pin Assignment
connection connection
1 TD2+ 1 TD2+
2 TD2– 2 TD2–
3 TD1+ 3 TD1+
4 TD1– 4 TD1–
5 TD0+ 5 TD0+
6 TD0– 6 TD0–
7 TC+ 7 TC+
8 TC– 8 TC–
9 Do not assign 9 Do not assign
10 Do not assign 10 Do not assign
11 +5V 11 Do not assign
12 TxD+ 12 RxD+
13 TxD– 13 RxD–
14 TD2S 14 TD2S
15 Do not assign 15 EQSEL1
16 TD1S 16 TD1S
17 Do not assign 17 GND for EQSEL
18 TD0S 18 TD0S
19 Do not assign 19 EQSEL0
20 TCS 20 TCS
21 Do not assign 21 Do not assign
22 Do not assign 22 Do not assign
23 GND 23 GND
24 RxD+ 24 TxD+
25 RxD– 25 TxD–

January 2015 3.29 Data interfaces 419


3.30 MB 720(FS) machine operating panel
For machines with up to six axes, HEIDENHAIN offers the MB 720(FS)
machine operating panel (15-inch) with HSCI interface.
A blue status LED is located over each of the 36 snap-on machine keys. The
LEDs are internally permanently connected with PLC outputs and can
therefore be freely controlled via the PLC program. The output addresses of
the LEDs come from the HDD file of the machine operating panel.

Note

The current HDD files of the HEIDENHAIN operating panel components are
a part of the installation package of IOconfig. You can download the current
HDD files as a ZIP archive from the HESIS-Web Including Filebase on the
Internet (http://hesis.heidenhain.de).
For this area you need access rights.
As an alternative, please get in touch with your contact partner at
HEIDENHAIN to obtain the current HDD file.

On the underside of the machine operating panel are terminal strips bearing
the PLC inputs as well as the PLC outputs. Also, connection X23 for HR
handwheels is on the underside of the MB 720(FS).
It must be ensured that negative pressure cannot develop in the panel in
which the machine operating panel is installed. Negative pressure in the panel
can lead to increased contamination of the machine operating panel, which
must be avoided by enabling pressure compensation, for example via the
cable duct between the electrical cabinet and the panel.

420 HEIDENHAIN Technical Manual TNC 640


Pin layout for MB 720 (FS) Connec- Function Page
tor
X18 Emergency stop (MB) 422
(FS only) (pre-assigned by HEIDENHAIN)
X500 HSCI output 276
X502 HSCI input
X6 PLC inputs 423
X31 X6 X7

X7 PLC outputs 422


X101

X10 Interface to keyboard and 427


potentiometers
X30

X23 Handwheel connection 437


X30 Connection for the handwheel adapter 428
(used only with FS)
X10

X31 Permissive button 425


X500
X502

X23

X13 Connection for the Control Voltage On –


key
(pre-assigned by HEIDENHAIN)
X14 Connection for the NC start key –
X14
X15

(pre-assigned by HEIDENHAIN)
X15 Connection for the NC stop key –
(pre-assigned by HEIDENHAIN)
X101 24 V NC power supply 428
€ Protective ground –

Besides the snap-on keys, there are also keys with switch contacts that can
be wired by the machine tool builder depending on the application.
Specifications of the switch contacts on keys such as EMERGENCY STOP, NC
start, NC stop, Control voltage on:
 Rated voltage: +24 V DC
 Maximum current: 1.2 A
In standard wiring configuration, these keys are supplied with +24 V NC and
the lamps in these keys are driven with +5 V NC / 10 mA. The keys and switch
contacts are not designed to power the two switch contacts or the LED with
different voltages, e.g. one contact with 24 V NC and the other with 24 V PLC.

Note

If the key information is needed for external systems that are supplied with
24 V PLC, HEIDENHAIN recommends forwarding the information through
the PLC program and a normal PLC output.

January 2015 3.30 MB 720(FS) machine operating panel 421


X18: EMERGENCY MB 720 without FS:
STOP on MB

Note

With the MB 720 without FS, the EMERGENCY STOP must be wired
externally in the EMERGENCY STOP chain as before.

Pin layout of the emergency stop button, only relevant to MB 720 without FS:

Connecting Assignment
terminals
11 Emergency stop contact 1 / terminal 1
12 Emergency stop contact 1 / terminal 2
21 Emergency stop contact 2 / terminal 1
22 Emergency stop contact 2 / terminal 2

MB 720FS:
With the MB 720FS, the EMERGENCY STOP is evaluated through two
channels by the control via HSCI and is normally wired via connector X18.
General information on the emergency stop button:
Emergency stop buttons are to be used exclusively for emergency stop
purposes. Under normal operating conditions, a machine must not be
switched off via the emergency stop buttons. The proper functioning of all
emergency stop buttons is to be tested annually by pressing these buttons.

X7: PLC outputs Pin layout:

Connecting Assignment
terminals
1 O0
2 O1
3 O2
4 O3
5 O4
6 O5
7 O6
8 O7
9 +24 V NC (available here)
10 0 V NC (available here)

In the event of an overload or short circuit and as a consequence of excessive


temperature, the individual PLC outputs switch off automatically. Then the
outputs will try to switch on again cyclically.

422 HEIDENHAIN Technical Manual TNC 640


Current carrying capacity of the outputs: Maximum 150 mA per output

Danger

Please note that the outputs of connector X7 are powered internally by +24
V NC, and therefore supply +24 V NC at HIGH level.
For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.
Each of the switching outputs at X7 supplies up to 150 mA of output current
and is provided for driving the lamps on the MB 720(FS).

Note

Immediately after the supply voltage has been switched on, all switching
outputs at X7 switch to HIGH level for approx. 100 ms, which is indicated
by short flashing of the connected lamps. Keep this characteristic in mind
if you connect inductive loads or other consumers to the MB 720.
HEIDENHAIN recommends:
Connect inductive loads and other consumers to the PLC outputs of the
PL 6xxx or UxC 11x. The described effect during switch-on does not occur
there. Use the outputs at X7 only for the control of lamps.

X6: PLC inputs Pin layout of MB 720 without FS:

Connecting Assignment
terminals
1 I0
2 I1
3 I2
4 I3
5 I4
6 I5
7 I6
8 I7
9 Reserved (do not use)
10 Reserved (do not use)

January 2015 3.30 MB 720(FS) machine operating panel 423


Pin layout of MB 720 FS:

Connecting Assignment
terminals
1 I0.A
2 I1.A
3 I2.A
4 I3.A
5 I0.B
6 I1.B
7 I2.B
8 I3.B
9 Power supply for channel A (–TEST.A)
10 Power supply for channel B (–TEST.B)

Danger

Please note that the MB 720(FS) is powered by +24 V NC.


For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. It must also be safely separated from the +24 V
PLC!

424 HEIDENHAIN Technical Manual TNC 640


X31: MB 720, The NC start and NC stop keys are connected directly on the keyboard PCB of
permissive button / the MB via the X14 and X15 connections and are evaluated as with the other
NC start / NC stop machine keys, see "Key assignment for machine operating panel" on page 430.
The keys are configured via the HDD file with IOconfig. Alternatively the keys
can be connected to the X31 connection. In this case the assignment specified
in the tables below applies and separate handling of the keys with IOconfig is
necessary.
The NC start key is a normally open contact, and the NC stop key is normally
closed.

Standard wiring of connection X31 for MB without FS:

Connecting Assignment
terminals
1 Reserved (do not use)
2 Reserved (do not use)
3 Reserved (do not use)
4 Reserved (do not use)
5 Reserved, only use if X14 terminal is vacant:
NC start
6 Reserved (do not use)
7 Reserved, only use if X14 terminal is vacant:
NC Start power supply (+24 V NC)
8 Reserved, only use if X15 terminal is vacant:
NC stop
9 Reserved (do not use)
10 Reserved, only use if X15 terminal is vacant:
NC Stop power supply (+24 V NC)

January 2015 3.30 MB 720(FS) machine operating panel 425


Pin layout of MB with FS:

Connecting Assignment
terminals
1 Optional: Permissive button channel A / terminal 1 (+24 V)
2 Optional: Permissive button channel A / terminal 2
3 Optional: Permissive button channel B / terminal 1 (+24 V)
4 Optional: Permissive button channel B / terminal 2
5 Reserved, only use if X14 terminal is vacant:
NC start channel A / terminal 1
6 Reserved, only use if X14 terminal is vacant:
NC start channel B / terminal 2
7 Reserved, only use if X14 terminal is vacant:
NC start shared terminal (+24 V NC)
8 Reserved, only use if X15 terminal is vacant:
NC stop channel A / terminal 1
9 Reserved, only use if X15 terminal is vacant:
NC stop channel B / terminal 2
10 Reserved, only use if X15 terminal is vacant:
NC stop shared terminal (+24 V NC)

NC start and NC stop are normally-open contacts on the MB (FS).

Danger

Please note that the MB is powered by +24 V NC.


For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

426 HEIDENHAIN Technical Manual TNC 640


X10: Interface to Designation of the terminals:
keyboard and
potentiometers

Pin layout of the ribbon cable (included, length 54 cm):

Connecting Assignment
terminals
1a Potentiometer 1
2a Potentiometer 3
3a Do not assign
4a Do not assign
5a Do not assign
6a +5V
7a 0V
1b Potentiometer 2
2b ---
3b Do not assign
4b Do not assign
5b ---
6b +5V
7b 0V

January 2015 3.30 MB 720(FS) machine operating panel 427


X101: Power supply Pin layout:

Connecting Assignment
terminals
+ / Terminal 1 +24 V NC
– / Terminal 2 0 V NC

Power consumption of the operating panel units without HR handwheel and


controlled inputs/outputs:
Power consumption of the MB 720:4.0 W

X30: Handwheel MB 720 without FS:


connection,
Connection X30 not used on MB 720 without FS.
permissive button /
emergency stop

Note

With the MB 720 without FS, the permissive buttons and the EMERGENCY
STOP of the handwheel must remain externally wired in corresponding
safety circuits!

MB 720FS:
Pin layout of MB 720FS:

Connecting Assignment
terminals
1 Permissive button channel A / terminal 1 (+24 V NC)
2 Permissive button channel A / terminal 2
3 Permissive button channel B / terminal 1 (+24 V NC)
4 Permissive button channel B / terminal 2
5 Emergency stop channel A / supply for channel A (–TEST.A)
6 Emergency stop channel A / terminal 2
7 Emergency stop channel B / supply for channel B (–TEST.B)
8 Emergency stop channel B / terminal 2

428 HEIDENHAIN Technical Manual TNC 640


The emergency stop inputs (pin 6 and pin 8) are active even if the HR
handwheel has been deactivated via machine parameter MP_type
(CfgHandwheel) on NCK-based controls or machine parameter MP7640 on
iTNC 530 controls. It is therefore always necessary to wire the emergency
stop inputs correctly.
Emergency stop buttons are to be used exclusively for emergency stop
purposes. Under normal operating conditions, a machine must not be
switched off via the emergency stop buttons. The proper functioning of all
emergency stop buttons is to be tested annually by pressing these buttons.
General information:

Danger

Please note that the MB 720 is powered by +24 V NC.


For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

January 2015 3.30 MB 720(FS) machine operating panel 429


Key assignment for
machine operating
panel

O1 O2 O3 O4 O5 O6 O7 O8 O9 O10 O11 O12 O13


S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13
Y NC-Stop

O14 O15 O16 O17 O18 O19 O20 O21 O22 O23 O24 O25 O26
S14 S15 S16 S17 S18 S19 S20 S21 S22 S23 S24 S25 S26
NC-Start

O27 O28 O29 O30 O31 O32 O33 O34 O35 O36 O37 O38 O39
S27 S28 S29 S30 S31 S32 S33 S34 S35 S36 S37 S38 S39
Y CVO

430 HEIDENHAIN Technical Manual TNC 640


3.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel
HEIDENHAIN offers the PLB 6001 (FS) HSCI adapter with HSCI interface for
connecting an OEM-specific machine operating panel. The HSCI system
therefore interprets and treats the PLB 6001 (FS) as an MB machine operating
panel.
On the underside of the machine operating panel are terminal strips bearing
the PLC inputs as well as the PLC outputs. Also, connection X23 for HR
handwheels is on the underside of the PLB 6001 (see "Handwheel input" on
page 460).

Danger

Please note that the PLB 6001 (FS) is supplied with +24 V NC.
For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

January 20153.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel 431
PLB 6001 pin layout Connec- Function Page
tor
X500 HSCI output 276
X502 HSCI input
X161

X6 PLC inputs 435


X171

X7 PLC outputs 434


X162

X172

X10 Interface to keyboard and 436


potentiometers
X163

X173
X23

X500
X502

X18 Reserved –
X164

X174

X23 Handwheel connection 460


X165

X30 Reserved –
X31 Permissive button, NC start, NC stop 438
X111

X166

X10

X30
X112

X101 24 V NC power supply 439


X113

X31
+ 24V
X121

X167

X111 Reserved –
X122

X101

X6
X123

X112 Reserved
X7
X168

X18

X113 Reserved
X121 Reserved –
X122 Reserved –
X123 Reserved –
X161 PLC inputs I0 to I7 440
X162 PLC inputs I8 to I15
X163 PLC inputs I16 to I23
X164 PLC inputs I24 to I31
X165 PLC inputs I32 to I39
X166 PLC inputs I40 to I47
X167 PLC inputs I48 to I55
X168 PLC inputs I56 to I63
X171 PLC outputs O0 to O7 441
X172 PLC outputs O8 to O15
X173 PLC outputs O16 to O23
X174 PLC outputs O24 to O31
€ Protective ground –

Attention

Do not engage or disengage any connecting elements while the unit is


under power!

432 HEIDENHAIN Technical Manual TNC 640


PLB 6001 FS pin layout Connec- Function Page
ID 722083-xx tor
X500 HSCI output 276
X502 HSCI input
X161

X171 X6 PLC inputs 435


X7 PLC outputs 434
X162

X172

X10 Interface to keyboard and 436


potentiometers
X163

X173
X23

X500
X502

X18 Emergency stop input 437


X164

X174

X23 Handwheel connection 437


X165

X30 Permissive button, EMERGENCY STOP 438


handwheel
X111

X166

X10

X30

X31 Permissive button, NC start, NC stop 438


X112
X113

X31
+ 24V
X121

X101 24 V NC power supply 439


X167

–
X122

X101

X6
X123

X111 Reserved –
X7
X168

X18

X112 Reserved
X113 Reserved
X121 Reserved –
X122 Reserved –
X123 Reserved –
X161 FS inputs I0.A to I7.A 442
X162 FS inputs I8.A to I15.A
X163 FS inputs I16.A to I23.A
X164 FS inputs I24.A to I31.A
X165 FS inputs I0.B to I7.B
X166 FS inputs I8.B to I15.B
X167 FS inputs I16.B to I23.B
X168 FS inputs I24.B to I31.B
X171 PLC outputs O0 to O7 441
X172 PLC outputs O8 to O15
X173 PLC outputs O16 to O23
X174 PLC outputs O24 to O31
€ Protective ground –

January 20153.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel 433
X7: PLC outputs Pin layout:

Connecting Assignment
terminals
1 O0
2 O1
3 O2
4 O3
5 O4
6 O5
7 O6
8 O7
9 +24 V NC (available here)
10 0 V NC (available here)

Current carrying capacity of the outputs: Maximum 150 mA per output. In the
event of an overload or short circuit and as a consequence of excessive
temperature, the individual PLC outputs switch off automatically. Then the
outputs will try to switch on again cyclically.

Danger

Please note that the outputs of connector X7 are powered internally by +24
V NC, and therefore supply +24 V NC at HIGH level.
For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.
Each of the switching outputs at X7 supplies up to 150 mA of output
current. They are provided for driving the lamps on the operating panel.

434 HEIDENHAIN Technical Manual TNC 640


X6: PLC inputs Pin layout of PLB 6001 without FS:

Connecting Assignment
terminals
1 I0
2 I1
3 I2
4 I3
5 I4
6 I5
7 I6
8 I7
9 Reserved (do not use)
10 Reserved (do not use)

Pin layout of PLB 6001FS:

Connecting Assignment
terminals
1 I0.A
2 I1.A
3 I2.A
4 I3.A
5 I0.B
6 I1.B
7 I2.B
8 I3.B
9 Power supply for channel A (–TEST.A)
10 Power supply for channel B (–TEST.B)

Danger

Please note that the PLB 6001 is supplied with +24 V NC.
For the entire HSCI system, the +24 V NC power supply voltage is required
to be safely separated voltage. It must also be safely separated from the
+24 V PLC!

January 20153.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel 435
X10: Interface to Designation of the terminals:
keyboard and
potentiometers

Pin layout of the ribbon cable (included, length 54 cm):

Connecting Assignment
terminals
1a Potentiometer 1
2a Potentiometer 3
3a Do not assign
4a Do not assign
5a Do not assign
6a +5V
7a 0V
1b Potentiometer 2
2b ---
3b Do not assign
4b Do not assign
5b ---
6b +5V
7b 0V

436 HEIDENHAIN Technical Manual TNC 640


X18: EMERGENCY With the PLB 6001 without FS, the EMERGENCY STOP must be wired
STOP externally in the EMERGENCY STOP chain as before. Connector X18 does not
support dual-channel evaluation of the EMERGENCY STOP button. These
inputs must therefore not be used for evaluating EMERGENCY STOP!
With the PLB 6001FS, the EMERGENCY STOP is evaluated by the control via
HSCI in two channels.
Pin layout X18 for PLB 6001FS:

Connecting Assignment
terminals
1 Power supply for emergency stop channel A (–TEST.A)
2 Emergency stop channel A
3 Power supply for emergency stop channel B (–TEST.B)
4 Emergency stop channel B

Emergency stop buttons are to be used exclusively for emergency stop


purposes. Under normal operating conditions, a machine must not be
switched off via the emergency stop buttons. The proper functioning of all
emergency stop buttons is to be tested annually by pressing these buttons.

X23: Handwheel Pin layout:


input
D-sub connector (female) 9-pin Assignment
1 CTS
2 0V
3 RTS
4 +12 V
5 Do not assign
6 DTR
7 TxD
8 RxD
9 DSR
Housing External shield

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Danger

The connector for the handwheel on the machine operating panel, as well
as the connector on the handwheel itself, may be removed only by trained
and qualified personnel, even if it can be removed without using a tool.
If the handwheel connector is removed, only basic insulation from line
power (230 V) is provided!

January 20153.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel 437
X30: Permissive Pin layout of PLB 6001FS:
button,
EMERGENCY STOP Connecting Assignment
on handwheel terminals
1 Permissive button channel A / terminal 1 (+24 V NC)
2 Permissive button channel A / terminal 2
3 Permissive button channel B / terminal 1 (+24 V NC)
4 Permissive button channel B / terminal 2
5 Emergency stop channel A / supply for channel A (–TEST.A)
6 Emergency stop channel A / terminal 2
7 Emergency stop channel B / supply for channel B (–TEST.B)
8 Emergency stop channel B / terminal 2

X31: Permissive Connection X31 of PLB 6001:


button/NC start,
NC stop Connecting Assignment
terminals
1 Reserved (do not use)
2 Reserved (do not use)
3 Reserved (do not use)
4 Reserved (do not use)
5 NC start
6 Reserved (do not use)
7 NC start power supply (+24 V NC)
8 NC stop
9 Reserved (do not use)
10 NC stop power supply (+24 V NC)

438 HEIDENHAIN Technical Manual TNC 640


Pin layout X31 of PLB 6001FS:

Connecting Assignment
terminals
1 Optional: Permissive button channel A / terminal 1 (+24 V)
2 Optional: Permissive button channel A / terminal 2
3 Optional: Permissive button channel B / terminal 1 (+24 V)
4 Optional: Permissive button channel B / terminal 2
5 NC start channel A / terminal 1
6 NC start channel B / terminal 2
7 NC start shared terminal (+24 V NC)
8 NC stop channel A / terminal 1
9 NC stop channel B / terminal 2
10 NC stop shared terminal (+24 V NC)

Danger

Please note that the PLB 6001 (FS) is supplied with +24 V NC.
For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

X101: Power supply Pin layout:

Connecting Assignment
terminals
+ / Terminal 1 +24 V NC
– / Terminal 2 0 V NC

Power consumption of the operating panel units without HR handwheel and


controlled inputs/outputs:
Power consumption of the PLB 6001(FS):5.0 W

January 20153.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel 439
X161 to X168: PLB 6001 without FS:
PLC inputs
X161: PLC inputs
Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I0 I1 I2 I3 I4 I5 I6 I7

X162: PLC inputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I8 I9 I10 I11 I12 I13 I14 I15

X163: PLC inputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I16 I17 I18 I19 I20 I21 I22 I23

X164: PLC inputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I24 I25 I26 I27 I28 I29 I30 I31

X165: PLC inputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I32 I33 I34 I35 I36 I37 I38 I39

X166: PLC inputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I40 I41 I42 I43 I44 I45 I46 I47

X167: PLC inputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I48 I49 I50 I51 I52 I53 I54 I55

X168: PLC inputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V PLC I56 I57 I58 I59 I60 I61 I62 I63

Note

Please note that at least one terminal 1 of X16x must be supplied with 0 V
PLC for the PLB 6001 to be ready for operation.

440 HEIDENHAIN Technical Manual TNC 640


0 V PLC must be connected to terminal 1.

X171 to X174: PLB 6001 with or without FS:


PLC outputs
X171: PLC outputs
Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 O0 O1 O2 O3 O4 O5 O6 O7 24 V PLC for
O0 to O7

X172: PLC outputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 O8 O9 O10 O11 O12 O13 O14 O15 24 V PLC for
O8 to O15

X173: PLC outputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 O16 O17 O18 O19 O20 O21 O22 O23 24 V PLC for
O16 to O23

X174: PLC outputs


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 O24 O25 O26 O27 O28 O29 O30 O31 24 V PLC for
O24 to O31

Note

Please note that at least one terminal 9 of X171 to X174 must be supplied
with +24 V PLC for the PLB 6001 to be ready for operation.

+24 V PLC must be connected to terminal 9.


Current carrying capacity of the outputs: Maximum 150 mA per output

Note

Please note that the outputs of connectors X171 to X174 are galvanically
isolated internally from the +24 V NC supply voltage supplied via X101. The
outputs can therefore be supplied with +24 V PLC or +24 V NC.

Danger

For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

January 20153.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel 441
X161 to X168: PLB 6001FS:
PLC inputs
X161: PLC inputs channel A
Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I0.A I1.A I2.A I3.A I4.A I5.A I6.A I7.A
PLC

X162: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I8.A I9.A I10.A I11.A I12.A I13.A I14.A I15.A
PLC

X163: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I16.A I17.A I18.A I19.A I20.A I21.A I22.A I23.A
PLC

X164: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I24.A I25.A I26.A I27.A I28.A I29.A I30.A I31.A
PLC

X165: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I0.B I1.B I2.B I3.B I4.B I5.B I6.B I7.B
PLC

X166: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I8.B I9.B I10.B I11.B I12.B I13.B I14.B I15.B
PLC

X167: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I16.B I17.B I18.B I19.B I20.B I21.B I22.B I23.B
PLC

442 HEIDENHAIN Technical Manual TNC 640


X168: PLC inputs channel B
Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001FS 0V I24.B I25.B I26.B I27.B I28.B I29.B I30.B I31.B
PLC

0 V PLC must be connected to terminal 1.

January 20153.31 HSCI adapter for PLB 6001 (FS) OEM-specific machine operating panel 443
3.32 TE 730, TE 720 keyboard unit

TE 730, TE 720
NC operating panel in stainless steel design, for 15-inch, with touchpad
TE 730, TE 720 pin layout

X1

X27

X2
X17 E
X19 F
X60 S X11
F X16
E X22

Connector Function
X2: USB Type B USB connection with BF 750. The TE is connected with
the USB hub of the BF 750. The maximum permissible
cable length for this USB connection is 3 m. The USB hub
of the TE only supports USB 1.1.
X1 Screen soft keys of BF 750 X3 via ribbon cable to
keyboard unit X1
X60 Potentiometer of keyboard unit via ribbon cable to
machine operating panel X10
S, X11 Connection for spindle-speed override potentiometer
(pre-assigned by HEIDENHAIN)
F, X19 Connection for feed-rate override potentiometer. There
are two connections—preassigned by HEIDENHAIN
depending on the arrangement of the feed-rate
potentiometer.
E, X17 Connection for rapid-traverse override potentiometer.
There are two connections—preassigned by
HEIDENHAIN depending on the arrangement of the rapid-
traverse potentiometer.
F, X16 Connection for feed-rate potentiometer, alternative to
X19
E, X22 Connection for rapid-traverse override potentiometer,
alternative to X17
X27 Not used
€ Protective ground (M5)

444 HEIDENHAIN Technical Manual TNC 640


The TE keyboard units are supplied with power via the USB port (USB type B).
USB cables that are connected to the USB ports of the TE keyboard units must
be fixed with the corresponding cable tie to protect the USB connectors from
mechanical load (strain relief).

Possible configurations for the potentiometers of a TE 7xx:


The override potentiometers of a TE 7xx can be configured through the
CfgPlcOverrideDev config object, see "Override" on page 2170.

January 2015 3.32 TE 730, TE 720 keyboard unit 445


3.33 TE 735 (FS) keyboard unit

TE 735(FS), NC operating panel in stainless steel design, for 15-inch, with


touchpad and integrated machine operating panel
TE 735(FS) pin layout

X1

X27

X2
X17 E
X19 F
X60 S X11
F X16
E X22

X31 X6 X7
X500
X14 X502
X15 X30
X23
X10 X101

Connector Function
X2: USB Type B USB connection with BF 750. The TE is connected with
the USB hub of the BF 750. The maximum permissible
cable length for this USB connection is 3 m. The USB hub
of the TE only supports USB 1.1
X1 Screen soft keys of BF 750 X3 via ribbon cable to
keyboard unit X1
X60 Potentiometer of keyboard unit via ribbon cable
(enclosed) to machine operating panel X10
S, X11 Connection for spindle-speed override potentiometer
(pre-assigned by HEIDENHAIN)
F, X19 Connection for feed-rate override potentiometer. There
are two connections—preassigned by HEIDENHAIN
depending on the arrangement of the feed-rate
potentiometer.
E, X17 Connection for rapid-traverse override potentiometer. There are
two connections—preassigned by HEIDENHAIN depending on
the arrangement of the rapid-traverse potentiometer.
F, X16 Connection for feed-rate potentiometer, alternative to X19
E, X22 Connection for rapid-traverse override potentiometer,
alternative to X17
X27 Not used
€ Protective ground (M5)

446 HEIDENHAIN Technical Manual TNC 640


MB connector Function, identical to MB 720(FS) Page

X14 Connection for the NC start key –


(pre-assigned by HEIDENHAIN)

X15 Connection for the NC stop key


(pre-assigned by HEIDENHAIN)

X18 EMERGENCY STOP (only with functional safety (FS)) 422

X500 HSCI output 276

X502 HSCI input

X23 Handwheel connection 437

X10 Potentiometer of X60 keyboard unit via ribbon cable (enclosed) 427

X30 Connection for handwheel: permissive buttons and emergency 428


stop
(only with functional safety (FS))

X31 NC start / NC stop, permissive buttons 425

X6 PLC inputs 423

X7 PLC outputs 422

X101 24 V DC NC power supply 428

€ Protective ground (M5) –

For the pin layouts of the MB, see page 420.


The TE keyboard units are supplied with power via the USB port (USB type B).
USB cables that are connected to the USB ports of the TE keyboard units must
be fixed with the corresponding cable tie to protect the USB connectors from
mechanical load (strain relief).

January 2015 3.33 TE 735 (FS) keyboard unit 447


Possible configurations for the potentiometers of a TE 7xx:
The override potentiometers of a TE 7xx can be configured through the
CfgPlcOverrideDev config object, see "Override" on page 2170.

Machine operating The integrated machine operating panel of the TE 735(FS) is suitable for
panel machines with up to six axes. It is connected with the control system over the
HSCI interface.
A blue status LED is located over each of the 36 snap-on machine keys. The
LEDs are internally permanently connected with PLC outputs and can
therefore be freely controlled via the PLC program. The output addresses of
the LEDs come from the HDD file of the machine operating panel.

Note

The current HDD files of the HEIDENHAIN operating panel components are
a part of the installation package of IOconfig. You can download the latest
IOconfig version and the current HDD files as a ZIP archive from the HESIS-
Web Including Filebase on the Internet (http://hesis.heidenhain.de).
For this area you need access rights.
As an alternative, please get in touch with your contact partner at
HEIDENHAIN to obtain the required HDD file.

On the underside of the machine operating panel are terminal strips where
further PLC outputs and PLC inputs are located. Also, connection X23 for HR
handwheels is on the underside of the MB.
It must be ensured that negative pressure cannot develop in the panel in
which the machine operating panel is installed. Negative pressure in the panel
can lead to increased contamination of the machine operating panel, which
must be avoided by enabling pressure compensation, for example via the
cable duct between the electrical cabinet and the panel.

Danger

Please note that the integrated machine operating panel of the TE 735(FS)
is powered by +24 V NC.
For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

Key assignment for For the key assignment of the integrated MB, see page 430.
machine operating
panel

448 HEIDENHAIN Technical Manual TNC 640


3.34 TE 740 keyboard unit

TE 740, NC operating panel in stainless steel design, for 19-inch, with


touchpad
TE 740 pin layout

X40

X27

X1
X2
X17 E
X19 F
X60 S X11
F X16
E X22

Connector Function
X2: USB Type B USB connection with BF 760. The TE 740 is connected
with the USB hub of the BF 760. The maximum
permissible cable length for this USB connection is 3 m.
The USB hub of the TE 740 only supports USB 1.1.
X40: USB connection for execution of the USB connection
USB Type B from the BF 760 to the USB connector in the front of the TE
X1 Screen soft keys of BF 760 X3 via ribbon cable to
keyboard unit X1
X60 Potentiometer of keyboard unit via ribbon cable to
machine operating panel X10
S, X11 Connection for spindle-speed override potentiometer
(pre-assigned by HEIDENHAIN)
F, X19 Connection for feed-rate override potentiometer. There are
two connections—preassigned by HEIDENHAIN depending
on the arrangement of the feed-rate potentiometer.
E, X17 Connection for rapid-traverse override potentiometer.
There are two connections—preassigned by
HEIDENHAIN depending on the arrangement of the rapid-
traverse potentiometer.
F, X16 Connection for feed-rate potentiometer, alternative to X19
E, X22 Connection for rapid-traverse override potentiometer,
alternative to X17
X27 Not used
€ Protective ground (M5)

January 2015 3.34 TE 740 keyboard unit 449


The TE keyboard units are supplied with power via the USB port (USB type B).
USB cables that are connected to the USB ports of the TE keyboard units must
be fixed with the corresponding cable tie to protect the USB connectors from
mechanical load (strain relief).

Possible configurations for the potentiometers of a TE 7xx:


The override potentiometers of a TE 7xx can be configured through the
CfgPlcOverrideDev config object, see "Override" on page 2170.

450 HEIDENHAIN Technical Manual TNC 640


3.35 TE 745(FS) keyboard unit

TE 745 (FS), NC operating panel in stainless-steel design (corresponds to TE 740),


machine operating panel is integrated (same as MB 720), for 19 inches, with touchpad
TE 745 (FS) pin layout

X40

X27

X1
X2
X17 E
X19 F
S X11
X60
F X16
E X22

X31 X6 X7
X500
X14 X502
X15 X30
X23
X10 X101

Connector for Function


TE keyboard
unit
X2: USB Type B USB connection with BF 760. The TE is connected with the USB hub of the BF 760.
The maximum permissible cable length for this USB connection is 3 m. The USB
hub of the TE only supports USB 1.1
X40: USB Type USB connection for execution of the USB connection from the BF 760 to the USB
B connector in the front of the TE
X1 Screen soft keys of BF 760 X3 via ribbon cable to keyboard unit X1
X60 Potentiometer of keyboard unit via ribbon cable (enclosed) to machine operating
panel X10
S, X11 Connection for spindle-speed override potentiometer
(pre-assigned by HEIDENHAIN)
F, X19 Connection for feed-rate override potentiometer. There are two connections—
preassigned by HEIDENHAIN depending on the arrangement of the feed-rate
potentiometer.
E, X17 Connection for rapid-traverse override potentiometer. There are two
connections—preassigned by HEIDENHAIN depending on the arrangement of the
rapid-traverse potentiometer.
F, X16 Connection for feed-rate potentiometer, alternative to X19
E, X22 Connection for rapid-traverse override potentiometer, alternative to X17
X27 Not used

January 2015 3.35 TE 745(FS) keyboard unit 451


MB connector Function, identical to MB 720(FS) Page
X14 Connection for the NC start key –
(pre-assigned by HEIDENHAIN)
X15 Connection for the NC stop key
(pre-assigned by HEIDENHAIN)
X18 EMERGENCY STOP (only with functional safety (FS)) 422
X500 HSCI output 276
X502 HSCI input
X23 Handwheel connection 437
X10 Potentiometer of X60 keyboard unit via ribbon cable (enclosed) 427
X30 Connection for handwheel: permissive buttons and emergency stop 428
(only with functional safety (FS))
X31 NC start / NC stop, permissive buttons 425
X6 PLC inputs 423
X7 PLC outputs 422
X101 24 V DC NC power supply 428
€ Protective ground (M5) –

For the pin layouts of the MB, see page 420.


The TE keyboard units are supplied with power via the USB port (USB type B).
USB cables that are connected to the USB ports of the TE keyboard units must
be fixed with the corresponding cable tie to protect the USB connectors from
mechanical load (strain relief).

Possible configurations for the potentiometers of a TE 7xx:


The override potentiometers of a TE 7xx can be configured through the
CfgPlcOverrideDev config object, see "Override" on page 2170.

452 HEIDENHAIN Technical Manual TNC 640


Machine operating The integrated machine operating panel of the TE 745 (FS) is suitable for
panel machines with up to six axes. It is connected with the control system over the
HSCI interface.
A blue status LED is located over each of the 36 snap-on machine keys. The
LEDs are internally permanently connected with PLC outputs and can
therefore be freely controlled via the PLC program. The output addresses of
the LEDs come from the HDD file of the machine operating panel.

Note

The current HDD files of the HEIDENHAIN operating panel components are
a part of the installation package of IOconfig. You can download the latest
IOconfig version and the current HDD files as a ZIP archive from the HESIS
Web Including Filebase on the Internet (http://hesis.heidenhain.de).
For this area you need access rights.
As an alternative, please get in touch with your contact partner at
HEIDENHAIN to obtain the required HDD file.

On the underside of the machine operating panel are terminal strips where
further PLC outputs and PLC inputs are located. Also, connection X23 for HR
handwheels is on the underside of the MB.
It must be ensured that negative pressure cannot develop in the panel in
which the machine operating panel is installed. Negative pressure in the panel
can lead to increased contamination of the machine operating panel, which
must be avoided by enabling pressure compensation, for example via the
cable duct between the electrical cabinet and the panel.

Danger

Please note that the integrated machine operating panel of the TE 745(FS)
is powered by +24 V NC.
For the entire HSCI system, the +24 V NC supply voltage is required to be
safely separated voltage. The +24 V NC supply voltage must not, under any
circumstances, be connected with the +24 V PLC supply voltage, because
this removes the double basic insulation.

Key assignment for For the key assignment of the integrated MB, see page 430.
machine operating
panel

January 2015 3.35 TE 745(FS) keyboard unit 453


3.36 BF 750 15-inch TFT display unit
Thanks to its HDL interface, the 15-inch TFT display unit is compatible with all
MC 6xxx main computers with HDL output.

BF 750, 15-inch TFT display unit, stainless-steel design


Pin layout Connector Function Page
X4 Reserved –
X2 HDL connection 455
X140 USB input (Type B) 455
X141 to X144 USB output (Type A) 455

X1 24V X1 +24 V power supply 454


X3 Connection for screen soft 455
keys
X144 X143

X142 X141

X140

X2

X4

X1: +24 V power Connection for the +24 V power supply of the BF 7xx. The screen can be
supply for BF 7xx powered by +24 V NC or +24 V PLC through the integrated power supply unit
of the BF 7xx.

Connecting Assignment
terminals
+ / Terminal 1 +24 V
– / Terminal 2 0V

Power supply: Minimum absolute value: +20.4 V–


Maximum absolute value: +28.8 V–
Power consumption of the BF 750: 50 W

454 HEIDENHAIN Technical Manual TNC 640


X2: HDL connection Port for the HEIDENHAIN display link (HDL) connection for the MC 6xxx
connector X249, see page 419.

X3: Connection of Connection of the screen soft keys to the TE 73x keyboard unit connector X1
screen soft keys via ribbon cable.

X140: USB input Connection for the integrated USB hub to the MC 6xxx connector X141 or
X142.

X141 to X146: USB BF 750: Five freely available connections for additional USB devices. One of
output them on the front of the BF 750.
Maximum load capacity of the five USB outputs of the BF 750:
4 x 500 mA, 1 x 100 mA, distributed as desired

January 2015 3.36 BF 750 15-inch TFT display unit 455


3.37 BF 760 19-inch TFT display unit
Thanks to its HDL interface, the 19-inch TFT display unit is compatible with all
MC 6xxx main computers with HDL output.

BF 760, 19-inch TFT display unit, stainless-steel design


Pin layout Connector Function Page
X4 Reserved –
X2 HDL connection 456
X140 USB input (Type B) 457
X141 to X146 USB output (Type A) 457
X1 +24 V power supply 456
X4 X3 Connection for screen soft 457
keys
X5 Reserved –
X2

X140
X142 X141

X144 X143

X146 X145

X1 24V

X1: +24 V power Connection for the +24 V power supply of the BF 760. The screen can be
supply for BF 7xx powered by +24 V NC or +24 V PLC through the integrated power supply unit
of the BF 760.

Connecting Assignment
terminals
+ / Terminal 1 +24 V
– / Terminal 2 0V

Power consumption of the BF 760: 65 W

X2: HDL connection Port for the HEIDENHAIN display link (HDL) connection to the MC 6xxx
connector X249.

456 HEIDENHAIN Technical Manual TNC 640


X3: Connection of Connection of the screen soft keys to the TE 74x(T) keyboard unit connector
screen soft keys X1 via ribbon cable.

X140: USB input Connection for the integrated USB hub to the MC 6xxx connector X141 or
X142.

X141 to X146: USB BF 760: Six freely available connections for additional USB devices.
output
Maximum load capacity of the six USB outputs of the BF 760:
4 x 500 mA, 2 x 100 mA, distributed as desired

Soft keys The introduction of the 19-inch screen made it possible to offer a second
vertical soft-key row. It is on the left edge of the screen. The keystrokes are
evaluated and processed by the PLC program or a Python program. The table
below shows the key codes of the soft keys in word NP_GenKeyCode:

Soft key Key code, left row Key code, right


row

Soft key 1 (top) 0x150 0x160

Soft key 2 0x151 0x161

Soft key 3 0x152 0x162

Soft key 4 0x153 0x163

Soft key 5 0x154 0x164

Soft key 6 0x155 0x165

Soft key 7 0x156 0x166

Soft key 8 0x157 0x167

Soft key 9 0x158 0x168

Soft key 10 (bottom) 0x159 0x169

Also, new parameters and keywords were introduced for the left soft-key row.
The left soft-key row is displayed as a pop-up menu.

January 2015 3.37 BF 760 19-inch TFT display unit 457


The table below shows the key codes of the horizontal soft keys in word
NP_GenKeyCode:

Soft key Key code of


horizontal row

Scroll to left 0x19E

Soft key 1 (left) 0x180

Soft key 2 0x181

Soft key 3 0x182

Soft key 4 0x183

Soft key 5 0x184

Soft key 6 0x185

Soft key 7 0x186

Soft key 8 0x187

Soft key 9 0x188

Soft key 10 (right) 0x189

Scroll to right 0x19D

Permissible
parameters for
SKMENU

Entry in *.SPJ In connection with Meaning


VROOT SKMENU The menu for the right vertical soft-key row is defined
in the header of the main menu.
HROOT SKMENU The menu for the horizontal soft-key row is defined in
the header of the main menu.
LROOT SKMENU The menu for the left vertical soft-key row is defined
in the header of the main menu.
HRMENU SKMENU Optional: This soft-key menu is a handwheel menu
HRROOT SKMENU Optional: This soft-key menu is the start menu of the
handwheel
IHROOT SKMENU Optional: This soft-key menu is the horizontal start
menu of an ITC terminal.
IVROOT SKMENU Optional: This soft-key menu is the vertical start
menu of an ITC terminal.
EMODE SKMENU The menu for the programming operating modes is
defined in the header of the main menu.
MMODE SKMENU The menu for the machine operating modes is
defined in the header of the main menu.
OMODE SKMENU Optional: This (Python) soft-key menu is only visible in
the OEM operating mode (third screen).
IDENT:<id> SKMENU Optional: Identifier for access from Python processes.

458 HEIDENHAIN Technical Manual TNC 640


Keywords in the
soft-key menus
Entry in *.SPJ Meaning
Keywords for menu definition:
ROWDEF Specifies the position of a soft-key menu that does
not span the entire soft-key row.
SKPREVDEF Defines the key that triggers the page left/up
function.
SKNEXTDEF Defines the key that triggers the page right/down
function.

January 2015 3.37 BF 760 19-inch TFT display unit 459


3.38 Handwheel input
The following handwheels can be used with the TNC 640:
 HR 130 panel-mounted handwheel
 Up to three HR 150 panel-mounted handwheels via HRA 110 handwheel
adapter
 HR 410 (FS) portable handwheel
 HR 520 (FS) portable handwheel with display
 HR 550 (FS) wireless handwheel with display and wireless transmission
The handwheel is connected to the TNC 640 via X23 on the MB machine
operating panel.

3.38.1 HR 4xx (FS) or HR 5xx (FS) portable handwheel


The HR 4xx(FS) and HR 5xx(FS) are portable electronic handwheels.
For the assignment of the keys of the HR 410 to the PLC inputs and outputs,
see "HR 410 portable handwheel" on page 2151.

Pin layout Pin layout for the various extension cables, adapter cables, connecting cables,
and the handwheel:

Extension cable, Adapter cable, For conn. cable ID, see HR 4xx
ID 281429-xx ID 296466-xx "Introduction" chapter.
D-sub D-sub D-sub Mounted Cnnctr. (male) Cnnctr. Connectors
connector cnnctr. connector coupling (5+7)-pin (female) (male)
(male) (female) (male) (female) (5+7)- (5+7)-pin
9-pin 9-pin 9-pin (5+7)-pin pin
Housing Shield Housing Housing Shield Housing Housing Shield Housing Housing Shield
2 White 2 2 White E E White E E
4 Brown 4 4 Brown D D Brown D D
6 Yellow 6 6 Yellow B B Yellow B B
7 Gray 7 7 Gray A A Gray A A
8 Green 8 8 Green C C Green C C
6 6 BK 6 6
7 7 RD/BU 7 7
5 5 Red 5 5
4 4 Blue 4 4
2 2 WH/GN 2 2
3 3 BN/GN 3 3
1 1 GY/PK 1 1
WH/BN 3 Contacts 1 + 2
WH/YE 2 Contact 2 (left) permissive button
WH/GN 1 Contact 1 (right)
WH/BU 1 Contact 1
WH/RD 2 Contact 1 emergency stop
YE/BK 3 Contact 2
WH/BK 4 Contact 2

460 HEIDENHAIN Technical Manual TNC 640


Note

The interfaces comply with the requirements of EN 61800-5-1 for


"protective extra-low voltage (PELV)."

Danger

Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected.

January 2015 3.38 Handwheel input 461


The adapter includes plug-in terminal strips for the contacts of the emergency
stop button and permissive button (max. load 24 V–, 1.2 A).
The plug-in terminal strips are supplied together with the adapter cable. If you
have an immediate need for these terminal strips, they can be ordered in
advance. See the "Additional components" table below.
Internal wiring of the contacts for the emergency stop button and permissive
button:

permissive button 1 permissive button 2 ermergency stop

contact 1

contact 2

cable adapter

contact 2
contact 1
contact 1
contact 2
contact 1+2
contact 2
contact 1

Note

HEIDENHAIN would like to point out that the permissive buttons on the
HR 520, HR 420 and HR 410 handwheels are not cross-circuit proof. If your
machine requires a handwheel with cross-circuit proof permissive buttons,
you must use a HR 410FS or HR 520FS handwheel.

462 HEIDENHAIN Technical Manual TNC 640


You must calculate the probability of failure according to EN 13849-1 for the
safety circuit with permissive-button information. This value is used to
determine a maximum testing time for this safety circuit, which must not be
exceeded. The control must be turned off and on again within this testing
time.
Specifications of the switch contacts in permissive buttons and emergency
stop button
 Rated voltage: +24 V DC
 Maximum current: 1.2 A

Additional components ID
Dummy plug for emergency stop circuit 271958-03
Connecting cable
Spiral cable 312879-01
Normal cable 296467-xx
Metal armor tubing 296687-xx

Plug-in terminal strips for advance ordering


3-pin terminal block 266364-06
4-pin terminal block 266364-12

Pin layout of dummy plug for standard handwheels without FS:

Dummy plug without FS ID 271958-03


Pin Assignment
1 Not assigned
2 Not assigned
3 Not assigned
4 Bridge on pin 4 (emergency stop)
5 Bridge on pin 5 (emergency stop)
6 Bridge on pin 7 (emergency stop)
7 Bridge on pin 6 (emergency stop)
8 Not assigned
A Not assigned
B Not assigned
C Not assigned
D Not assigned

January 2015 3.38 Handwheel input 463


3.38.2 HR 520FS, HR 410FS safety-oriented electronic handwheels
The HR 520FS and HR 410FS handwheels that are now available in addition to
the HR 550 (wireless handwheel system) are devices that, due to their cross-
circuit-safety, can also be integrated in safety-related applications according to
EN 13849.
The handwheels with FS are plug-compatible with the respective handwheels
without FS, thanks to the M23 connecting element, and they have the same
scope of functions. As a result of the new logic behind the permissive buttons,
only one of the two buttons needs to be pressed during permissive mode.

Note

 Due to the changed logic of the permissive buttons, do not replace the
HR 520FS and HR 410FS with the respective variant without FS.
 Please note that even if servicing is required, an HR 520FS may not be
replaced by an HR 520. This also applies to replacing an HR 410FS with
an HR 410, and vice versa.

Because of the change in the principle behind the permissive buttons, we


generally recommend using the safety-oriented handwheels with FS, due to
the cross-circuit-safety of their permissive function.
Only for the HR 550FS wireless handwheel system with HRA 551 FS can the
behavior of the permissive buttons be defined by MP_initValues (see
"MP_initValues" on page 2134).
Also, a new dummy plug is being introduced for FS handwheels in case
servicing is necessary. As before, this dummy plug bridges the emergency
stop, and is adapted to the changed logic for the permissive buttons. The new
dummy plug for FS handwheels is identified by the designation
"Adapterstecker FS" and the ID 271958-05 on the ID label.

Note

 Please note that the dummy plug for FS handwheels may not be
exchanged for the respective variant without FS.
 For reasons of technical safety, only dummy plugs for FS handwheels (ID
271958-05) may be used on systems that have an FS handwheel.
 For reasons of technical safety, only dummy plugs for standard
handwheels (ID 271958-03) may be used on systems that have a
standard handwheel (without FS).

464 HEIDENHAIN Technical Manual TNC 640


Differences Due to the modified internal wiring of the permissive buttons, a cross-circuit-
between the safe signal for evaluation through the safety circuit is now available for the HR
HR 520 and HR 410 520 FS and the HR 410 FS. Cross-circuit-safety is necessary in order to prevent
handwheels a line short-circuit (e.g. defective handwheel cable) from leading to an
unintentional permissive situation on a machine tool.
With the current principle behind the permissive buttons (handwheels without
FS), in normal operation a faulty switching contact (permanently at "1") cannot
be distinguished from a cross-circuit.
With functional safety, only a specific retrograde switching signal of the
permissive buttons is used for enabling (permission), and a cross-circuit or a
defective permissive button can already be detected during the idle state.
Another advantage of the FS handwheels is that only one of the two
permissive buttons (PB) must be pressed during permissive mode. This is
realized through an additional switching contact per permissive button (see
figure). Each of the two permissive buttons triggers a normally closed contact
and a normally open contact. The two contacts are not positively driven,
meaning that if one of the contacts gets jammed, it will not continuously and
erroneously grant permission.

HR 410/HR 520 HR 410FS/HR 520FS


Emergency Stop Emergency Stop

No cross-circuit safety
for permissive buttons

PB.1 PB.2 PB.1


Cross-circuit safty for
permissive buttons
PB.2

X2/ X1/ X1/ X1/ X2/ Handwheel adapter X2/ X1/ X1/ X1/ X2/
1 3 3 1 2 4 2 ID 296 466-xx 1 3 3 1 2 4 2

January 2015 3.38 Handwheel input 465


As a result of the cross-circuit-safety, the information from the permissive
buttons of handwheels with FS must be evaluated differently in the safety
circuit and in the PLC program:

Handwheel without FS Handwheel with FS

X1/1 X1/2 Permission X1/1 X1/2 Permission

0 0 No 0 0 Noa

0 1 No 0 1 No

1 0 No 1 0 Yes

1 1 Yes 1 1 Noa

a. Invalid state: Error (broken wire or cross circuit). This state should
be interrogated in the PLC program, and a corresponding error
message should be displayed.

The safety circuit (e.g. safety contactor combination) and the PLC program
must evaluate the new logic behind the permissive buttons. Only the state X1/
1 = 1 and X1/2 = 0 at the handwheel adapter (ID 296466-xx) is valid for
permission.

Dummy plug The dummy plug is wired as follows:

Dummy plug for Dummy plug for


HR 410/HR 520 HR 410FS/HR 520FS

X2/ X1/ X1/ X1/ X2/ Handwheel adapter X2/ X1/ X1/ X1/ X2/
1 3 3 1 2 4 2 ID 296 466-xx 1 3 3 1 2 4 2

Dummy plug without FS Dummy plug for FS


ID 271958-03 ID 271958-05

X1/1 X1/2 Permission X1/1 X1/2 Permission

0 0 No 0 1 No

466 HEIDENHAIN Technical Manual TNC 640


This results in a unique state that must be achieved after the machine has
been switched on and no permissive button is pressed. At the handwheel
adapter (ID 296466-xx) this state is X1/1 = 0, X1/2 = 0 for standard
handwheels and X1/1 = 0, X1/2 = 1 for FS handwheels. The same state must
also be achieved if the corresponding dummy plug is used. The PLC program
should check this unique state when the machine is switched on, to make
sure that the correct handwheel or dummy plug for the respective machine
configuration is connected. If the expected state is not achieved, an error
message is to be triggered and the machine operator is to be prompted to
attach the correct handwheel or dummy plug. Using an incorrect handwheel
or dummy plug leads to a PLC input (one channel) always carrying the
information that a permissive button is pressed.
Pin layout of dummy plug for FS:

Dummy plug for FS ID 271958-05


Pin Assignment
1 Bridge on pin 2 (permissive button)
2 Bridge on pin 1 (permissive button)
3 Not assigned
4 Bridge on pin 4 (emergency stop)
5 Bridge on pin 5 (emergency stop)
6 Bridge on pin 7 (emergency stop)
7 Bridge on pin 6 (emergency stop)
8 Not assigned
A Not assigned
B Not assigned
C Not assigned
D Not assigned

General notes on Please note the following information when using handwheels and dummy
handling and plugs, and also give this information to your customers:
operation

Note

 Only qualified personnel may connect and exchange handwheels and


dummy plugs.
 It is essential that operative actions (such as pressing the emergency
stop) on handwheels that are not connected are not possible.
Handwheels and dummy plugs that are not connected to the machine,
and are therefore without function, must be removed from the machine.
Handwheels and dummy plugs that are not being used must clearly be
stored away from the machine, such as in a locked cabinet.
 Only FS handwheels and dummy plugs for FS handwheels (ID 271958-05)
may be used on systems that are prepared for FS handwheels.
 Only standard handwheels and dummy plugs for standard handwheels
(ID 271958-03) may be used on systems that are prepared for standard
handwheels (without FS).

January 2015 3.38 Handwheel input 467


Connection Handwheels with FS are connected with the current cables of the HR 4xx and
HR 5xx series of HEIDENHAIN handwheels:

max. 2m
50m
749 369-xx 749 368-xx HRA 551 FS
731 928-xx
296 467-xx HR 550 FS
20m 598 515-xx
606 622-xx
296 466-xx
50m
312 879-01 HR 520 HR 520 FS
3m 670 302-xx 670 304-xx
670 303-xx 670 305-xx
MB 720 296 466-xx 296 467-xx
HR 410 HR 410 FS
MB 620 296 687-xx 296 469-xx 337 159-xx
535 220-xx 578 114-xx
TE 735 VL
TE 745 281 429-xx HR 130
540 940-01
TE 645Q 50m -03
X23
PLB 6001 HRA 110
261 097-xx max. 20 m
683 259-xx HR 150
3 inputs
540 940-06
-07

Pin layout for the various extension cables, adapter cables, connecting cables,
and the handwheel:

Extension cable, ID Adapter cable, ID For connecting cable ID, see


281429-xx 296466-xx "Introduction" chapter.
D-sub D-sub D-sub Mounted Cnnctr. (male) (5+7)-pin Cnnctr. (female)
connector cnnctr. connector coupling (5+7)-pin
(male) 9-pin (female) (male) 9-pin (female)
9-pin (5+7)-pin
Hsg. Shield Housing Hsg. Shield Housing Housing Shield Housing
2 White 2 2 White E E White E
4 Brown 4 4 Brown D D Brown D
6 Yellow 6 6 Yellow B B Yellow B
7 Gray 7 7 Gray A A Gray A
8 Green 8 8 Green C C Green C
6 6 BK 6
7 7 RD/BL 7
5 5 Red 5
4 4 Blue 4
2 2 WH/GN 2
3 3 BN/GN 3
1 1 GY/PK 1
WH/BN X1/3 Contacts A + B (power supply)
WH/YL X1/1 Contact B (permissive button)
WH/GN X1/2 Contact A (permissive button)
WH/BL X2/1 Contact A/Terminal 1 (EMERGENCY STOP)
WH/RD X2/2 Contact A/Terminal 2 (EMERGENCY STOP)
YL/BK X2/4 Contact B/Terminal 1 (EMERGENCY STOP)
WH/BK X2/3 Contact B/Terminal 2 (EMERGENCY STOP)

468 HEIDENHAIN Technical Manual TNC 640


Note

The interfaces comply with the requirements of EN 61800-5-1 for


"protective extra-low voltage (PELV)."

Danger

Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected.

January 2015 3.38 Handwheel input 469


3.38.3 HR 550FS handwheel with wireless transmission
A wireless handwheel system consists of the HR 550FS mobile part and the
HRA 551FS handwheel adapter. The HR 550FS has a rechargeable battery for
mobile operation on the machine. During operation it continuously
communicates via radio with the HRA 551FS handwheel adapter, which
communicates directly with the control via a serial cable connection.
The HRA 551FS handwheel adapter, which functions both as receiving and
charging station for the mobile part, features an M23 connector system for
connection to the control via a standard handwheel adapter. If the wireless
handwheel system is damaged, the dummy plug for the emergency stop
circuit (ID 271958-03) can be used so that the operational readiness of the
machine can be restored quickly.
The wireless handwheel system can be used in many different places thanks
to the 2.4 GHz ISM radio band, which is freely accessible almost all over the
world. The HR 550FS complies with the internationally accepted standards.
For radio communication, the HEIDENHAIN HR 550FS uses 2.4 GHz ZigBee
transmission technology with a special HEIDENHAIN communications
protocol.

470 HEIDENHAIN Technical Manual TNC 640


General The HR 550FS wireless handwheel must always be used together with the
information HRA 551FS handwheel adapter. The handwheel and the handwheel adapter
communicate with each other via radio transmission. The handwheel adapter
is connected to X23 of the control system via the connecting cable.
When the handwheel is located in the HRA, contacts on the HRA and on the
rear of the HR are used to communicate via serial data transmission instead of
via radio transmission. The function of the HR 550FS remains the same,
regardless of whether it communicates via radio transmission or via the
handwheel adapter.
The HRA handwheel adapter features an integrated charger for the handwheel
batteries. In addition, the safety-related signals (emergency stop, permissive
buttons) are translated into relay contacts through the HRA. They must be
used to connect the emergency stop button and the permissive buttons of the
handwheel to the control and the associated safety circuits.

Danger

If more than one control with a portable HR 550FS handwheel is located in


a factory hall, a room or a working area, the handwheels must be identified
by unique color markings. The color marking must be applied to the
handwheel and the associated machine tool at a clearly visible location. The
marking on the handwheel and the machine tool must enable the machine
operator to identify unambiguously which handwheel belongs to which
machine tool. The color marking must ensure that no confusion occurs. A
set of different markers is included with the wireless handwheel.
In addition, the machine operator must be informed that he must ensure/
verify every time before using the handwheel that he uses the correct
handwheel for the respective machine tool.

If the machine operator moves with the HR too far away from the HRA, a
vibration alarm announces that transmission is weak before the machine
operator has actually left the radio range. If the machine operator leaves the
radio range anyway, or if radio communication is interrupted for other reasons,
the HRA relay contacts for emergency stop and for the permissive buttons will
open. You must ensure through appropriate wiring that this triggers an
emergency stop on the control.
HEIDENHAIN also recommends that you always place the wireless
handwheel into the HRA 551FS adapter when you are not using it. This
prevents you from confusing the different handwheels. It also ensures that
the handwheel battery is recharged and prevents an unexpected emergency
stop reaction triggered by an empty battery.

January 2015 3.38 Handwheel input 471


Specifications HR 550FS with HRA 551FS
Radio range (max. distance between Max. 20 m in direct line of sight
the HR and the HRA) (depending on the ambient
conditions)
Ambient temperature during 0 °C to + 40 °C
operation
Ambient temperature for charging + 5 °C to + 40 °C
process of battery (recharging the battery at a
temperature of < + 10 °C may reduce
the battery life)
Storage temperature of NiMH –20 °C to +21 °C with a state of
rechargeable battery charge of 40 %
Power supply for HRA 551FS 12 V
Display resolution 128 x 64 pixels
Power consumption Max. 10 W during charging phase
Batteries Pack with 4 x AA batteries
NiMh 4.8 V / 2400 mAh
Complete charging time Approx. 150 minutes
Life of rechargeable battery Approx. 16 hours with a utilization of
50 %
Radio frequency 2.4 GHz ISM band
Transmitter power 10 mW
Usable number of channels 16 (ZigBee)
Number of possible HRs with Only one wireless HR per machine
wireless transmission tool
Degree of protection IP 54 for HR 551FS
IP 54 for HR 550FS
Service life of the product 20 years
Max. voltage for relay contacts in 250 V ~
HRA 551FS
Max. current for relay contacts in 3.6 A
HRA 551FS
Reaction times of emergency-stop Time until the reaction of the relay
and permissive-button safety contacts: max. 200 ms; typically <
functions 100 ms
FCC-ID YJKHR550FS
Weight of HR 550 1 kg
ID for HR 550FS without mech. 598515-xx
detent
ID for HR 550FS with mech. detent 606622-xx
ID for HRA 551FS 731928-xx

472 HEIDENHAIN Technical Manual TNC 640


Radio transmission This device complies with Part 15 of the FCC Rules. Operation is subject to
regulations the following two conditions:
 This device must not cause harmful interference, and
 this device must accept any interference received, including interference
that may cause undesired operation.
This equipment has been tested and found to comply with the limits for a
Class B digital device, pursuant to Part 15 of the FCC Rules. These limits are
designed to provide reasonable protection against harmful interference in a
residential installation. This equipment generates, uses and can radiate radio
frequency energy. If the equipment is not installed and used in accordance
with the instructions, the equipment may cause harmful interference to radio
communication. There is no guarantee, however, that such interference will
not occur in a particular installation.

Note

This wireless handwheel from HEIDENHAIN must be installed and used in


strict accordance with the manufacturer's instructions as described in this
technical documentation and the User's Manual for your control. Any other
installation or use will violate FCC Part 15 regulations. Modifications not
expressly approved by Dr. JOHANNES HEIDENHAIN GmbH could void
your authority to operate the equipment.

This device must not be co-located or operated in conjunction with any other
antenna or transmitter.

January 2015 3.38 Handwheel input 473


General Thanks to the wireless connection between the handwheel and the control,
information the HR 550FS wireless handwheel system and the HRA 551FS handwheel
adapter provide maximum ease of use to the machine operator. The wireless
communication uses the public, and therefore freely available, 2.4 GHz radio
band via a special radio transmission protocol from HEIDENHAIN.
The wireless handwheel system attains a high and certified safety standard
because of its dual-channel transmission protocol. The safety functions of the
HR 550FS fulfill the requirements of performance level d, category 3,
according to EN ISO 13849-1. Single errors do not lead to the loss of the safety
functions. The service department must be notified if an error occurs. Only the
functions of the permissive buttons and the emergency stop switch are
classified as safety functions of the HR 550FS.
The safety functions must not be bypassed or deactivated in some other way.
Modifying or rebuilding the HRA 551FS and HR 550FS is not permitted and
may lead to a loss of the safety functions.
The machine operator is responsible for identifying the area in which the
wireless handwheel may be used. The wireless handwheel itself does not
provide any configuration possibilities or limit values for defining a certain
maximum range of use.
Because a handwheel is always connected with the movement of axes, the
operator must be able to trigger an emergency stop of the machine by means
of the handwheel at any time. This results in a special situation for the
emergency stop switch of the HR 550FS wireless handwheel system. An
unsafe situation in the radio communication must always trigger a safe
reaction from the control. Therefore, an interference in the radio
communication also means an emergency stop at the HRA 551FS as reaction.
An unexpected emergency stop of the machine is undesirable and may cause
damage to the contour of the workpiece being machined. It is therefore
essential to ensure a noise-free radio communication. Reliable operation of the
wireless handwheel always requires planning the coexistence of the radio
users active in the frequency and radio range concerned. If this cannot be
guaranteed because there is no vacant radio channel available, we strongly
advise against using the wireless handwheel system. HEIDENHAIN cannot
guarantee noise-free radio communication of the HR 550FS wireless
handwheel system and the HRA 551FS.
Even if an available radio channel has been found and the proper functioning
of the system has been ascertained, it is possible that the availability situation
of the 2.4 GHz ISM band will change over a longer period of time. If this
situation cannot be corrected by changing the wireless handwheel system or
the competing radio system to another channel, it may become necessary to
revert to using a handwheel with cable.

474 HEIDENHAIN Technical Manual TNC 640


The following situations lead to an emergency stop through the wireless
handwheel system:
 The HR 550FS wireless handwheel is switched off outside of the
HRA 551FS handwheel adapter
 The radio communication between the HR 550FS wireless handwheel and
the HRA 551FS handwheel adapter is interrupted
 The charge of the handwheel battery becomes too low

Note

 The power-up test of the HR 550FS must be repeated within no more


than 168 hours. The HR 550FS handwheel and the HRA 551FS
handwheel adapter must be turned off and on again to conduct the test.
It must be ensured by the PLC program that this requirement is met.
 To guarantee the HR's emergency-stop and permissive-button safety
functions, the respective contacts must be connected to the emergency
stop chain and further safety circuits (if present) or safe inputs of the
control.

The handwheel requires no maintenance work as long as the HR 550FS can


be operated in conjunction with the HRA 551FS without disturbances or error
messages. In the event of a fault, please inform your service agency. The only
expendable part of the HR 550FS are the rechargeable batteries. If you notice
a marked decrease in battery life, it's time to exchange them (handwheel
batteries, ID 623 166-02).

Revised variants:
 HR 550FS mobile wireless handwheel: ID 598 515-03
 HR 550FS mobile wireless handwheel (with detent): ID 606 622-03
 HRA 551FS base and charging station for HR 550FS: ID 731 928-02
In mid-2012, the wireless handwheel system was revised with respect to the
radio connection. During this modification, the transmitter-receiver electronics
of the wireless handwheel system was improved significantly regarding the
sensitivity to interference.
Please note that the previous versions of the HR550FS and HRA551 and the
new, revised versions cannot be exchanged with each other anymore. This
means that both units (HR and HRA) must be replaced if replacement of a HR
550FS (variant -02 by -03) or HRA 551FS (variant -01 by -02) is necessary.

January 2015 3.38 Handwheel input 475


Connecting the A wireless handwheel system is always connected to the control via the M23
wireless handwheel plug connection of the HRA 551FS. The advantage of this is that the wireless
system handwheel system is also supplied with power via this connection so that no
additional supply lines must be provided.
The serial communication, dual-channel emergency stop and dual-channel
permissive buttons of the HR 550FS mobile part are routed from the
HRA 551FS (M23 plug connection with handwheel cable, ID 296467-xx) via
the corresponding handwheel adapter, ID 749368-xx, to the control hardware.
For this purpose, special, short handwheel cables (ID 296467-xx) in lengths of
1.0 m, 1.5 m and 2.0 m were introduced. The reason for this is the charging
current required for the HR 550FS mobile part. Due to the small cross section
of the handwheel cable it can be transmitted only over short distances. This
means that longer cables with ID 296467-xx cannot be used for the wireless
handwheel system. If longer handwheel cables are required, HEIDENHAIN
should be consulted. A maximum distance of 50 m between X23 (MC 4xx or
MB 620/PLB 6001 for HSCI) and the HRA 551FS base station can be attained
by using the adapter cable ID 749368-xx and the optional extension cable
ID 749369-xx (with a handwheel cable, ID 296467-xx, with a length of max.
2.0 m).

50m

max. 2m
HRA 551 FS HR 550 FS
749 368-xx
731 928-xx 598 515-xx
606 622-xx
296 467-xx

20m
749 369-xx

296 466-xx

50m
312 879-01
HR 520
3m 670 302-xx
296 467-xx 670 303-xx
296 466-xx HR 410
296 687-xx 296 469-xx
535 220-xx
VL
281 429-xx HR 130
540 940-01
50m -03
X23
HRA 110
683 259-xx 261 097-xx max. 20 m HR 150
3 Eingänge
540 940-06
-07

476 HEIDENHAIN Technical Manual TNC 640


Use of available cable connections:
For cable lengths up to 22 m, the existing cable connections for HEIDENHAIN
handwheels of the HR 4xx and HR 5xx series can be used to retrofit a wireless
handwheel system. The existing handwheel connecting cables must be
checked regarding their length and the possibility of connecting a wireless
handwheel system. Please refer to the cable overview shown above for the
wireless handwheel system.

The relay contacts for the permissive buttons and emergency stop button on
the HRA are four individual, normally open contacts. This information can then
be picked up at the cable adapter.
 Behavior of the emergency stop contacts
When the emergency stop button is not pressed, the relays are actuated,
and therefore the relay contacts are closed. If an emergency stop is
triggered, the control voltage of the relays will be switched off and the relay
contacts will open. For the control and the associated safety circuits, the
relay contacts have the same effect as normally closed contacts.
If the batteries of the wireless handwheel are empty or if the wireless
handwheel is out of range, the relay contacts are open.
 Behavior of the contacts for the permissive buttons
Depending on the setting in MP_initValues[3], the permissive buttons are
represented as two normally open contacts, or as one normally open
contact and one normally closed contact. This makes it possible to adapt the
handwheel (permissive buttons) to the requirements of the planned safety
design of the respective machine.
HEIDENHAIN recommends setting the MP_initValues[3] to 1 to make the
handwheel permissive buttons cross-circuit proof. To ensure compatibility
with previous machine designs, MP_initValues[3] is set to 0 by default.
• MP_initValues[3] = 0:
When neither of the two permissive buttons is pressed, both relays are
without control voltage, and therefore the relay contacts are open.
When at least one permissive button is pressed, both relays are
actuated and both relay contacts close.
• MP_initValues[3] = 1:
When neither of the two permissive buttons is pressed, one of the
relays is without control voltage, and relay contact A is open. When at
least one of the permissive button is pressed, the relay is actuated and
relay contact A closes. When neither of the two permissive buttons is
pressed, control voltage is applied to the other relay and relay contact B
is closed. When at least one of the permissive button is pressed, the
relay is not actuated anymore and relay contact B opens.
MP_initValues[3] must be set to 1 for machines with HEIDENHAIN
functional safety.

Note

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

January 2015 3.38 Handwheel input 477


MP_initValues
[3]: Cross-circuit-proof handwheel
(compare to iTNC 530: MP7645.3)
Available from NCK software version: 597110-06.
Format: Array
Input: [3] = 0: Channel A, normally open contact; channel B, normally
open contact (not cross-circuit-proof)
[3] = 1: Channel A, normally open contact; channel B, normally
closed contact (cross-circuit-proof)
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN
Pin layout for the various extension cables, adapter cables, connecting cables,
and the handwheel:

Extension cable, Adapter cable, For connecting cable ID, HRA 551FS
ID 281429-xx ID 296466-xx see "Introduction"
chapter.
D-sub D-sub D-sub Mounted Cnnctr. (male) Cnnctr.
connector cnnctr. connector coupling (5+7)-pin (female)
(male) 9-pin (female) (male) 9-pin (female) (5+7)-pin
9-pin (5+7)-pin
Hsg. Shield Housing Hsg. Shield Housing Hsg. Shield Housing Hsg. Internal
X230
2 White 2 2 White E E White E E
4 Brown 4 4 Brown D D Brown D D
6 Yellow 6 6 Yellow B B Yellow B B
7 Gray 7 7 Gray A A Gray A A
8 Green 8 8 Green C C Green C C
WH/BK 6 6 BK 6 6 8
YL/BK 7 7 RD/BL 7 7 7
WH/RD 5 5 Red 5 5 5
WH/BL 4 4 Blue 4 4 6
WH/GN 2 2 WH/GN 2 2 3
WH/YL 3 3 BN/GN 3 3 1
WH/BN 1 1 GY/PK 1 1 4, 2
WH/BN X1/3 Contacts A + B
WH/YL X1/1 Contact B (permissive button)
WH/GN X1/2 Contact A (permissive button)
WH/BL X2/1 Contact A/Terminal 1 (EMERGENCY STOP)
WH/RD X2/2 Contact A/Terminal 2 (EMERGENCY STOP)
YL/BK X2/4 Contact B/Terminal 1 (EMERGENCY STOP)
WH/BK X2/3 Contact B/Terminal 2 (EMERGENCY STOP)

Note

The interfaces comply with the requirements of EN 61800-5-1 for


"protective extra-low voltage (PELV)."

478 HEIDENHAIN Technical Manual TNC 640


Danger

Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected.

January 2015 3.38 Handwheel input 479


The cable adapter includes plug-in terminal strips for the contacts of the
emergency stop button and permissive button (max. load 24 V–, 1.2 A).
The plug-in terminal strips are supplied together with the adapter cable. If you
have an immediate need for these terminal strips, they can be ordered in
advance. See the "Additional components" table below.
Wiring of the contacts for the emergency stop button and permissive button:

MP_initValues = 0

MP_initValues = 1

Additional components ID
Connecting cable
Spiral cable 312879-01
Normal cable 296467-xx
Metal armor tubing 296687-xx

Plug-in terminal strips for advance ordering


4-pin terminal block 266364-12

480 HEIDENHAIN Technical Manual TNC 640


Prerequisites for The following conditions must be taken into account for the operation of a
use of the wireless wireless handwheel system:
handwheel system
 The TNC 640 requires NC software version 34059x-02 or higher
 The use of radio equipment in the 2.4 GHz range must be generally
permitted at the intended place of use (end user's site)
 Country-specific and customer-specific requirements and regulations for
radio equipment at the intended place of use of the wireless handwheel
system must be taken into account
 At the intended place of use, every wireless handwheel system from
HEIDENHAIN needs a suitable and vacant radio channel in the 2.4 GHz ISM
band. If this cannot be guaranteed, we advise against using the wireless
handwheel system (see "Important notes on the radio network of the
wireless handwheel system" on page 482 and see "Checking the radio
environment at the intended place of use" on page 483).
 If several wireless handwheel systems from HEIDENHAIN are to be used
within a certain range, an individual free channel must be selected for each
wireless handwheel system
 If there are not enough vacant radio channels available for the wireless
handwheel systems and identical channel numbers have to be used for the
wireless handwheel systems because of other ISM band participants, a
minimum distance of 200 m must be maintained between the HRA 551FS
base stations. In addition, the transmitting and receiving power of the
wireless handwheel system can be reduced during commissioning. Three
power stages are available for this. They are set using the wireless
handwheel configuration dialog on the control
Ideally, "coexistence planning" for all ISM band participants is available for the
intended place of use of the wireless handwheel system. The coexistence
planning includes all radio participants and the radio channel or radio range
they are using. This planning can be used to determine whether a vacant radio
channel is available for the wireless handwheel, and therefore whether a
wireless handwheel system can be used.

January 2015 3.38 Handwheel input 481


Important notes on The HEIDENHAIN wireless handwheel system uses the ISM band in the
the radio network frequency range of 2.405 GHz to 2.480 GHz up to a maximum transmission
of the wireless power of 10 mW. As the ISM band generally is a freely accessible frequency
handwheel system range worldwide (country-specific restrictions must be checked individually
for the country of destination), many radio systems have been developed for
this range. As other radio systems can disturb the radio transmission of the
wireless handwheel system, a vacant radio channel (ZigBee channels 11 to 26)
is always required to ensure noise-free radio communication between the HR
550FS and HRA 551FS.
Since a handwheel is always connected with the movement of axes, the
operator must be able to trigger an emergency stop of the machine by means
of the handwheel at any time. This results in a special situation for the
emergency stop switch of the HR 550FS wireless handwheel system. An
unsafe situation in the radio communication must always trigger a safe
reaction from the control. Therefore, an interference in the radio
communication also means an emergency stop at the HRA 551FS as reaction.
An unexpected emergency stop of the machine is undesirable and may cause
damage to the contour of the workpiece being machined. It is therefore
essential to ensure a noise-free radio communication. Reliable operation of the
wireless handwheel always requires planning the coexistence of the radio
users active in the frequency and radio range concerned. If this cannot be
guaranteed because there is no free radio channel available, we advise against
using the wireless handwheel system.
HEIDENHAIN cannot guarantee noise-free radio communication of the
HR 550FS wireless handwheel system with the HRA 551FS. Even if an
available radio channel has been found and the proper functioning of the
system has been ascertained, it is possible that the availability situation of the
2.4 GHz ISM band will change later on. If this situation cannot be corrected by
changing the wireless handwheel system or the competing radio system to
another channel, it may become necessary to revert to using a handwheel
with cable. HEIDENHAIN therefore offers the HR 520 handwheel with cable
as an alternative.
If a wireless handwheel is to be operated in an unsafe radio environment
anyway, the HR 550FS mobile part must be placed into the charging position
of the HRA 551FS if a critical situation occurs, in which a workpiece could be
damaged through an emergency stop. The contacts on the HR 550FS and the
HRA 551FS provide a direct contact between the mobile part and the base
station, and therefore communication is independent of the radio connection.

482 HEIDENHAIN Technical Manual TNC 640


Checking the radio The following procedure is very important to determine whether a wireless
environment at the handwheel system can be used in a certain radio environment:
intended place of
use

Procedure  Clarification of whether the HEIDENHAIN wireless handwheel system is


allowed to use the 2.4 GHz ISM band in the customer's area (country-
specific and company-internal regulations at the intended place of use and
the end user's site must be taken into account)
 Inquiry about known radio participants at the end user's site. Ideally, the end
user can provide information regarding the utilization of the 2.4 GHz ISM
band at the intended place of use of the wireless handwheel
 If the customer cannot provide exact information about which devices are
using the 2.4 GHz ISM band at the intended place of use, we recommend
performing measurements with a suitable spectrum analyzer and a WLAN
detector. HEIDENHAIN recommends performing the measurements using
a spectrum analyzer to obtain a utilization profile of the 2.4 GHz ISM band,
see page 484. It is also possible to use a WLAN-capable laptop and the
"Network Stumbler" PC software which is available free of charge on the
Internet, see page 484.
 Selection and determination of an available radio channel for the wireless
handwheel system
 If no available radio channel can be found despite the above-mentioned
measures, we advise against using the wireless handwheel system

WLAN networks In production environments, the ISM band is most frequently used by WLAN
networks. Due to their transmitting/receiving characteristics and the
transmitting power to be expected, these networks are not suitable for being
operated in the same frequency range as a wireless handwheel system. A
wireless handwheel system must always be operated outside the frequency
range of a WLAN network.

January 2015 3.38 Handwheel input 483


Evaluation of the The radio environment must be evaluated at the intended place of use under
radio environment the specific local conditions. All radio devices in the environment should be
active for the evaluation.
HEIDENHAIN recommends performing the measurements using a "Wi-Spy
WLAN USB 2.4x Spectrum Analyzer" to obtain a utilization profile of the 2.4-
GHz ISM band. This USB device for PCs together with the associated
Chanalyzer 3.4 software makes it possible to appropriately visualize the radio
activity in the frequency spectrum and to identify other WLAN networks that
could interfere with the connection.
The "Network Stumbler" software for PCs can be used as an alternative.
However, it is only capable of detecting WLAN networks. The identified
WLAN networks are displayed in an easy-to-read list. The channel used by the
network is listed next to the name of the WLAN network. A radio channel
outside the frequency range of a WLAN network must be selected for the
wireless handwheel system.
Figure 1: Spectrum analyzer view of radio environment
Three WLAN networks have been identified in this example environment. In
this example, the wireless handwheel must be set on a vacant radio channel
outside the frequency range of the WLAN networks.

Note

The channel designations in the dialog of the control are numbered


consecutively from 0 to 15 and do not correspond to the official ZigBee
channel numbers. WiFi (WLAN) networks have channel frequencies and
also channel designations, which, however, differ from those of the
wireless handwheel system (ZigBee), see page 486.

484 HEIDENHAIN Technical Manual TNC 640


Figure 2: Possible position of radio channel
Three WLAN networks have been identified in this example environment. In
this example, the wireless handwheel could be set on the vacant ZigBee
channel 15 outside the WLAN networks. The diagram shows the typical curve
of a ZigBee radio device (white curve), such as the HR 550FS. Another
possibility would be one of the vacant ZigBee channels 14, 20, 21 or 26.

Figure 3: Radio channel of wireless handwheel collides with WLAN


In this example, the radio channel of the wireless handwheel is located in the
range of the first WLAN network. This makes noise-free operation of the
wireless handwheel impossible. Another channel must be selected for the
wireless handwheel. In this case, ZigBee channel 20, 25 or 26 would be
possible.

January 2015 3.38 Handwheel input 485


Information in the The general procedure for the configuration of the HR 550FS handwheel is
handwheel described in the TNC 640 User's Manual.
configuration
To access the handwheel configuration dialog, proceed as follows:
dialog
 Press the MOD key
 Scroll through the soft-key row
 Press the SET UP WIRELESS HANDWHEEL soft key

HEIDENHAIN generally recommends that in Channel setting you manually


define the radio channel to be used. To select a vacant radio channel, please
follow the information provided in this document. We advise against using the
Best channel setting because it does not allow planning for the radio
environment, and therefore unexpected disturbances during the operation of
the wireless handwheel system may occur.

486 HEIDENHAIN Technical Manual TNC 640


Channel setting The channel designations in the dialog of the control are numbered
consecutively from 0 to 15 and do not correspond to the ZigBee channel
numbers. Channel 0 at 2.405 GHz in the dialog on the control corresponds to
ZigBee channel 11; channel 1 at 2.410 GHz in the dialog on the control
corresponds to ZigBee channel 12, and so on. With the next software
versions, the ZigBee channel numbers will also be displayed in the dialog on
the control. The diagram below shows the relationship between the channel
designations in the dialog on the control and the ZigBee channel numbers.
WiFi (WLAN) networks have channel frequencies and also channel
designations, which, however, differ from those of the wireless handwheel
system (ZigBee). For example, the WLAN channel 13 is at 2.472 GHz, and the
wireless handwheel channel 13 is at 2.415 GHz. The diagram below shows
the relationship between the channel designations in the dialog on the control,
the ZigBee channel numbers and the WIFI (WLAN) channels. In addition, a
detected WLAN channel has a channel width of 20 MHz, which must be taken
into account in the coexistence planning. The four ZigBee channels next to a
WLAN channel must therefore not be used in order to ensure that 20 MHz of
channel width remain available.
Example: WLAN on channel 6
As a result, the ZigBee channels 16, 17, 18 and 19 must not be used. A
wireless handwheel should be set only to ZigBee channel 15 or 20, which
corresponds to channel 4 or 9 in the dialog on the control.

Formula for the next vacant wireless handwheel channel (TNC channel)
depending on a WLAN channel:
TNC channel+ = WLAN channel + 3
TNC channel– = WLAN channel – 2
Example:
TNC channel+ = 6 + 3 = 9
TNC channel– = 6 – 2 = 4

January 2015 3.38 Handwheel input 487


Radio connection After installation and during normal operation, the following options of the
during operation handwheel configuration dialog on the control provide information about the
quality of the radio connection:
 Data packets
Number of data packets transmitted by radio transmission since the last
activation of the wireless handwheel
 Lost packets – Number
Number of data packets lost since the last activation of the wireless
handwheel. For example, if this value shows that more than two packets are
lost within 10 seconds during radio transmission (wireless handwheel is
outside the handwheel adapter), the limit range has been reached. The radio
connection should be checked. You should change to another radio channel
 Lost packets – Percentage
Percentage of data packets lost since the last activation of the wireless
handwheel
• Value < 0.05 %
The radio connection functions properly.
• Value between 0.05 % and 0.1 %
The radio connection functions properly, but it is in the limit range. The
radio connection should be checked. You should change to another
radio channel.
• Value > 0.1 %
The radio connection is not reliable. We advise against operating the
wireless handwheel on this channel. The radio connection should be
checked. You must change to another radio channel.
 Max. successive lost
Number of data packets that were lost successively, one after the other. If
four successive data packets are lost, an emergency stop is triggered
• Value = 1
The radio connection functions properly.
• Value = 2
The radio connection functions properly, but it is in the limit range. The
radio connection should be checked. You should change to another
radio channel.
• Value = 3
The radio connection is not reliable. We advise against operating the
wireless handwheel on this channel. The radio connection should be
checked. You must change to another radio channel.

488 HEIDENHAIN Technical Manual TNC 640


3.38.4 HR 130 panel-mounted handwheel
Standard cable length for the HR 130 is 1 meter.
Pin layout for extension cable and handwheel:

Extension cable, ID 281429-xx HR 130 ID 254040-xx


D-sub connctr. D-sub D-sub connctr.
(male) 9-pin connector (male) 9-pin
(female) 9-pin
Housing Shield Housing Housing Shield
2 White 2 2 White
4 Brown 4 4 Brown
6 Yellow 6 6 Yellow
8 Green 8 8 Green
7 Gray 7

January 2015 3.38 Handwheel input 489


3.38.5 HRA 110 handwheel adapter
With the handwheel adapter you can connect two or three HR 150 panel-
mounted handwheels to the TNC 640.
The first and second handwheels are permanently assigned to two axes
through MP_selectAxes (CfgHandwheel). The third handwheel can be
assigned through a selection switch (option). You also use MP_selectAxes to
define the axes for the third handwheel. (See "MP_selectAxes" on page 2138.)

An additional switch enables you to select, for example, the interpolation


factor for the handwheels. In the PLC you must evaluate the current position
of the handwheel selection switch and activate the corresponding
interpolation factor with Module 9036.

X1 to X3: Inputs on Pin layout:


the HRA 110 for the
HR 150 HRA 110
Connection (female) 9-pin Assignment
1 I1 +
2 I1 –
5 I2 +
6 I2 –
7 I0 –
8 I0 +
3 +5 V
4 0V
9 Internal shield
Housing External shield

490 HEIDENHAIN Technical Manual TNC 640


X223: Connection Pin layout on the HRA 110:
to MB (X23)
HRA 110
D-sub connector (female) 9-pin Assignment
1 RTS
2 0V
3 CTS
4 +12 V +0.6 V (UV)
5 Do not assign
6 DSR
7 RxD
8 TxD
9 DTR
Housing External shield

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

X31: HRA 110 Pin layout on the HRA 110:


supply voltage

Attention

The interface complies with the requirements of EN 61800-5-1 for


"protective extra-low voltage" (PELV).

Attention

The power supply of the PLC must not be used simultaneously for the HRA
110, otherwise the galvanic isolation of the PLC inputs/outputs would be
bridged.

HRA 110
Connecting terminal Assignment
1 +24 V– as per IEC 742 (VDE 551)
2 0V

Maximum current consumption 200 mA.

January 2015 3.38 Handwheel input 491


3.39 CML 110 capacitor module

Danger

Before service or maintenance work, you must ensure that the CML 110
has been completely discharged.

The CML 110 (Capacitor Module Low Voltage) can be used to realize the
LIFTOFF function if line power fails.
The LIFTOFF function can protect workpieces and tools from damage. When
a power failure occurs and the LIFT OFF function is active, the TNC 640 tries
to lift the tool off of the contour, using the residual energy of the DC-link. In
this case, the various releases for operating the control system must be
maintained during the LIFTOFF. The CML 110 ensures the 24 V supply for
this.

Connection The CML 110 capacitor module is connected via X1 parallel to the 24 V power
supply (++/- -).
The two ++ and - - terminals of the CML 110 are each connected to each other
internally. This makes it possible to connect several CMLs 110 in parallel
without needing to use additional external terminals.

Utilizability Calculating the utilizability of the CML 110:


A successful LIFTOFF mainly depends on sufficient energy being available in
the DC-link of the inverter system. Generally it suffices if the energy in the DC-
link is available for the duration of one second. The 24 V supply must also be
ensured for precisely this time. The following formula can be used to check
this:
t = RL x C x In (UO/UC)

where:
t = time until UC is reached
RL = ohmic load of the consumers
C = capacitance of the CML (for CML 110 = 8.3 F)
ln = natural logarithm
UO = output load of the power supply unit with which the CML is operated
UC = lowest voltage at which the consumers still fulfill their function

492 HEIDENHAIN Technical Manual TNC 640


Example:
During operation at 24 V, a total current of 10 A is required for switching the
control components on. This corresponds to an ohmic load of 2.4 ohms. In
addition, the voltage for the 24 V components may not sink below 18 V (e.g.
switching voltage of the contactors), for example.
This means:
t = 2.4 Ohm x 8.3 F x ln(24 V/18 V)
t = 5.73 s
If the line voltage fails, then in the best case the voltage will not fall below 18 V
until 5.73 seconds have passed. This is significantly longer than 1 second, and
so the CML 110 is suitable for LIFTOFF here.
If the capacitance of the CML 110 should not suffice, then you can also switch
more than one CML 110 in parallel. However, here you must note that a
maximum charging current of 2.4 A per CML 110 is to be expected at switch-
on. The full power of the 24 V power supply unit can only be used once all
CMLs have finished charging.

January 2015 3.39 CML 110 capacitor module 493


3.40 Connecting cables: Specifications

Device ID Max. bend radius Max. bend radius Cable


(rigid configuration) (frequent flexing) diameter
HSCI 618893-xx ≥ 40 mm ≥ 100 mm ø 6.8 mm
HDL 625901-xx ≥ 60 mm ≥ 150 mm ø 11.4 mm
Position 1 VPP 298429-xx, ≥ 20 mm ≥ 75 mm ø 6 mm
298430-xx
Position 1 VPP 310199-xx, ≥ 40 mm ≥ 100 mm ø 8 mm
309783-xx
Position EnDat 332115-xx, ≥ 40 mm ≥ 100 mm ø 8 mm
323897-xx
Position EnDat 313791-xx, ≥ 20 mm ≥ 75 mm ø 6 mm
332790-xx
Speed 1 VPP 289440-xx, ≥ 40 mm ≥ 100 mm ø 8 mm
336376-xx
Speed EnDat 336376-xx, ≥ 40 mm ≥ 100 mm ø 8 mm
340302-xx,
369502-xx
a
Analog output 290110-xx, ≥ 40 mm ø 7.3 mm
290109-xx
TS 220 274543-xx ≥ 40 mm ≥ 100 mm ø 8 mm
SE 640, SE 540 310197-xx, ≥ 40 mm, ≥ 100 mm, ø 8 mm
517518-xx ≥ 10 mm ≥ 50 mm ø 4.5 mm
HR 130, HR 410 281429-xx ≥ 20 mm a
ø 5.6 mm
(extension cable)
a
HR 410 (extension 296466-xx ≥ 20 mm ø 5.6 mm
cable)
HR 410 296687-xx ≥ 40 mm ≥ 100 mm ø 8 mm
RS-232, 9-pin 355484-xx ≥ 20 mm ≥ 75 mm ø 6 mm
RS-232, 9-pin 366964-xx ≥ 20 mm ≥ 75 mm ø 6 mm
(extension cable)
RS-232, 25-pin 365725-xx ≥ 40 mm ≥ 100 mm ø 7.1 mm
RS-232, 25-pin 274545-xx ≥ 20 mm ≥ 75 mm ø 6 mm
(extension cable)
USBb 354770-xx ≥ 20 mm ≥ 75 mm ø 4.5 mm
USB (with hub)c 624775-xx Cable like 354770-xx, hub: ø approx. 20 mm, length approx.
115 mm
a. Conditionally resistant to frequent flexing and torsion
b. These USB cables support USB 1.1 and USB 2.0
c. The hubs integrated in the USB cable (ID 624775-xx) only support USB 1.1

Note

For the specifications of the cables for encoders and touch probes, please
note the corresponding technical documentation.

494 HEIDENHAIN Technical Manual TNC 640


Cables— Keep the following in mind for wiring inside the electrical cabinet:
Instructions for
The stray magnetic field of a KDR 1xx commutating reactor can disturb
wiring
conductors routed in its proximity. This means that no conductors (such as dc-
voltage lines and signal lines), except for the power connections of the motor
and the connections between the UVR 1xx and KDR 1xx, should be routed in
the proximity of the KDR 1xx. HEIDENHAIN recommends leaving a space of
20 cm around the commutating reactor. This distance is to be maintained
regardless of the KDR 1xx used.

January 2015 3.40 Connecting cables: Specifications 495


3.41 Dimensions

Note

All dimensions are in millimeters [mm].

496 HEIDENHAIN Technical Manual TNC 640


3.41.1 MC 6241
Weight: 4.0 kg

59.5+0.5

25
¬ 5.5
24.75
¬ 12 280.5
7

30
456+5
480

420

24.75

265.5

January 2015 3.41 Dimensions 497


3.41.2 MC 6341, MC 6x51, IPC 6341
Weight: 4.0 kg

59.5+0.5

25
¬ 5.5
24.75
¬ 12 280.5
7

30

30
456+5

420
480

420

24.75

269

498 HEIDENHAIN Technical Manual TNC 640


3.41.3 MC 6541, MC 6641, IPC 6641
Weight: 4.0 kg

59.5+0.5

25
¬ 5.5
24.75
¬ 12 280.5
7

30

30
456+5

420
480

420

24.75

269

January 2015 3.41 Dimensions 499


3.41.4 MC 6242
Weight: Approx. 4.0 kg

59.5+0.5

25

24.75 ¬ 5.5 240.5

¬ 12 21.5 30 170±0.2
7

¬
4.8
30
319+5
343

300±0.3
283

24.75

225.5

500 HEIDENHAIN Technical Manual TNC 640


3.41.5 MC 6542
Weight: Approx. 4.0 kg

January 2015 3.41 Dimensions 501


3.41.6 MC 7522
Weight: 7.5 kg

502 HEIDENHAIN Technical Manual TNC 640


3.41.7 MB 720(FS)
Weight: Approx. 1.0 kg

 

 
    

January 2015 3.41 Dimensions 503


3.41.8 TE 720 / TE 730
Weight: Approx. 4.2 kg

   


   


    
    

504 HEIDENHAIN Technical Manual TNC 640


3.41.9 TE 735(FS)
Weight: Approx. 3.4 kg


  
  

January 2015 3.41 Dimensions 505


3.41.10 TE 740
Weight: Approx. 3.2 kg


  
  

506 HEIDENHAIN Technical Manual TNC 640


3.41.11 TE 745(FS)
Weight: Approx. 4.3 kg


  
  

January 2015 3.41 Dimensions 507


3.41.12 BF 750
Weight: Approx. 4.0 kg

 

 
    



 
    

508 HEIDENHAIN Technical Manual TNC 640


3.41.13 BF 760
Weight: Approx. 7.8 kg

 

 
    



 
    

January 2015 3.41 Dimensions 509


3.41.14 ITC 755



29.6
8.5  
72.1

9.5

188 176 36

400

376 12

11
8

15
23
454
470

20
18

15

4.75 376
459+1

Frontplattenausschnitt
M ontagefläche
454

Freiraum fürLuftzirkulation

385.5+1


510 HEIDENHAIN Technical Manual TNC 640


3.41.15 ITC 750

= Frontplattenausschnitt
= Montagefläche
= Freiraum für Luftzirkulation

January 2015 3.41 Dimensions 511


3.41.16 ITC 760
99.5
232

176.2 190.5

= Frontplattenausschnitt
= Montagefläche
= Freiraum für Luftzirkulation

512 HEIDENHAIN Technical Manual TNC 640


3.41.17 CC 6106
Weight: Approx. 4.1 kg

74.5+0.5

25 ¬ 5.5
24.75 ¬ 12
30
7

280.5 22.5+1
456+5
480

420

January 2015 3.41 Dimensions 513


3.41.18 CC 6108 / CC 6110
Weight of CC 6108: Approx. 4.7 kg
Weight of CC 6110: Approx. 4.8 kg

 











514 HEIDENHAIN Technical Manual TNC 640


3.41.19 UMC 111(FS)
Weight: Approx. 11.0 kg

100±0.2 24.75
¬ 12
7
10

433
480

456

5.5 280

149.5

January 2015 3.41 Dimensions 515


3.41.20 UEC 113(FS), UEC 111FS ID 1075825-xx, UEC 112FS ID 1038694-xx
Weight: Approx. 14.0 kg

100±0.2 24.75
¬ 12
7
10

433
480

456

5.5 280

149.5

516 HEIDENHAIN Technical Manual TNC 640


3.41.21 PL 6xxx (FS)
Weight: 0.36 kg (bare)

 

 


January 2015 3.41 Dimensions 517


3.41.22 PLB 6001 (FS)
Weight: Approx. 1.2 kg
48+2

40

24
¬
7

109.5±0.2
133+2
3.4

288.4
295
304

518 HEIDENHAIN Technical Manual TNC 640


3.41.23 PSL 130
Weight: Approx. 2.1 kg

300+1 ¬ 12
280+1 ¬ 5.5

7
M4

30
€

10
85.1
M6

198±0.2
212

162
M5
€
5.5

24.75
49

234.9

January 2015 3.41 Dimensions 519


3.41.24 PSL 135
Weight: Approx. 2.5 kg

¬ 12
¬ 5.5 280.5+1
7
M4
€
30

0
10

73.4

170.9
456±0.2
480

420

354.6

M6

M5
5.5 €
303+1

24.75

50

520 HEIDENHAIN Technical Manual TNC 640


3.41.25 MS 11x

300+1

280.5+1

7
29

10
480

421

456±0.2

303+1 5.5
24.75

50

January 2015 3.41 Dimensions 521


3.41.26 Adapter block for the data interface
RS-232-C/V.24 adapter block and
RS-422/V.11 adapter block

  


522 HEIDENHAIN Technical Manual TNC 640


3.41.27 USB hub

38+1
156+1

1
181.5±0.5

10.5
¬ 3.5
60

5
0

118.5+0.5

140

120±0.2
130±0.2
0
5.25

171±0.2

January 2015 3.41 Dimensions 523


3.41.28 Line-drop compensator
Line drop compensator for encoders with EnDat interface



524 HEIDENHAIN Technical Manual TNC 640


3.41.29 Handwheels

HR 520(FS) Weight: Approx. 1.0 kg


79.7
78.7
46
90

311.7

336

Mount for
HR 520(FS)

120 46.5
83±0.2 27

¬ 5.5
71°

56
137±0.2

44
180

January 2015 3.41 Dimensions 525


HR 550FS Weight: Approx. 1.0 kg
79.7
78.7
46
90

312

526 HEIDENHAIN Technical Manual TNC 640


HRA 551FS Weight: Approx. 1.0 kg

136
76.5
120 57
83±0.2 4
12
6
192±0.2
204

180

323

January 2015 3.41 Dimensions 527


HR 410 (FS) Weight: Approx. 1.0 kg

HR 130 Weight: Approx. 0.7 kg

528 HEIDENHAIN Technical Manual TNC 640


Control knob for
HR 130

January 2015 3.41 Dimensions 529


Adapter cable
(ID 296466-xx or
749368-xx)

 
  

 
   
 

530 HEIDENHAIN Technical Manual TNC 640


3.41.30 Touch probes

TS 260

January 2015 3.41 Dimensions 531


TS 460

40

532 HEIDENHAIN Technical Manual TNC 640


TS 444

January 2015 3.41 Dimensions 533


TS 64x

534 HEIDENHAIN Technical Manual TNC 640


TS 740

January 2015 3.41 Dimensions 535


TT 160

536 HEIDENHAIN Technical Manual TNC 640


TT 460

January 2015 3.41 Dimensions 537


TT 449

538 HEIDENHAIN Technical Manual TNC 640


SE 64x transmitter-
receiver unit

January 2015 3.41 Dimensions 539


SE 660 transmitter/
receiver unit

Holder for SE 660:

540 HEIDENHAIN Technical Manual TNC 640


SE 540 transmitter-
receiver unit

January 2015 3.41 Dimensions 541


TT 130 / TT 140

542 HEIDENHAIN Technical Manual TNC 640


Adapter cable for
TT and TS

Mounted coupling for quick connection

Mounted coupling for HEIDENHAIN standard connector:

January 2015 3.41 Dimensions 543


TS 220

Adapter cable for


TS 120/TS 220

544 HEIDENHAIN Technical Manual TNC 640


TS 440

January 2015 3.41 Dimensions 545


3.41.31 CML 110

125 135 +20

102.5

106.5
Hutschiene 35 mm EN 50 022
Mounting rail 35 mm EN 50 022

55 14.9 2
4

3.41.32 USB hub for operating panel (ID 582884-xx)

50
M3
40
28
17.5

109 80
100±0.2
A
70±0.2
50±0.2
¬ 3.4 m
¬ 2.5
68

¬ 3.5
17.5
30±0.2
37

19

93.2
A 180°

42

60±0.2

546 HEIDENHAIN Technical Manual TNC 640


3.42 Grounding diagram for TNC 640 with modular HEIDENHAIN inverter system and PSL 130

Grounding bars
U2 V2 W2
O KDR 1xx MC 6xxx/7xxx
X31 X500 X502 X500 X501

X101
UVR 1xxD UM xxx UP 110 HSCI HSCI Machine
Surge voltage arrester with U1 V1 W1 M W V U CC6xxx 24V NC
panel

remote indicator
Uz+
ZKF 0V NC
Uz-
(Wire >10 mm2 as short as possible) CMH

24V
X51a-X56a
X51a-X56b
MS

+5V
X111/112 PWM /I ist

M X249 BF
0V
0V 12V +15V -15V 5V 0V*1 15V*1 24V*1
24V PLC
0V
X69 X69 0V
+15V

-15V
O Line filter with 12V X141/142
TE/
capacitor 5V USB
M 0V

Main switch Machine


X79 X79
0V
0V X26
L1 +15V
Ethernet
L2 -15V
+12V X15b-X20b Speed
L3 X111 X15a-X18a
+5V
X112
PE 24V*1 0V

15V*1 X121
0V
Fuse type 0V*1 Profibus

Siemens SITOR gR
X201a-X204a Position
X74 0V 0V
X201b-X206b
+5V
1 mm² X74
X27
0V*1 24V*1
V.24 /

Filter
RS232

X80/81

U V W
X392
X502 X500 X3 X3
X70-72 X344 B X7 Omit bridge at X7 if necassary!
0V
PLD-H PLA-H Release
24V 0V
Then connect signal ground X7 to
central signal ground! 6 mm²
HSCI HSCI X3/3
24V 0V 24V 0V
Axis/Spindle
P PLC PLC
NC PLC
0V 0V
0V 0V
24V 24V
Cap rail
SM1xx
(optional)
PLB 6xxx
6 mm²

6 mm² M
PT100
6 mm²
6 mm²
M HR-Adapter X23 X500 X502

Brake
B 6 mm² +24V PLC HSCI

PT 100 12V 0V
EmStop
Emergnecy
Stop 0V NC 24V NC Input MB 6xx/7xx
Machine
Analog IN Analog OUT
Bridge between central
6 mm² protective ground and Permissive
central signal ground buttons
X101 X7 X5

Output Output
0V
Only for controlling safety separated circuits!
12V
HR xxx
optional
optional

+ Uz
In case of wiring a SPI module take care of the Technical manual of your control.
- Uz 0V NC
+24V NC
P
+24V PLC Cross Minimum cross Functional insulation
L1 0V PLC section line section protective
L2 6 mm² conductor earth conductor
S [mm2] [mm2] Basic insulation
N non regenerativ systems need
6 mm²
M UVR 120D/130D 10 mm2
a PW 210 < 16 = S
UVR 140D/150D 16 mm2 16 < 35 = 16
UVR 160D(W) 25 mm2 O only regenerative systems > 35 = S ½ Double basic insulation
PSL 13x 17.12.2014
Or wiring NT with PELV as per DIN EN 61800-5-1

January 2015 3.42 Grounding diagram for TNC 640 with modular HEIDENHAIN inverter system and PSL 130 547
3.43 Grounding diagram for TNC 640 with modular HEIDENHAIN inverter system and power supply unit integrated in UV(R)

Grounding bars
U2 V2 W2
UV(R) 1xxD(W) MC 6xxx/7xxx
X31 X500 X502 X500 X501
OKDR 1xx X101 Machine
Surge voltage arrester with M W V U
UM xxx UP 110 CC6xxx
HSCI HSCI
24V NC panel
U1 V1 W1 Uz+
remote indicator ZKF 0V NC

(Wire >10 mm2 as short as possible) Uz-


CMH

24V
X51a-X56a
X51a-X56b
MS

+5V
N X111/112 PWM /I ist
M PW 210 X249 BFT
0V
0V 12V +15V -15V 5V 0V*1 15V*1 24V*1
24V PLC

10 mm²
0V
X69 X69 0V
+15V

-15V
O Line filter 12V X141/142
TE/
with capacitor 5V USB
M 0V

Main switch Machine


X79 X79
0V
0V X26
L1 +15V
Ethernet
L2 -15V
+12V X15b-X20b Speed
L3 X111 X15a-X18a
+5V
X112
PE 24V*1 0V

15V*1 X121
Fuse type 0V
Siemens SITOR gR 0V*1 Profibus

X201a-X204a Position
X74 0V 0V
X201b-X206b
+5V

X74
X27
0V*1 24V*1
V.24 /

Filter
RS232

24V PLC
X80/81

0V PLC

24V NC
0V NC
U V W
X392
X90
X502 X500 X3 X3
X70-72 X7 Omit bridge at X7 if necassary!
0V
X344 B
PLD-H PLA-H Freigabe
Achsen/ 24V 0V
Then connect signal ground X7 to
central signal ground!! 6 mm²
HSCI HSCI X3/3
24V 0V 24V 0V Spindel Q PLC PLC
M

Klemmenblock nahe am UV(R)


NC PLC

4 mm²
4 mm²
0V 0V
0V 0V
24V 24V
Cap rail
SM1xx
(optional)
PLB 6xxx
6 mm²

6 mm²
PT100
6 mm²
6 mm²
P M HR-Adapter X23 X500 X502

Brake
B +24V PLC HSCI

PT 100 12V 0V
EmStop
Emergency
stop 0V NC 24V NC Input MB 6xx/7xx
Machine
Analog IN Analog OUT
Bridge between central
6 mm² protective ground and Permissive
central signal ground button
X101 X7 X5

1,5 mm² Output Output


0V
Only for controlling safely separated circuits!
12V
HR xxx
optional
optional

In case of wiring a SPI module take care of the Technical manual of your control.

Functional insulation
Q Cross section Cross section
M UVR 120D/UV(R)130D 10 mm2 N only non-regenerative systems line conductor protective earth
Basic insulation
UVR 140D/150D 16 mm2 S [mm2] conductor [mm2]
O only regenerative systems < 16 = S
UVR 160D(W) 25 mm2
UVR 170D(W) 50 mm2 P or wiring NT with PELV as per DIN EN 61800-5-1 16 < 35 = 16
Double basic insulation
> 35 = S ½
R only UV130D/UVR170D(W)

17.12.2014

January 2015 3.43 Grounding diagram for TNC 640 with modular HEIDENHAIN inverter system and power supply unit integrated in UV(R) 548
3.44 Basic circuit diagram for TNC 640

Please get in touch with your contact partner at HEIDENHAIN to obtain the current version of the basic circuit diagram.

January 2015 3.44 Basic circuit diagram for TNC 640 549
3.45 TNC 640 cable overview, CC and MC in electrical cabinet

TE 740 TE 745
VL: Extension cable
2x USB USB 2.0 354770-xx max. 5m – for separation points with connecting cable
– for extending existing connecting cable
USB 1.1 624775-xx max. 20m

X1 X1 250479-55 X3
BF 760 HSCI total length 70 m
Ribbon cable for soft keys *) Ribbon cable for soft keys *) *) included with the BF (1m)
X60
**) included with the MB (0.5m)
250479-60 Ribbon cable for pots**)
X10 30.07.2013

PLB 6001
X502

X502
HSCI
HSCI
618893-xx
618893-xx
360974-xx (LS x87) max. 20m
Electrical cabinet 298429-xx (LB, LF 183) max. 12m
298430-xx (LF 481) max. 12m
HSCI 722414-xx M12 688144-xx 625901-xx
1 VPP 60m
max. 20m
X500
USB 2.0 354770-xx max. 5m USB 310199-xx
USB 1.1 624775-xx max. 20m 1 VPP

X502 PL 620x X141


X500 X142 X249 309783-xx 1 VPP
HSCI

X500
MC 6xxx
X201A ... X204A
Position inputs
X502A X201B ... X206B*) 3)
X502 LC x83
558714-xx max. 30m
PL 610x
X500A
CC 6xxx 4)
3) EnDat with incremental signals
X502B***) ***) CCs with 2nd controller board 673459-xx max. 20m 4) Purely serial EnDat 2.2
30m
X500B***) X15A ... X18A 3) VL 3)
X15B ... X20B*) 332115-xx 323897-xx
60m
X51A...X54A X51B...X56B* 4) 4)
533627-xx 368330-xx 1m RCN 729
HSCI PWM RCN 226
out RCN 228
3)
1) Adapter connector 544703-01 533631-xx max. 9m LC x83
X502 UMC 11x for spindle (if necessary)
4)
2) only for connection of the KTY 533661-xx max. 16m
X500
X15...X18

60m
40 inputs
Speed inputs

24 outputs PLC I/0 509667-xx 1m RCN 729


RCN 226
1 VPP
RCN 228
1)
Voltage controller 5 V
VL 368210-02 VL
336847-xx 2)
289440-xx 323897-xx LC x83
336376-xx 533631-xx max. 6m
Axes + spindle: 60m
KTY 60m
EnDat 2.1 interface Voltage controller 5 V
VL (max. 6m) VL 383951-01
340302-xx 340302-xx 289440-xx max. 9m LB/LS
336376-xx
1 VPP
Axes: 60m KTY

January 2015 3.45 TNC 640 cable overview, CC and MC in electrical cabinet 550
3.46 TNC 640 cable overview, CC and MC in operating panel

TE 735/TE 745 TE 720/TE 730


VL: Extension cable
2x USB USB 2.0 354770-xx max. 5m – for separation points with connecting cable
USB 1.1 624775-xx max. 20m – for extending existing connecting cable
X1 X1 ribbon cable for sk *) X3
MC 7xxx
ribbon cable for sk *) 250479-55 X501 HSCI total length 70 m

X60 *) included with the MC (1,5m)


**) included with the MB (0,5m)
250479-60 ribbon cable for pots **)
X500 17.12.2014
X10
X502
MB 720
HSCI
X502
HSCI

HSCI

360974-xx (LS x87) max. 20m


Cabinet 298429-xx (LB, LF 183) max. 12m
298430-xx (LF 481) max. 12m
HSCI 722414-xx M12 688144-xx 1 VPP 60m

X502
310199-xx
1 VPP

PL 620x
X500 309783-xx 1 VPP
X502A

X500A X201A ... X204A


X201B ... X206B*) Position inputs
X502
X502B*) CC 6xxx 3)
LC x83
*) CCs with 2nd controller board 558714-xx max. 30m
X500 X500B*)
X15A ... X18A 3) EnDat with incremental signals
PL 610x 4)
X15B ... X20B*) 673459-xx max. 20m 4) Pure serial EnDat 2.2
X51A...X54A X51B...X56B* 30m
3) VL 3)
PWM 332115-xx 323897-xx
60m
HSCI out
4) 4)
533627-xx 368330-xx 1m RCN 729
RCN 226
RCN 228

1) Adapter 3)
connector 544703-01 533631-xx max. 9m LC x83
for spindle (if necessary)
4)
2) only for connection of the KTY 533661-xx max. 16m
1 VPP
1)
60m
VL
Speed inputs

336847-xx 289440-xx 509667-xx 1m RCN 729


RCN 226
Axes + spindle: 60m RCN 228
Voltage controller 5 V
368210-01 2) VL
336376-xx 323897-xx LC x83
533631-xx max. 9m

KTY 60m
Voltage controller 5 V
EnDat 2.1 interface 383951-01
340302-xx 336376-xx 289440-xx max. 9m LB/LS

1 VPP
Axes: 60m KTY

January 2015 3.46 TNC 640 cable overview, CC and MC in operating panel 551
3.47 TNC 640 cable overview, UEC and MC in electrical cabinet

TE 740 TE 745 VL: Extension cable


USB 2.0 354770-xx max. 5m – for separation points with connecting cable
USB 1.1 624775-xx max. 20m – for extending existing connecting cable
2x USB
X1 250479-55 X3
X1 BF 760
Ribbon cable for soft keys *) HSCI total length 70 m
Ribbon cable for soft keys *) HSCI 618893-xx
X60
250479-60 Ribbon cable for pots**) *) included with the BF (1m)
X10 **) included with the MB (0.5m)

PLB 6001 10.06.2014

X502 X502

Electrical cabinet 360974-xx (LS x87) max. 20m 12m


298429-xx (LB, LF 183) max. 12m
625901-xx 298430-xx (LF 481) max. 12m
HSCI 722414-xx M12 HSCI 688144-xx max. 20m
1 VPP 60m
USB 2.0 354770-xx max. 5m USB
USB 1.1 624775-xx max. 20m
310199-xx
1 VPP
X141
X142 X249
X500
MC 6xxx 309783-xx 1 VPP

X500
UEC 11x Position inputs
X502 3)
X201 ... X204 (UEC 111) LC x83
558714-xx max. 30m
X201 ... X205 (UEC 112)
X500
X201 ... X206 (UEC 113) 3)
X502 4) EnDat with incremental signals
PL 610x 673459-xx max. 20m 4) Purely serial EnDat 2.2
30m
VL
PLC I/O 332115-xx
3)
323897-xx
3)
60m
40 inputs X15 ... X18 (UEC 111) 4) 4)
X15 ... X19 (UEC 112) 533627-xx 368330-xx 1m RCN 729
24 outputs RCN 226
X15 ... X20 (UEC 113)
RCN 228
X80 ... X85
3)
1) Adapter connector 544703-01 533631-xx max. 9m LC x83
for spindle (if necessary)
4)
2) Only for connection of the KTY 533661-xx max. 16m
1 VPP
1)
Speed inputs 60m
VL
336847-xx 289440-xx 509667-xx 1m RCN 729
RCN 226
RCN 228
Axes + spindle: 60m Voltage controller 5 V
368210-02 2) VL
336376-xx 323897-xx LC x83
533631-xx max. 6m

KTY 60m
EnDat 2.1 interface Voltage controller 5 V
VL (max. 6m) VL 383951-01
340302-xx 340302-xx 336376-xx 289440-xx max. 9m LB/LS

1 VPP
Axes: 60m KTY

January 2015 3.47 TNC 640 cable overview, UEC and MC in electrical cabinet 552
3.48 TNC 640 cable overview, UEC and MC in operating panel

TE 735 TE 720/TE 730


VL: Extension cable
– for separation points with connecting cable
2x USB USB 2.0 354770-xx max. 5m
– for extending existing connecting cable
USB 1.1 624775-xx max. 20m

X1 X1 ribbon cable for sk *) X3

ribbon cable for sk *) 250479-55 X501


MC 7xxx HSCI total length 70 m
*) included with the MC (1,5m)
X60
**) included with the MB (0,5m)
ribbon cable for pots **) 29.07.2013
X500
X10
X502
MB 720
HSCI

X502

HSCI

360974-xx (LS x87) max. 20m 12m


298429-xx (LB, LF 183) max. 12m
298430-xx (LF 481) max. 12m

1 VPP 60m
HSCI

310199-xx
Cabinet 1 VPP

HSCI 722414-xx M12 688144-xx


309783-xx 1 VPP

X502

UEC 11x
X502 Position inputs
X500 PL 610x X201 ... X204 (UEC 111) 3)
LC x83
X500 X201 ... X205 (UEC 112) 558714-xx max. 30m
X201 ... X206 (UEC 113)
3) EnDat with incremental signals
4)
673459-xx max. 20m 4) Pure serial EnDat 2.2
30m
HSCI PLC I/O 3) VL 3)
332115-xx 323897-xx
40 inputs X15 ... X18 (UEC 111) 60m
X15 ... X19 (UEC 112) 4) 4)
24 outputs 533627-xx 368330-xx 1m RCN 729
X15 ... X20 (UEC 113) RCN 226
X80 ... X85 RCN 228
1) Adapter connector 544703-01 3)
for spindle (if necessary) 533631-xx max. 9m LC x83
2) only for connection of the KTY 4)
1 VPP 533661-xx max. 16m

1) 60m
VL
Speed inputs

336847-xx 289440-xx 509667-xx 1m RCN 729


RCN 226
RCN 228
Axes + spindle: 60m Voltage controller 5 V
368210-01 2) VL
336376-xx 323897-xx LC x83
533631-xx max. 6m

KTY 60m
EnDat 2.1 interface Voltage controller 5 V
383951-01
340302-xx 336376-xx 289440-xx max. 9m LB/LS

1 VPP
Axes: 60m KTY

January 2015 3.48 TNC 640 cable overview, UEC and MC in operating panel 553
3.49 Cable overview for TNC 640—Accessories

max. 2m
50m
100m 749368-xx HRA 551 FS
PL 550 749369-xx
731928-xx
296467-xx HR 550 FS
20m 598515-xx
606622-xx
296466-xx
50m
516670-01 312879-01 HR 520 HR 520 FS
515845-01 3m 670302-xx 670304-xx
296466-xx 670303-xx 670305-xx
516670-01 296467-xx
HR 410 HR 410 FS
296687-xx 296469-xx 337159-xx
TE 745 535220-xx 578114-xx
VL
PLB 6001 281429-xx HR 130
540940-01
X121 50m -03
(Option)
X23 HRA 110
683259-xx 261097-xx max. 20 m HR 150
3 inputs
540940-06
-07
Ethernet Adapter 9 pin
363987-02 20m
355484-xx 366964-xx
X26
MC 6x41 Adapter 25 pin V.24/RS-232-C PC VL: Extension cable
– for separation points with connecting cable
MC 6242 365725-xx
310085-01
274545-xx – for extending existing connecting cable
X27

1) Up to 20m
5m 2) If the total length is >20m: Select the cable
354770-xx
ID1073372-xx longer than ID663631-xx.
X141 USB hub
X142 582884-01
Connector housing must be mounted
624775-xx
05.06.2014

CC 6xxx CMA-H 04-04-00 30m


20m with connection of a USB hub TS
UEC 11x analog axis
688721-xx
UMC 11x 633611-xx
With SE 540:
633608-xx TS 460, TS 740, TS 64x
or TS 44x

663631-xx 1)

X112 1073372-xx 2)

TS 260 626001-xx
1070795-xx

PL 620x 1070795-xx 368330-xx With SE 642: With SE 660:


TT 460 or TT 449 and TS 460, TT 460 and TS 460
TS 740, TS 64x or TS 44x
1070794-xx
X113 TT 160 SE 660
1070794-xx 660042-xx
SE 642 TT TS

1070794-xx 368330-xx

PLC 826269-01 663631-xx 2)

560040-xx PUR protective armor


560041-xx Steel braiding

January 2015 3.49 Cable overview for TNC 640—Accessories 554


3.50 Cable overview for TNC 640—Encoders

X502A
UEC 1xx
X500A UMC 1xx
X502B*) CC 6xxx
*) CCs with 2nd controller board
X500B*)

X15A ... X18A X201A ... X204A


X15B ... X20B*) X201B ... X206B*)

360974-xx (LS x87) max. 20m


298429-xx (LB, LF 183) max. 12m
298430-xx (LF 481) max. 12m

1 VPP
55m
LC x15 / EnDat 22 533661-xx max. 6m 641926-xx
max. 55m
310128-xx (LB, LF 183)
310199-xx 310123-xx (LF 481) max. 9m
360645-xx (LS x87)
LC x8/3 / EnDat 02
558727-xx
max. 20m 1 VPP

533631-xx max. 9m
509667-xx
max. 55m 309783-xx 1 VPP

Voltage controller 5 V

Position inputs
368210-02
LC 211

Speed inputs
LC x15 / EnDat 22
adapter KTY
RCN xx10 / EnDat 22 367770-02 673459-xx
max. 25m
735994-xx 533627-xx 533661-xx max. 6m
max. 25m
max. 55m

LC 281
679671-xx max. 6m 641926-xx LC x83 / EnDat 02
max. 55m
558714-xx
max. 30m

RCN xx80 / EnDat 02 332115-xx 533631-xx max. 9m


max. 55m

max. 20m 735961-xx


RCN xx10 / EnDat 22

643450-xx max. 20m


509667-xx 735994-xx
max. 55m max. 25m

Voltage controller 5 V 533627-xx 679671-xx max. 6m


368210-02 max. 55m

RCN xx80 / EnDat 02

727658-xx
max. 20m

332115-xx 643450-xx max. 20m


max. 55m

22.05.2014

January 2015 3.50 Cable overview for TNC 640—Encoders 555


3.51 Cable overview for TNC 640—Inverter system

January 2015 3.51 Cable overview for TNC 640—Inverter system 556
4 Machine parameters

4.1 General information


A control must have access to specific machine data (e.g. traverse distances,
acceleration, speeds) before it can execute its programmed instructions. You
define these data in machine parameters. Each machine has its own set of
machine parameters.
The parameter values are entered in the configuration editor. This document
also uses the abbreviated form "config editor" to refer to the configuration
editor.
The machine parameters are grouped as parameter objects in a tree structure
in the configuration editor. As an alternative you can use unique parameter
numbers to access the desired machine parameters directly (see "Accessing
machine parameters via MP numbers" on page 574).
The machine parameters are saved in parameter files with the extension .cfg
on the TNC:\, PLC:\ and SYS:\ drives.
These drives should always be addressed with the system variables %OEM%
( PLC:\ ), %SYS% ( SYS:\ ) and %USR% ( TNC:\ ).

Note

Only use the configuration editor to make your changes to the machine
configuration!
Only in exceptional cases should the *.cfg files be edited directly. This
could accidentally lead to faulty syntax, which would prevent the control
from starting up.

The parameter objects appear as folders in the configuration editor. Each


parameter object (also referred to as entity, data object or object) has a name
(beginning with Cfg...) that gives information about the machine parameters it
contains.
Depending on the function, the parameters are differentiated into system-
specific, channel-specific and axis-specific types. Each object has a key for
unique identification. The key name can have a maximum of 18 characters.

January 2015 4.1 General information 557


The following applies:
 System data (parameters that are valid for the entire system) only occur
once. The configuration editor does not require a key name for these
parameters, nor is one entered. These objects are identified with an "empty"
key in the *.cfg files.
 Parameter objects that apply to axes occur more than once.
A unique key name is assigned to each axis. All objects that apply to a
certain axis must be identified with this key. You can choose and specify the
individual key names yourself, or you can use the predefined key names
supplied by HEIDENHAIN.
Example:
• The key name "X" or "X axis" for all objects that belong to the X axis
• The key name "S" or "S axis" for all objects that belong to the spindle
 Parameter objects that apply to channels occur more than once.
A unique key name is assigned to each channel. All objects that apply to a
certain channel must be identified with this key.
Example:
• Key name "CH_NC" for all objects that belong to the channel for
executing the NC program
• Key name "CH_SIM" for all objects that belong to the channel for
simulating the NC program

Note

Key names should be short and clear, and refer to the function.

558 HEIDENHAIN Technical Manual TNC 640


4.2 The "Machine Parameters" mode of operation

4.2.1 Calling the configuration editor


Call the main menu (see figure below) of the Machine Parameters mode of
operation as described below:
 Select the Programming mode of operation
 Press the MOD key
 Enter the code number 95148 or press the CONFIG EDIT soft key if the code
number was already entered
 Press the END soft key to exit the Machine Parameter mode of operation

January 2015 4.2 The "Machine Parameters" mode of operation 559


Soft keys The following functions can be called through the soft-key row of the Machine
Parameters mode of operation’s opening screen:

Soft key Function


Sorts the contents of the *.cfg files

Backs up the machine parameters

Calls the function for activating/editing MP subfiles.

Selects various data records

Path information for the *.cfg files of the machine


configuration
Opens the configuration editor for editing the machine
parameters in tree or table view
Calls additional functions

Shuts down/restarts the control

Appears dimmed during normal operation. Only active after a


software update or with faulty configuration data. Used for
finding and fixing errors in the machine configuration.
Displays and edits rules for the software exchange

Resetting the update version

Resets persistent system settings

Protects data from unauthorized access

Displays access rights, selection lists, limit values and units of


measurement
Returns to previous menu

Exits the Machine Parameter Programming mode of operation

560 HEIDENHAIN Technical Manual TNC 640


4.2.2 Entering and changing machine parameters
After pressing the CONFIG DATA soft key, the object tree for the machine
parameters is displayed.

The Parameter: line above the object tree shows the unique MP number of
the currently selected machine parameter or object folder (see "Accessing
machine parameters via MP numbers" on page 574). If the help function is
open or the table view is active, you can see the current input value next to
the MP number, as well as the parameter’s unit of measure, if there is one.
The actual machine parameters with their values are located on the lowest
level of the tree.
The cursor is positioned within the tree either with the arrow keys or with the
optionally connected USB mouse.
To open a branch:
 Press the + key or ENT key or the right arrow key, or click the folder symbol
with the left mouse button
To close a branch:
 Press the – key or ENT key or the left arrow key, or click the folder symbol
with the left mouse button
Double-click the parameter symbol with the left mouse button or press the
ENT key to open the editing window.
Soft keys and screen buttons can also be clicked with the mouse.

January 2015 4.2 The "Machine Parameters" mode of operation 561


Icons in the object A symbol (icon) is displayed at the beginning of each line in the parameter tree.
tree The icons have the following meanings:

Icon Function
Branch is closed

Branch is open

Empty parameter object, cannot be opened

Initialized machine parameter

Uninitialized (optional) machine parameter

Machine parameter was changed but not saved yet

Machine parameter or parameter object can be read but not


changed

Machine parameter or parameter object cannot be read

Machine parameter with comment

Derived parameter set (KEY SYNONYM function)

Machine parameter added during the previous Config update

Machine parameter protected by code number (machine tool


builder password with FS parameters or key name from
CfgOemPassword) see "Editing attribute information" on
page 580

The type of the configuration object is identified by its folder symbol:

Icon Function
Entity (configuration object)

Array (list)

Key (key name)

562 HEIDENHAIN Technical Manual TNC 640


Table view You can activate a table view in the configuration editor. This is especially
useful for the configuration of parameter blocks, since now the parameters of
all axes are visible at a glance:

All editing functions are available in the table view, as with the tree view.
Changed table columns are highlighted dark blue. The HELP key of the TNC
operating panel can also be used in the table view to call the help function.

January 2015 4.2 The "Machine Parameters" mode of operation 563


Detailed text view Press the SHOW SYSTEM NAME soft key to have the name of the parameter tree
be shown in detail, or as the system short-form text:
 Press the "split screen layout" key to the left of the control’s
TFT flat panel screen.
 Press the SHOW SYSTEM NAME soft key: the control now shows
the folder and parameter names in detail.
 Press the SHOW SYSTEM NAME soft key again to switch the
display back to the system short-form name.

564 HEIDENHAIN Technical Manual TNC 640


Displaying help The HELP key enables you to call a help text for each parameter object or
texts attribute.

If the help text does not fit on one page (1/2 is then displayed at the upper
right, for example), press the HELP PAGE soft key to scroll to the second
page.
Additional information, such as the unit of measure, the initial value, or a
selection list, is also displayed. If the selected machine parameter matches a
parameter in the iTNC 530, the corresponding compatible MP number is
shown.
To exit the help text, press the HELP key again.

January 2015 4.2 The "Machine Parameters" mode of operation 565


Entering and In order to change machine parameters, you must open an input or selection
changing field by pressing the right arrow key, the ENT key or the CHANGE VALUE soft
parameters key, or by double-clicking the selected parameter:

Open and close selection lists (pull-down menus) by pressing the GOTO key
or clicking the arrow symbol. Use the arrow keys (up and down) or the mouse
to navigate through the pull-down menu. Press the ENT key to select the
desired value from the list.

Units of measure can be defined for numeric machine parameters. The unit of
measure assigned to this parameter is displayed. Enter a value appropriate to
this unit.
When editing a numerical value, you can also switch the number system. You
can choose between decimal (DEC), hexadecimal (HEX) and binary (BIN). The
current value entered is converted when the number system is switched.

Note

When entering binary numbers (BIN), you can omit leading zeros. If, for
example, you want to set only bit 0 and bit 1 for a 32-bit input field, the
following entry is sufficient:
%11

566 HEIDENHAIN Technical Manual TNC 640


Special case: You can enter a formula instead of a fixed value. When entering the formula,
Entering a formula you must pay attention to the case of the letters (whether they are small or
capital). Functions are written small, variables are written in capitals.
As of SW 597110-08 the configuration editor checks the entered formula. If
the configuration editor detects an error, e.g. an unknown function, a syntax
error, etc., it issues an error message.
The following arithmetic functions are available:

Operator Function Operator Function


+ Addition sin Sine
– Subtraction cos Cosine
* Multiplication tan Tangent
/ Division asin Arc sine
% Modulo acos Arc cosine
log Logarithm to the base of atan Arc tangent
10
ln Logarithm to the base of sinh Hyperbolic sine
e
exp Exponential function cosh Hyperbolic cosine
rad Radian conversion in tanh Hyperbolic tangent
degrees
deg Radian conversion in asinh Area hyperbolic sine
degrees
abs Absolute value acosh Area hyperbolic cosine
sign Sign function (signum) atanh Area hyperbolic tangent
int Integer sqrt Square root
^ Exponential calculation sqr Square
() Expressions in heaviside Heaviside function
parentheses are solved

Conditions for the formula:


 The trigonometric functions sin(), cos(), tan(), etc. require data input in
radians (360° = 2*pi).
 With NCK-based controls, values must be input into the formula in mm (e.g.
123.456), and not as 0.0001 mm (iTNC).
The following constants are available:

Constant Meaning
pi Circular constant
ZERO 0

January 2015 4.2 The "Machine Parameters" mode of operation 567


For syntax of the formula, the following values are available in addition to the
mathematical functions specified above:

Variable Meaning
REF, Nominal position value of the axis relative to the machine datum
XNOM, in [mm or °]
X,
x
XACT Actual position value of the axis relative to the machine datum in
[mm or °]
VNOM, Nominal speed value of the axis (not available with RTC)
V,
v
VACT Actual speed value of the axis (not available with RTC)

Example:
MP_distPerMotorTurnF: REF*0.1^6+15 (REF in mm)
Entering a formula in MP_distPerMotorTurnF is only useful if a position
encoder is connected to the axis.

Note

If you are switching from the iTNC 530:


If you want to transfer an existing formula from the MP1054 of the iTNC
into the MP_distPerMotorTurnF of the TNC 640, the formula must be
adapted.
Compared to the MP1054 of the iTNC 530, the REF variable with the TNC
640 has a differing unit:
iTNC 530: Actual position of the axis in 1/10 000 mm or °
TNC 640: Nominal position of the axis in mm or °

Limit values Limit values are preset for numeric machine parameters. If you attempt to
enter a value outside of these limits, a message is issued and the entry is not
accepted.

Deleting objects Press the DELETE soft key to delete objects or parameters from a list (an axis,
for example).

568 HEIDENHAIN Technical Manual TNC 640


Inserting and Press the MORE FUNCTIONS and INSERT or COPY soft keys to insert or copy
copying objects objects or items in lists (an axis, for example). Items in lists (arrays) are
inserted after the cursor.
When inserting an object, the object name (key name) and memory file must
be given. The memory file is the *.cfg file in which the inserted object is to be
saved. Press the up or down arrow keys and the ENT key to select the file.
Open the pull-down menu by pressing the GOTO key.

The icons of empty objects, lists and parameters appear dimmed. They can be
activated with the INSERT soft key.

Copying and When a dialog box for entering a value is open, you can use the COPY FIELD
inserting values soft key to copy the content of the current parameter to the clipboard. The
value you have copied can be inserted with the PASTE COPIED VALUE soft key
at any other location in the configuration if an entry dialog is open.

Changing the key Press the CHANGE KEY NAME/FILE soft key to change the key name of an object
name/file (e.g. from Kinem1 to Kinem_XYZ) and to specify a new location for saving.

January 2015 4.2 The "Machine Parameters" mode of operation 569


Saving input values The input values are buffered with the OK soft key. The CANCEL soft key closes
the dialog box without buffering the value. All changes that have been made
but not yet saved are marked with a symbol on the left side of the screen.
Press the SAVE soft key to actually save the changes you have made.
Certain data cannot be stored while an NC program is running. The message
Cannot change parameter during program run appears. In this case the
program must first be stopped and exited. Then the data can be saved.
Some data take effect as soon as they have been saved.
Others require that the axes be referenced again, or that the system be
restarted. This is indicated in a corresponding message.

Change list A machine-parameter change list is displayed after pressing the SAVE or END
soft key. The Configuration data changed window gives you an overview of
all changed parameters. You can save, discard or cancel the changes:

The control also saves a list of the last 20 changes to the configuration data.
In this list you can see all changes performed, and can undo any of them. The
change list is maintained upon power-off of the control. The change list is
reached in the configuration editor via the MORE FUNCTIONS and
DISCARD CHANGES soft keys.
Exceptions to this are modifications to parameters in connection with the code
numbers. Due to reasons of safety it is not possible to reset these via the
change list.

Settings in the configuration editor MP number


System
CfgConfigSettings
undoListSize 106501
suppressUserMsg 106502
dispParamNumbers 106503

570 HEIDENHAIN Technical Manual TNC 640


The MP_undoListSize parameter enables you to specify the number of
entries in the change list.
Each change is saved in a list. The changes can be selected and undone.

MP_undoListSize
Specifies the number of entries in the change list
Available from NCK software version: 597110-04.
Format: Number
Input: 0 to 1000 (larger values are not useful)
Default: 20
Access: LEVEL3
Reaction: NOTHING
With the MP_dispParamNumbers parameter you specify whether the
number of machine parameters or the symbolic name in the change list is
displayed.

MP_dispParamNumbers
Display the symbolic names or the number of machine
parameters in the change list
Available from NCK software version: 597110-04.
Format: Selection menu
Options: TRUE
Number of the machine parameter is displayed
FALSE
Symbolic name of the machine parameter is displayed.
Default: No value, parameter optional (same behavior as for FALSE)
Access: LEVEL3
Reaction: NOTHING

Finding / Replacing You can search for and replace objects and parameters within the
configuration editor using a dialog box.
Press the FIND soft key to open the search function:
The following keyboard combinations are available for searching in the
configuration editor:
 Start a search: CTRL + F
 Find the next match: CTRL + SHIFT + F

January 2015 4.2 The "Machine Parameters" mode of operation 571


You can specify which areas of the machine configuration are to be searched.
This is done by ticking the respective area. You can also select more than one
area at the same time for searching:

Selection Function
Names Search for object and parameter names.
You can also enter just a part of the text to be searched for as
search criteria in the Find text: field. The CURRENT WORD
button and soft key load the term marked with the cursor into
the search field. The search term can be written in capitals or
small letters.
Numbers Search for an MP number. You can also enter just part of the
number to be found.
MP number Search for the compatible iTNC MP number. In many
parameters the parameter number of the iTNC 530 contouring
control is displayed in the help text. After this function is
selected and an iTNC parameter number is entered, the
configuration is searched for equivalents.
Values Search for certain parameter values.
As soon as you have selected the Values function, the
Replace with: input field becomes active.
By entering a value in the "Replace with" field, you can change
the string found by pressing the REPLACE soft key. This
replacement only affects the current search hit.

572 HEIDENHAIN Technical Manual TNC 640


Selection Function
Key name Search for a certain key name.
As soon as you have selected the Key name function, the
Replace with: input field becomes active.
By entering a value in the "Replace with" field, you can change
the string found by pressing the REPLACE soft key. This
replacement only affects the current search hit.
Comment Search for certain user comments (see "User comment" on
page 573).

If the machine configuration has been searched down to the end or up to the
beginning (depending on the search direction) and the search term has not
been found, the control inquires whether the search is to be continued in the
direction opposite to the selected one.

User comment You can comment objects. A dialog box for entering a comment is opened
after pressing the MORE FUNCTIONS and COMMENT soft keys. A maximum of four
comment lines can be entered.
Objects with comments are displayed on the right side of the parameter tree
and are identified with the letter "i." The complete text, including the help text
for the object, appears after you press the COMMENT soft key.
The current value of a parameter can be buffered together with the comment
and can, for example, be reactivated later.

Finishing editing Press the END soft key to return to the main menu of the Machine Parameter
mode of operation.
If any changes have been made, the control displays the Configuration data
changed window (see "Saving input values" on page 570).

January 2015 4.2 The "Machine Parameters" mode of operation 573


4.2.3 Accessing machine parameters via MP numbers
In order to reach a certain point in the machine configuration as quickly and
directly as possible, a unique MP number has been assigned to each machine
parameter.
The MP number is shown above the object tree or the table view in the
Parameter: line. The current input value, as well as the parameter’s unit of
measure, if there is one, are shown after the MP number:

The MP number consists of a 6-digit number. The key name precedes the
6-digit MP number, and the index number (e.g. for list parameters) is
appended to the MP number. The three parts are each separated by a period.
The MP numbers are permanently assigned to a specific configuration object
or machine parameter, and can occur more than once in the system, for
example in the axis-parameter sets or in the kinematics configuration. The
prefixed key names then serve to distinguish between the numbers.
Structure of an MP number:

[Key] . xxxxxx . x

Index
MP-Nummer
Keyname

574 HEIDENHAIN Technical Manual TNC 640


Parameter groups Similar to the parameter tree-structure of the control, the MP numbers are
collected in groups:

Machine parameters Group


100000 to 199999 System configuration + miscellaneous
200000 to 299999 Channel-dependent settings
300000 to 399999 Axis configuration
400000 to 499999 Parameter blocks
500000 to 599999 Range of parameters for TNC milling
600000 to 699999 Range of parameters for CNC lathe machining
(displayed only on HEIDENHAIN lathe controls)
700000 to 799999 Range of parameters for grinding
(reserved)
800000 to 899999 Reserved
900000 to 999999 Number range for OEM parameters

GOTO key Press the GOTO key on the control’s operating panel to jump directly to any
MP number. If the GOTO key is pressed while in the configuration parameter,
the Go to dialog box appears:

If an MP number exists more than once in the configuration (e.g. axis


parameters), the control displays the available parameters as soon as you have
entered the entire number. You can then select the desired parameter and
jump to it by pressing the ENT key.

January 2015 4.2 The "Machine Parameters" mode of operation 575


Numbers for OEM The machine configuration of the control enables you to make your own PLC
parameters machine parameters through the config objects CfgOemBool, CfgOemInt,
CfgOemString and CfgOemPosition, see "Data transfer machine
parameters => PLC" on page 2554. The following describes how you can
assign your own MP numbers to these PLC machine parameters. The number
range 900000 to 999999 is available so that the OEM can group his own
parameters and find them better.
The numbering of the OEM parameters is configured over a dedicated XML
file. This XML file must be called PlcUniqueNumbers.xml and saved in the
PLC:\config\layout folder. The file is optional—if the file is not available, the
OEM parameters are not specially numbered.

Note

The OEM parameter must be known to the system for it to be assigned a


number. So first configure all required OEM parameters using the config
editor, then specify the assignment to the OEM specific numbers.

In the following example, the number 901000 is assigned to an OEM position


value (CfgOemPosition) with the designation NP_LimitSwitch1:

<?xml version="1.0" encoding="utf-8"?>


<UniqueNumbers xmlns="http://www.hng.ch/UniqueNumbers/1"
xsi:schemaLocation="http://www.hng.ch/UniqueNumbers/1
UniqueNumbers.xsd">
<!-- PLC parameters -->
<Group Number="9">
<OemGroup>
<Parameter Number="01000" Name="CfgOemBool-NP_LimitSwitch1
-value"/>
</OemGroup>
</Group>
</UniqueNumbers>

Note that the name of the config object, the key name (in this case the name
of the operand) and the parameter name must each be entered separated by
a hyphen:
...Name="[config object]-[key name]-[parameter name]"

576 HEIDENHAIN Technical Manual TNC 640


4.2.4 Managing configuration files
The configuration data is saved in several files with the extension .cfg. This
enables different types of machines to establish the correct configuration by
selecting the appropriate files from the paths entered.
There are two types of configuration file lists: HEIDENHAIN files and OEM
files.
The HEIDENHAIN files are permanently defined and cannot be changed (e.g.
CfgJhConfigDataFiles).

The paths and names of OEM files can be changed with the CONFIG FILE
LISTS soft key. New configuration files can also be added (for a new axis, for
example), see page 578.
The paths are saved in the configfiles.cfg file.
The paths and names of the configuration files are stored in the dataFiles list
(see "Allocation of configuration data" on page 629). The control searches for
the parameter objects and their parameters in these *.cfg files.
The paths of these files can be changed. Use the right arrow key to open an
input dialog for entering the new path or file name.

January 2015 4.2 The "Machine Parameters" mode of operation 577


Creating a new For a new axis or axis parameter set, you can create a new, empty *.CFG file
*.cfg configuration by pressing the CONFIG FILE LISTS soft key. In the configuration editor, you
file can then enter the desired values in the new *.CFG file.
Proceed as follows to create a new, empty *.CFG configuration file:
 Select the Machine Parameter Programming mode of operation
 Press the CONFIG FILE LISTS soft key
 Open the CfgConfigDataFiles\dataFiles folder
 Press the MORE FUNCTIONS and INSERT soft keys to add a new file to the
list of CFG files
 Press the ENTER VALUE DIRECTLY soft key
 Enter the path and name for the new configuration file, for example:
%oemPath%\axis_c2.cfg
 Press the SAVE soft key. The TNC 640 must be restarted to create the
*.CFG file.
 Restart the TNC 640.
 After the restart, the new *.CFG file is available in the configuration editor
and the file manager.

4.2.5 Sorting file content


Pressing the SORT FILE CONTENT soft key in the main menu of the Machine
Parameters mode of operation sorts the contents of the *.cfg configuration
files so that the objects are in the same order as they are listed in the
configuration editor.
However, since the data in the configuration editor comes from multiple files,
there is no direct correlation between the display in the configuration editor
and the contents of each file.
This sorting makes it easier to compare the contents of similar files (such as
*.cfg for axes), since the entries are now in the same order.

578 HEIDENHAIN Technical Manual TNC 640


4.2.6 Attribute information
Use the ATTRIBUTE INFO soft key to display write-accesses, reactions,
selection lists, limit values, units of measure, and format instructions.
These data are permanently defined by HEIDENHAIN. The OEM is able to
implement modifications of the attribute information in the configuration
editor. The data type of the parameter defines whether the attribute
information to be changed must be entered under CfgAttrInt, CfgAttrReal etc.;
the storage file can be selected.

Example:
The possible input values for the first list element of the user parameter
NP_DG_S_rpm_min under CfgOemInt are to be limited to values between 5
and 20. The syntax for "name" is "Entity name - Key name - Attribute name."

CfgAttrInt (
name:="CfgOemInt-NP_DG_S_rpm_min-value[0]",
lowBound:=5,
highBound:=20
)

January 2015 4.2 The "Machine Parameters" mode of operation 579


Editing attribute A convenient Edit attribute information dialog is available for editing
information purposes.
Access the dialog in the configuration editor as follows:
 Press the CONFIG DATA soft key
 Select the desired machine parameter or entity for implementing changes
to its attribute information
 Press the MORE FUNCTIONS soft key
 Select the second level of the soft-key row
 Select the ATTRIBUTE INFO soft key

Constraints:
 If attribute information already exists for the selected element, this is
displayed.
 If no attribute information exists a new entry is generated, with the name
specified with correct syntax (entity name-key name-attribute name).
 With a new entry, the file must be selected to which this is saved.
 The data matching the element can be entered.
 Following changes, the dialog is exited with the OK soft key. Changes must
also be confirmed with the SAVE soft key. The modified or newly entered
data become effective the next time the TNC 640 is started.
 The attribute information of machine parameters relevant for functional
safety (FS) can be edited as normal parameters after entering the machine
tool builder password.

580 HEIDENHAIN Technical Manual TNC 640


Selection Function
Title: Contains the type of attribute information in brackets; for
informational purposes only
Key name: Specified by the system; cannot be edited
File: Name with correct syntax (default)
Access: Selection of LEVEL1... LEVEL3; for setting another axis level
than specified by HEIDENHAIN
Text name:  Selection of text name:
Text: Specification of a database ID for a language-dependent
text; the text usually comes from an OEM CSV text file
 Selection of Text:
Direct specification of a language-independent text
Password key: Specification of a key from the CfgOemPassword/
[Keyname]/funcList list. If one of these keys is entered
here, the defined key name from CfgOemPassword must
be entered as the key number for enabling purposes before
the momentary machine parameter or all machine
parameters of the entity can be edited.
Write-protected machine parameters are designated with a
red key symbol.
No password By setting the selection, the write protection of FS functional
safety parameters for example are rescinded
Minimum Specifies a minimum value with numerical machine
value: parameters
Maximum Specifies a maximum value with numerical machine
value: parameters
Initial Specifies an initial value
value:
Unit of Only with CfgOemReal, specifies a unit of measure for
measure: converting user units to system units. A selection of
possible units are displayed.
The conversion factors are defined in
SYS:\config\layout\MeasureUnitTable.xml.
Decimal Only with CfgAttrReal; number of decimal places that can
places: be entered
Selection: For defining a selection instead of specifying a direct value.
The cursor must be in the table for editing purposes. Lines
can then be added or deleted via soft key.
Enter a value with correct syntax into the Value column.
Either enter a database ID for a language-dependent text in
the Text name column, or enter a language-independent text
in the Text column. As soon as a database ID is specified, an
input text is no longer effective and is deleted during saving.

January 2015 4.2 The "Machine Parameters" mode of operation 581


Protecting machine Machine parameters can be protected from changes with the Password key
parameters via key selection. For this purpose, a key from the CfgOemPassword/[Keyname]/
names funcList list must be specified under Password key in the attribute information
of the machine parameter or higher-level entity. If one of these keys is entered
here, one of the defined key names from CfgOemPassword must be entered
as the key number for enabling purposes before the momentary machine
parameter can be edited.

Settings in the configuration editor MP number


System
Key code
CfgOemPassword 106900
[Key name]
funcList 106901

Example:

 CfgOemPassword
Define a key name [key name = key number]; example:
"this_is_the_keynumber"
 Define any key under MP_funcList; example: "Testkey_1", "Testkey_2" and
"Testkey_3"
 One of these keys must be entered under Password key in the attribute
information of the machine parameter or higher-level entity to be write-
protected
 For enabling, use the "this_is_the_keynumber" key name. The key name
must be entered into the key number input, as with the other key numbers.

Attention

If you enter a key into the Password key input field that is not contained in
the MP_funcList list and you forget this key or no longer know it, the
machine parameter or entity can then only be enabled via the text editor.
For this reason, make sure to document the
password key. If this is known, it can be added any time under MP_funcList
and then be enabled via the key name in the key number input.

Note

Write-protected machine parameters are designated with a red key symbol.

582 HEIDENHAIN Technical Manual TNC 640


MP_funcList
List of function names (= key names) that are called by entering
the password:
Available from NCK software version: 597110-01.
Format: Array [0...199]
Input: Key name of max. 18 characters
Name of the functions that are called by entering the password.
Enter these names as key names in CfgModOemSoftkey and
CfgCfgEditActivate.
The key name of CfgOemPassword defines the password.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

Write protection for Machine parameters relevant for Functional Safety FS can now be edited in
functional safety FS the configuration editor if the machine tool builder password was previously
parameters entered. If this is not the case, the parameters are designated as disabled with
a red key symbol. If the user tries to edit the disabled parameters, the warning
Enter machine tool builder password is shown.
Write protection can be configured in the attribute information of the specific
parameter or specific entity.

Rescinding write Proceed as follows to rescind "general" write protection for functional safety
protection for FS parameters:
functional safety FS
 Enter the machine builder password for functional safety parameters in the
parameters key number input of the MOD dialog; Refer to the "Technical Manual for
Functional Safety (FS)" for the machine builder password
 Open the dialog again for editing the attribute information, as described
under Edit attribute information (see page 580)
 Set the selection to No password
 Press the OK soft key to exit this dialog.
 Save the new data with the SAVE soft key
 After restarting the NC software you can then edit the parameters without
entering the machine builder password
 The write protection is now permanently canceled
 To reactivate write protection, the selection must be removed again under
No password, the dialog exited with the OK soft key, the new data confirmed
with SAVE and the NC software restarted

Attention

The deactivation of write protection for machine parameters that are


relevant for functional safety FS lies in the responsibility of the machine tool
builder.

January 2015 4.2 The "Machine Parameters" mode of operation 583


Note

You can also specify a password key in the attribute information of the
machine parameters relevant for functional safety FS, see page 582. For
enabling, the machine tool builder password is no longer used but the key
name=key number, as specified under CfgOemPassword.

Note

Parameters for functional safety FS are only available on systems with


functional safety FS (control-dependent).

Note

The modified or newly entered attribute information is only effective the


next time the TNC 640 is started.

584 HEIDENHAIN Technical Manual TNC 640


Access rights Entering a code number also grants access rights to the machine parameters.
There is a difference between the four levels, from LEVEL1 to LEVEL4.
LEVEL1 grants few rights, whereas LEVEL4 grants all rights.

LEVEL1 access rights


Machine parameters on LEVEL1 can be reached and changed with MOD
Function.

LEVEL2 access rights


Machine parameters on LEVEL2 can be reached and changed with code
number 123. Enter the code number in the Programming mode using the
MOD key.

LEVEL3 access rights


Machine parameters on LEVEL3 can be reached and changed with code
number 95148. Enter the code number in the Programming mode using the
MOD key.
The end user must not be told of the code number 95148.

LEVEL4 access rights


Machine parameters on LEVEL4 can only be accessed by HEIDENHAIN. The
machine manufacturer can only read them.

January 2015 4.2 The "Machine Parameters" mode of operation 585


Reaction to The following reactions can occur when machine parameters are changed
change using the config editor:
(behavior)
 Change at any time
(NOTHING)
 Program run is locked
(RUN)
 PLC program prevents changes during program run
(PLC/RUN)
 Allowed in strobe
(SYNC)
 Move to ref. point
(REF)
 Shut down control
(RESET)
 Restart control
(REBOOT)
The abbreviated form of the detailed description for each parameter in this
manual includes the reactions that occur for each machine parameter.
Reaction NOTHING
Machine parameters with this reaction can be changed at any time, including
during program run.
Reaction RUN
Changes are only possible during a PLC strobe or NC stop.
Reaction PLC/RUN:
If machine parameters are changed while NN_GenCycleAfterReConfig
(M4174) is set, the PLC program is recompiled. Changes to parameters are
prevented in any case while the NC program is running. In this case, the
control issues the error message Parameter change during program run, even
if the reaction of the parameter is NOTHING. Therefore, for parameters with
the behavior NOTHING, the text PLC/Pgm. run is locked is displayed in the
config editor to indicate the changed behavior.
Reaction SYNC:
Basically, the same characteristics apply as for the RUN reaction. In addition,
machine parameters with this reaction can, for example, be loaded from the
NC program by means of an MP subfile if a strobe with synchronization of the
advance calculation (SYNC_CALC) is pending. The parameter cannot be
activated through the PLC or the config editor during program run.
Reaction REF
After a machine parameter to which the REF reaction is assigned has been
changed, the affected axis is set to unreferenced.
A new reference run must be made for this axis.
Data objects with this reaction must not be changed during program run.

586 HEIDENHAIN Technical Manual TNC 640


Reaction RESET
After a machine parameter to which the RESET reaction is assigned has been
changed, the error message Machine parameters were changed. Shut down
and restart the control is displayed.
This message cannot be cleared. The machine must be restarted. If you want
to make more changes in the configuration editor, you can also perform the
restart later.
Data objects with this reaction must not be changed during program run.
Reaction REBOOT
Basically, the same characteristics apply as for the RESET reaction. However,
the behavior during shutdown is different. If a parameter with the REBOOT
reaction is changed, the saving of the configuration data will lead immediately
to a restart of the control. In contrast to the RESET reaction, no error message
is displayed.

January 2015 4.2 The "Machine Parameters" mode of operation 587


4.2.7 Access protection / Options
Press the ACCESS PROTECTION / OPTIONS soft key to get to the configuration
options for protecting data from unauthorized access.

Display of write-
protected
parameters Settings in the configuration editor MP number
System
CfgConfigSettings
hideWriteProtected 106504

Use MP_hideWriteProtected to specify whether write-protected parameters


are to be displayed or hidden in the configuration editor. This applies especially
to all data saved on the SYS partition.

MP_hideWriteProtected
Hide write-protected parameters
Format: Selection menu
Options: TRUE
Hide write-protected configuration objects.
FALSE
Display all configuration objects
Default: TRUE
Access: LEVEL3
Reaction: NOTHING

588 HEIDENHAIN Technical Manual TNC 640


4.2.8 Update rules

Introduction You can use update rules to insert, delete, rename and move OEM machine
parameters. You can also change parameter values and the sizes of list fields.
In addition, existing OEM tables can be updated using update rules. For this,
the control supports the addition, deletion and renaming of columns, as well
as the modification of the column width and contents of the affected cells.
The update rules define rules that are used for automatically updating the
machine parameters and tables during a software update.
To access the update rules, press the MORE FUNCTIONS soft key in the main
menu of the Machine Parameters mode of operation, and then the UPDATE
RULES soft key.

If you want to transfer a new PLC program to the control, for example as part
of an NC-software update via USB stick, then often it is also necessary to
change or expand the OEM machine parameters and OEM tables. You can
use the update rules to have these changes performed automatically.
These update rules are also a tool for keeping track of the versions. You can
assign version numbers when changing machine parameters or tables. During
a software update, the control automatically detects an increase in the version
number, and the update rules are applied.
As far as machine parameters are concerned, the update rules can only be
used to change or create new OEM machine parameters. You can also change
input values for parameters accessible via the MP code number 95148.
During the first restart of the control after the update, the service technician
who updated the NC software must check and confirm the changes made by
the update rules to the configuration.

January 2015 4.2 The "Machine Parameters" mode of operation 589


If the user attempts to leave the configuration editor without saving the
changes, a dialog window appears prompting the user to save them. The
configuration editor cannot be exited until the data are saved.

Note

The first restart of the control after the update cannot be continued without
saving the configuration changes made by the update rules.

If configuration objects or tables are to be added or deleted during a software


update, then you must define a command for this action in the update rules.
You can call the update rules function to view all previous changes to the
configuration or tables made with update rules.
These rules no longer need to be followed once the software has been
exchanged (see "NC software exchange on the TNC 640" on page 222).

Procedure for For updating tables, you must also enter the tables to be checked during start-
updating tables up in the following list under "files":
Example:
CfgTableUpdateList (
key:=“OemAtStartup”,
files:= [
“tchprobe.tp”,
“toolturn.trn”,
“%OEM%\table\MOTOR_OEM.MOT”,
“%OEM%\table\*.com”
]
)

When updating any of the tables contained in this list, the version number of
the respective table is checked. If the version number of the table is not
available on the control or is older than the version number of the update rule,
the update is performed as follows:
 Step 1: The table updater enlarges all lines to the maximum line width that
occurs in the table

590 HEIDENHAIN Technical Manual TNC 640


 Step 2: The updater checks whether all columns of the table are contained
in CfgTableProperties. If not, the following strategy is used to search for a
suitable update rule:
• If an UpdKeyRename rule is found, the updater renames the column
whose name is different
• If an UpdTableModify (rules:=[“DROP COLUMN (COLNAME)“]) rule is
found, the updater deletes the redundant column
• If a column from CfgTableProperties does not yet exist in the table, the
updater inserts the respective column with the suitable width and the
default value from the associated CfgColumnDescription.
 Step 3: If the column sequence of the table differs from that specified in
CfgTableProperties, it is adapted to the specified sequence.
 Step 4: If the column width of the table differs from that specified in
CfgTableProperties, it is enlarged to the specified width. However, the
width of a column cannot be reduced, even if the configured width is
smaller.
 Step 5: Application of the specific table update rules
 Step 6: Writing the new version identification and storage of the updated
table. The previous table is saved in "filename.ext.bak."
Any fault that occurs during the execution of the table update rules leads to
canceling the conversion of the file currently being processed and to restoring
the original file.

Using update rules You must save update rules in a file with the extension .cfg.
 Ensure that a file with the name PLC:\config\[update rule].cfg exists on
the control.
 Open the Machine Parameters mode of operation, and use the CONFIG FILE
LISTS soft key to enter the path to the [update rule].cfg file as described
below. If you specify a file that does not yet exist, the control creates an
empty file with the specified name after saving.

Settings under CONFIG FILE LISTS


CfgConfigDataFiles
updateFiles
[0]: %oemPath%\[update
rule].cfg

 To edit the update rules in the Machine Parameters mode of operation,


press the MORE FUNCTIONS soft key, and then the UPDATE RULES soft key. Use
the commands listed below to search for the rule you want to edit or add.
 Select the desired command and press the MORE FUNCTIONS soft key and
then the INSERT soft key to add a new rule.

January 2015 4.2 The "Machine Parameters" mode of operation 591


Note

You can enter any name that does not yet exist as the key name. When the
control is next booted, the key name is replaced by a name created by the
control.
You need to select a file from the selection window as the storage file. If
the selection window is empty, you have not yet created a file with update
rules.

Always save an [update rule].cfg file in the final configuration of your


machine, and integrate this file with CONFIG FILE LISTS as described above.
This way you can have this file be overwritten with a new version at any time
as part of a software update, and have the update rules be followed.

592 HEIDENHAIN Technical Manual TNC 640


UpdObjectInsert The indicated configuration object is inserted. The procedure is performed if
 the control determines during startup that the indicated object does not
exist
 the current OEM version number of the configuration is less than the
version number indicated in the update rule.
There are various possibilities for inserting parameters into the new
configuration object:
 The name of the new configuration object is entered directly as a string.
Only parameters that are to be set to specific input values must be entered.
If the file specified in the update rule under "file" does not exist the update is
aborted. Either the file must be created or the update rule corrected.
Syntax:

UpdObjectInsert (

entity := STRING, ; Name of the configuration object

version := REAL, ; Version number

key := STRING, ; Key name of the configuration


object

file := STRING, ; Path/file name of where the new


object is to be saved

object := STRING ; Name of the new configuration


(OPTIONAL) object (identifier) and the values to
be set. To be specified only if
specific parameters are to be set
to defined values. Do not specify
parameters that are left empty or
set to default values.

Example:
UpdObjectInsert (
entity:="CfgOemBool",
version:=1.00,
key:="MG_OemBool",
file:="%OEM%\\config\\plc_oem.cfg"
object:="CfgOemBool (value:= [FALSE, TRUE])"
)

If the version identification of the OEM configuration is smaller than that


specified here (see also "Resetting the update version" on page 609), this
update rule creates the symbolic operand MG_OemBool in the configuration
object CfgOemBool. Possible values are TRUE and FALSE.

January 2015 4.2 The "Machine Parameters" mode of operation 593


UpdObjectRemove The indicated configuration object is removed from the current machine
configuration. If the name of a *.cfg file is entered, the configuration object is
removed only from the entered file.
The object to be removed is marked in the configuration editor. The user must
confirm the final removal by pressing the SAVE soft key in the configuration
editor.

Syntax:

UpdObjectRemove (

entity := STRING, ; Name of the configuration object

version := REAL, ; Version number

key := STRING, ; Key name of the configuration


object

file := STRING ; Configuration object is removed


(OPTIONAL) only from the entered file

Example:
UpdObjectRemove (
entity:="CfgOemBool",
version:=1.01,
key:="MG_OemBool",
file:="%OEM%\\config\\plc_oem.cfg"
)

The indicated configuration object is removed from the plc_oem.cfg file. Other
*.cfg files of the machine configuration in which the object also exists are not
affected.

594 HEIDENHAIN Technical Manual TNC 640


UpdObjectMove The indicated configuration object is moved to another *.cfg file. If the
indicated configuration object already exists in the file entered (*.cfg), no
action is performed.
Syntax:

UpdObjectMove (

entity := STRING, ; Name of the configuration object

version := REAL, ; Version number

key := STRING, ; Key name of the configuration


object

file := STRING ; Move configuration object to


indicated file

Example:
UpdObjectMove (
entity:="CfgOemBool",
version:=1.01,
key:="MG_OemBool",
file:="%OEM%\\config\\plc.cfg"
)

The indicated configuration object is moved from the current file to the file
plc.cfg.

January 2015 4.2 The "Machine Parameters" mode of operation 595


UpdKeyRename The key name of the indicated configuration object is changed. The file is not
changed.
Syntax:

UpdKeyRename (

entity := STRING, ; Name of the configuration object

version := REAL, ; Version number

key := STRING, ; Key name of the configuration


object

keyNew := STRING ; New key name

Example:
UpdKeyRename (
entity:="CfgOemBool",
version:=1.01,
key:="MG_OemBool",
keyNew:="MG_Boolean"
)

The symbolic marker MG_OemBool is renamed as MG_Boolean.

596 HEIDENHAIN Technical Manual TNC 640


UpdAttributeInsert The indicated machine parameter is inserted in the machine configuration. The
procedure is performed if...
 the control determines that the parameter is currently hidden or does not
exist
 the current OEM version number of the configuration is less than the
version number indicated in the update rule.
If you would like to insert a value for an optional machine parameter, you must
set insertOptional:=TRUE.
If you do not enter a value, the control automatically uses the default
parameter value when following the update rule.
Newly entered machine parameters are designated accordingly when the
configuration editor is first started.
Syntax:

UpdAttributeInsert (

entity := STRING, ; Name of the configuration


object

version := REAL, ; Version number

key := STRING, ; Key name of the configuration


(OPTIONAL) object

attrName := STRING, ; Name of the machine


parameter to be inserted

index := UNSIGNED, ; Index for list parameters


(OPTIONAL) (arrays). If the parameter is a list,
then it is inserted at the given
location

insertOptional := BOOLEAN, ; Insert optional parameter


(OPTIONAL)

value := STRING ; Parameter value. Default value


(OPTIONAL) is used if nothing is entered.
Only for lists:
If, instead of an index, only a
value is specified, this value is
inserted only if it is not yet
contained in the list. In this case
the value is appended to the list.

January 2015 4.2 The "Machine Parameters" mode of operation 597


Example:
UpdAttributeInsert (
entity:="CfgOemBool",
version:=1.02,
key:="MG_OemBool",
attrName:="value"
index:=2,
insertOptional:=TRUE,
value:="TRUE"
)

A new index with the value TRUE is inserted for the marker MG_OemBool.

598 HEIDENHAIN Technical Manual TNC 640


UpdAttribute The machine parameter is removed from the specified configuration objects
Remove of the machine configuration.
This update rule is needed in case an optional machine parameter or a list
element is no longer required after a version update.
Syntax:

UpdAttributeRemove (

entity := STRING, ; Name of the configuration


object

version := REAL, ; Version number

key := STRING, ; Key name of the configuration


object, must be indicated

attrName := STRING, ; Name of the machine


parameter to be removed

index := UNSIGNED, ; Index for list parameters. The


(OPTIONAL) element with this index will be
removed from lists.

removeOptio := BOOLEAN, ; Remove optional parameter


nal (must be set to TRUE)

value := STRING, ; Only for lists:


(OPTIONAL) A value is removed from a list
only if the value matches the
string. Do not specify any index
in this case!

Example:
UpdAttributeRemove (
entity:=“CfgTableUpdateList”,
version:=40.42,
key:=“OemAtStartup”,
attrName:=“files”,
removeOptional:=TRUE,
value:=“TOOL”
)

The list element "TOOL" is searched for in the "files" list in the configuration
object with the name OemAtStartup, and deleted if it is found. Do not specify
any index here, because this would prevent the search from being applied to
the entire list.

January 2015 4.2 The "Machine Parameters" mode of operation 599


UpdAttributeRemove (
entity:=“CfgTableUpdateList”,
version:=40.43,
key:=“OemAtStartup”,
attrName:=“files”,
index:=1,
removeOptional:=TRUE,
value:=“TCHPROBE”
)

The list element with index 1 is deleted from the "files" list in the configuration
object with the name OemAtStartup if the list element contains the value
"TCHPROBE."

600 HEIDENHAIN Technical Manual TNC 640


UpdAttributeNew The input value of the indicated machine parameter is checked. If the input
Value value corresponds to the value entered in the update rule or is within the given
value range
 either the input value is changed or
 the input value is multiplied by the given factor and then changed. The
conversion is only effective for numeric parameter values.
If no value range is defined (minValue and maxValue are not set), the new
parameter value always takes effect.
If a single value is entered (minValue or maxValue is set), the new value
becomes effective if the old value exactly equals the given value.
The "multiplier" value can be used for modifications in bit form (AND / OR). In
this case the parameter addressed via the "multiplier" value is modified in bit
form, and the result is assigned to the momentary parameter.
Example for parameter modification via AND operation:
multiplier:="CfgOemInt-value[1]&%100"
Example for parameter modification via OR operation:
multiplier:="CfgOemInt-value[1]|%100"
Syntax:

UpdAttributeNewValue (

entity := STRING, ; Name of the configuration object

version := REAL, ; Version number

key := STRING, ; Key name, if the value is to be


changed in only one specific
configuration object. Otherwise
do not enter anything.

attrName := STRING, ; Name of the machine


parameter

index := UNSIGNED, ; Index for list parameters


(OPTIONAL) (arrays). Is only checked if the
parameter is an index

minValue := STRING, ; Minimum value


(OPTIONAL)

maxValue := STRING, ; Maximum value


(OPTIONAL)

value := STRING ; New input value


(OPTIONAL)

factor := REAL ; Multiplication factor


(OPTIONAL)

dependsOn ; Reserved

multiplier ; Multiplier, can be used for


modification in bit form.

calculation Mode ; Reserved

January 2015 4.2 The "Machine Parameters" mode of operation 601


Example:
UpdAttributeNewValue (
entity:="CfgOemBool",
version:=1.01,
key:="MG_OemBool",
attrName:="value",
value:="TRUE"
)

The MG_OemBool marker is changed to the input value TRUE in the


configuration object CfgOemBool.

UpdAttributeNewValue (
entity:=“CfgOemInt”,
version:=99.02,
key:=“Example1“,
attrName:="value",
index:=1,
minValue:=“9001”,
value:=“8001”
)

602 HEIDENHAIN Technical Manual TNC 640


In the configuration object CfgOemInt, the Example1 marker is changed to a
value of 8001 if the previous value was 9001.

UpdAttributeNewValue (
entity:=“CfgOemReal”,
version:=99.02,
key:=“Example2”,
attrName:="value",
index:=1,
minValue:=“12”,
maxValue:=“12.1”,
value:=“12.12”
)

In the configuration object CfgOemReal, the marker Example2 is changed to


a value of 12.12 if the previous value was in a range from 12 to 12.1.

UpdAttributeNewValue (
entity:=“CfgOemInt”,
version:=99.02,
key:=“Example3”,
attrName:="value",
index:=0,
minValue:=“10”,
maxValue:=“20”,
factor:=10
)

In the configuration object CfgOemInt, the value of the marker Example3 is


changed by a factor of 10 if the previous value was in a range from 10 to 20.

January 2015 4.2 The "Machine Parameters" mode of operation 603


UpdAttributeMove The machine parameter is moved from the specified configuration objects of
the machine configuration to another configuration object, whereby explicit
key names can be specified for the source and target.
Syntax:

UpdAttributeRemove (

entity := STRING, ; Name of the configuration


object

version := REAL, ; Version number

key := STRING, ; Key name of the configuration


(OPTIONAL) object (optional)

attrName := STRING, ; Name of the machine


parameter to be moved

entityNew := STRING, ; Name of the configuration


object to which the parameter
should be moved

keyNew := STRING, ; Key name of the configuration


(OPTIONAL) object to which the parameter
should be moved (optional)

attrNameNew := STRING, ; New name of the machine


(OPTIONAL) parameter (if required / optional)

UpdAttributeRemove (
entity:="CfgTableUpdateList",
version:=40.43,
key:="OemAtStartup",
attrName:="files",
index:=1,
removeOptional:=TRUE,
value:="TCHPROBE"
)

The list element with index 1 is deleted from the "files" list in the configuration
object with the name OemAtStartup if the list element contains the value
"TCHPROBE."

604 HEIDENHAIN Technical Manual TNC 640


UpdTableModify For defining specific rules for updating tables.

Syntax:

UpdTableModify (

tableType := STRING, ; Type of table (must be defined


in CfgTableProperties)

version := REAL, ; OEM version number

rules [...] := STRING ; Actual update rule(s)

IMPORT import-list:= ; Defines the import of a table


([*] [,column- created on a different control
list]) (e.g. iTNC 530). (1)

copy-list:= ([*]
[,column-list])

import-to-
statement:=
[TO name]
import-list
COPY TO
copy-list
[exclude-
option] [import-
option]

IMPORT name ; Replaces existing data records


REPLACE in the target table with data
records from the source table.

IMPORT name [import- ; Clears the target table before


CLEAN option] the import.

IMPORT column FROM ; Converts a value from the


CONVERT (value-list) TO source table and inserts the
(value-list) converted value in the target
table. (2)

IMPORT column FROM ; Replaces a substring of a value


MODIFY substring TO from the source table with the
substring TO substring, and inserts the
modified value in the target
table. (3)

IMPORT column FROM ; Converts the format of a


INDEX comparison- numerical value. (4)
operator TO
format-string

DROP (column-list) ; Deletes the column from the


COLUMN table if it is not listed in
CfgTableProperties/
columnKeys.

January 2015 4.2 The "Machine Parameters" mode of operation 605


UPDATE column FROM ; If a value from the specified
CONVERT (value-list) TO column matches a value under
(value-list) FROM of the value-list, this
value is changed to the
associated value under TO. (5)

UPDATE column FROM ; If a substring from the specified


MODIFY substring TO column matches the substring
substring under FROM, this substring is
changed by the substring under
TO. (6)

UPDATE name ; Requests confirmation for


CONFIRM saving the changed table during
startup of the control. The
symbolic name of the table must
be assigned as the name.

INSERT (column-list) ; If columns are to be inserted,


COLUMN 'FROM' name they are copied from the
'WHERE' specified table. (7)
(column-list)
'EQUAL'
['TO' name ]

(1) The format is not completely identical to the format used on NCK-based
controls. Therefore, the tables cannot be simply copied directly. Only a subset
of the columns needs to be copied, columns need to be renamed, and values
need to be converted.
If the TO option is missing, the target table is also the source table. With the
TO option, the result is transferred to the specified table.
If the target table is also the source table, the target table is cleared and a line
with the key "0" is inserted.
If the target table is not the source table, the data records from the source
table are entered in the target table. If the table already contains data records,
a warning is issued and the import is aborted.
An IMPORT TO rule must contain the symbolic name of the table in which the
data records are to be imported. The symbolic name is followed by the list of
columns to be imported.
The symbolic name is followed by the list of columns to be imported. The list
must be preceded by the COPY TO keyword, followed by the names of the
columns for the target table. Make sure that, for each column name of the
source file, a corresponding column name for the target table is defined. You
can also use the wildcard * as the column name. In this way, you can copy all
the columns of the source table that also exist in the target table.
(2) An IMPORT CONVERT rule must contain the name of the column to be
converted.
The name is followed by the list of columns to be converted. The list must be
preceded by the FROM keyword. If "*" is part of the list, all values that do not
match one of the values are set to the default value.

606 HEIDENHAIN Technical Manual TNC 640


(3) An IMPORT MODIFY rule must contain the name of the column to be
modified.
The keyword FROM is then followed by the substring to be replaced. Next
comes the keyword TO, followed by the substring that is to replace the source
substring.
(4) An IMPORT INDEX rule must contain the name of the column to be
converted.
The keyword FROM is then followed by the comparison statement. The
following symbols are permitted for the comparison statement: ">", "<", "=". If
the result "TRUE" is returned for the comparison with the current value, the
conversion is performed.
Next comes the keyword TO, followed by the format string. The format string
must must be given in the C language syntax "printf" for a string value.
(5) An UPDATE CONVERT rule must contain the name of the column to be
converted.
The name is followed by the list of columns to be converted. The list must be
preceded by the FROM keyword. If "*" is part of the list, all values that do not
match one of the values are set to the default value.
(6) An UPDATE MODIFY rule must contain the name of the column to be
modified.
The keyword FROM is then followed by the substring to be replaced. Next
comes the keyword TO, followed by the substring that is to replace the source
substring.
Please note that the FROM and TO substrings must have exactly the same
length!
(7) This rule can be used to update a table.
If columns listed in CfgTableProperties/columnKeys are not contained in the
table, they are inserted in the table.
Using this rule, you also define that the values of the inserted columns are
copied from another table. In addition, you can specify that values are only
copied for lines that contain matching values. If no such matching values are
found, the default values are inserted.
The first column defines the columns to be inserted. "*" inserts all columns
missing in the table.
The keyword FROM is then followed by the symbolic name of the table from
which the values are to be copied.
Next comes the keyword WHERE, followed by the columns containing the
values that must be equal in both tables for the missing values to be copied.
The rule can be optionally restricted to a single table by adding the keyword
TO followed by the name of the desired table.

January 2015 4.2 The "Machine Parameters" mode of operation 607


Examples:
UpdTableModify (
tableType:=“T”,
version:=10.08,
rules:=[
“DROP COLUMN ( EXAMPLE )”
]
)

The column "EXAMPLE" is removed from the tables of the *.T type.

UpdTableModify (
tableType:=“T”,
version:=10.08,
rules:=[
“UPDATE CONVERT TL FROM (’’,L) TO (0,1)”,
“UPDATE CONVERT LIFTOFF FROM (N,Y) TO (0,1)”,
“UPDATE MODIFY NAME FROM (,) TO (.)
]
)

Empty fields are filled with "0" and "L" entries are replaced by "1" in the "TL"
column in the tables of the *.T type.
The entries "N" are replaced by "0" and the entries "Y" by "1" in the "LIFTOFF"
column.
In addition, the substring "," is to be replaced by the substring "." in the "NAME"
column.

The following rule is the only rule of the previous rules for configuration
objects that can also be used for the table update:
UpdKeyRename (
entity:=“CfgColumnDescription”,
version:=11.04,
key:=“No”,
keyNew:=“NR”
)

The "No" column is renamed as "NR."

608 HEIDENHAIN Technical Manual TNC 640


4.2.9 Removing syntax errors
The REMOVE SYNTAX ERROR soft key in the MORE FUNCTIONS soft-key
menu becomes selectable when the configuration data in the *.cfg files is
being changed manually, or when faulty or incomplete update rules are being
used during a software update.
Pressing it opens the faulty file as well as a text editor so that the file can be
corrected manually.
Since this soft key can only be selected in one of the above cases, and these
cases do not occur during normal operation, the soft key cannot be selected
during normal operation.
The start-up of the control is interrupted if a faulty file is detected. The window
for entering a code number appears. You must enter the OEM or
HEIDENHAIN code number for the configuration editor. The main menu of the
configuration editor appears. The REMOVE SYNTAX ERROR and END soft
keys can be selected. Pressing the END soft key continues start-up. However,
this will lead to many error messages, since only faulty or no configuration data
is available.
The END soft key saves and reloads the file. This can take a moment. If there
are still errors, the soft key remains active.
Otherwise the CONFIG DATA soft key becomes selectable. You can use it for
further corrections in the configuration editor. If the data is now correct, the
END soft key in the main menu of the configuration editor will continue start-
up.
If any other errors are reported, they must be fixed with the configuration
editor.

4.2.10 Resetting the update version


The RESET VERSION soft key in the MORE FUNCTIONS soft key menu
enables you to return to the previous software version of machine parameters
(configuration data).

If, after a software update, configuration errors occur while the control is
starting up, the previous executable version can be reactivated. Then find and
correct the error by using the update rules.

January 2015 4.2 The "Machine Parameters" mode of operation 609


4.2.11 Backup of parameters
The DATA BACKUP soft key in the configuration editor enables you to save
and restore configuration data as well as to create text files with the current
machine parameters:

The following functions are available:


 Save parameter files in backup
The following file name is suggested:
%OEM%\service\BKUPyear-month-day_.ZIP
HEIDENHAIN recommends appending meaningful information to the
suggested name, for example, the control model, software version, etc.
All active *.cfg configuration files from %OEM% and %USR% are saved in the
selected backup file, e.g. BKUP2005-04-05_tnc320-sw123.ZIP; see
%OEM%\config\Configfiles.cfg:
- All files from %OEM% in the _Oem_Config_Files_.zip file
- All files from %USR% in the _Usr_Config_Files_.zip file
The update files listed in Configfiles.cfg under updateFiles:= are not
saved in the backup file.
You can include any OEM-specific files in the parameter backup, see "Saving
OEM-specific backup with the configuration editor and restoring it" on page
612.
 Activate parameter files from backup
The *.cfg configuration files from %OEM% and %USR% are retrieved from
the selected backup file and activated.
 Save help information in text file
The following file name (to be amended) is suggested:
%OEM%\service\HELPyear-month-day_.TXT
The created text file with the selected name contains the help information
about all parameter objects and attributes. If a parameter exists more than
once, for example for several axes, only the information about the first
parameter is saved.

610 HEIDENHAIN Technical Manual TNC 640


 Save help information in XML file
The output XML file contains nodes, entities and attributes analogous to the
structure in the configuration editor. The corresponding help text ID (text
name) and the help text is output for each element.
All existing help information is output, e.g. parameter number, iTNC MP
number, limit values, default values etc.
The PLC:\config\layout folder contains the XmlHelpTree.xsd XML schema
file. This file specifies the structure of the generated XML file.
 Save data tree in file
The following file name (to be amended) is suggested:
%OEM%\service\TREEyear-month-day_.TXT
The created text file with the selected name contains the current values of
all parameter objects and attributes.
Note

You can also use the PC software TNCbackup for backing up your data in
an easy and convenient way. TNCbackup is part of TNCremo and is
available free of charge from HEIDENHAIN, for example from the FileBase
on the Internet (filebase.heidenhain.de).

Note

A backup should be performed after commissioning and every time


the machine parameters have been edited.

 Load default configuration


A default configuration of the NC software is loaded, in which all parameters
are reset to their initial values. The existing configuration is overwritten.
By default, the function loads a TNC 640 configuration from the SYS
partition, with which the machine cannot be run.
If there are configuration files in the %OEM%\default\oem or
%OEM%\default\usr directory (directories with files), this data is copied to the
corresponding directories on %OEM% or %USR% when the function is executed.
In this case, no default data of the NC software is copied from the SYS
partition. If you store the configuration data of the machine in the directories
given above, the machine will be ready to run after execution of the function.
Before the default data is loaded, a backup of the previous configuration is
stored in %OEM%\CONFIG.BAK.

January 2015 4.2 The "Machine Parameters" mode of operation 611


4.2.12 Saving OEM-specific backup with the configuration editor and restoring it
As of NCK software level 597110-08:

Settings in the configuration editor MP number


System
Paths
CfgConfigBackup
backupFiles 123701

With the DATA BACKUP soft key and the Back up parameter files function,
you can create an OEM-specific machine backup.
Your customer can then use the file manager to install this *.ZIP backup, e.g.
in the TNC 640 programming station.
The MP_backupFiles machine parameter makes it possible to add further
files or directories to the parameter backup. As the backup file may also
contain tables, an emergency stop must be performed before creating the
backup.
The backup can be restored either by using the configuration editor (Activate
parameter files from backup function) or directly by selecting it in the file
manager. Before the restore process can be started, the MOD code RESTORE
must be entered.

MP_backupFiles
Additional directories or files for the config backup
Available from NCK software version: 597110-08.
Format: String
Input: List of up to 40 paths, max. 260 characters per path
Enter here directories or files that are to be additionally included
in the backup by using the Back up parameter files function.
Default: No value, parameter optional
Access: LEVEL3
Reaction: NOTHING

612 HEIDENHAIN Technical Manual TNC 640


4.2.13 Resetting system settings
The RESET SETTINGS soft key in the MORE FUNCTIONS soft-key menu
resets all nonvolatile system settings. Nonvolatile system settings are
retained when the control is switched off.
Nonvolatile system settings include:
 Screen layout defined in the Manual Operation and Program Run modes of
operation
 Active machine kinematics and tilting-axis situation
 Settings of the integrated oscilloscope
 NC programs selected in the Program Run, Programming and Test Run
modes of operation
 Settings for automatic program start
 File sorting defined in the file manager
 Information saved to undo changes made to the machine configuration
It may sometimes be necessary to reset these settings, for example, if
incorrect system settings cause problems during startup.
After pressing the soft key, the user is prompted to confirm deletion of the
system settings:

 Press the OK soft key to delete the system settings. You can restart the
TNC 640 manually later on. However, restarting is necessary, because no
new system settings can be saved until the control is restarted.
 Press the CANCEL soft key to cancel the process.
 Press the CLOSE CONTROL soft key to delete the system settings and to
shut down the TNC 640. The TNC 640 must be restarted immediately.

January 2015 4.2 The "Machine Parameters" mode of operation 613


4.3 User parameters
You can provide the machine tool operator with easy access to parameters
known as user parameters. These parameters can, for example, refer to
language settings or data evaluated by the PLC. You can display a freely
definable help text for every user parameter on the right half of the screen.
Press the HELP key to show the help text. You define the help text in a
language-sensitive *.CSV file.

Freely definable You call the user parameters by pressing the MOD key and entering the code
code numbers number 123, or by entering a freely definable code number. After pressing the
MOD key, the USER PARAMETERS soft key is also displayed. Press this soft key
to call predefined user parameters. You can assign separate soft keys to the
parameters. The control displays these soft keys on the third soft-key row
level.

Layout file in XML You define the layout of the user parameters in layout files. These layout files
format are in XML file format.
XML (= extensible markup language) is a standard language for data
exchange. It uses tags, allowing for exact description of the data and the
structure. You will find a list of all XML commands supported by the control in
"XML commands for creating the layout files" on page 624.
In "Example:" on page 622 a simple example illustrates how you create a
layout file for your user parameters and separate help texts for the
parameters.

614 HEIDENHAIN Technical Manual TNC 640


4.3.1 Configuration of the user parameters

Settings in the configuration editor MP number


System
Key code
CfgOemPassword 106900
[Key name]
funcList 106901
CfgModOemSoftkey 107100
[Key name of the parameter view]
activation 107101
skPos 107102
buttonText 107103
dialogRes
text
buttonImage 107104
funcKey 107105
helpId 107106
CfgCfgEditActivate 107200
[Key name of the parameter view]
layoutFile 107201
dispLangText 107202
System
Paths
CfgOemPath 102000
dialogTextfile 102002

 CfgOemPassword
[Key name]
Define a key name for your own parameter view under MP_funcList, for
example: MP_funcList[0]: CFGEDIT-OEM.
Note

If you also want to grant your machine operators access to LEVEL3


machine parameters (See "Access rights" on page 585.), you also have to
enter the following value under MP_funcList:
MP_funcList[1]: CONFIG-LEVEL3
LEVEL3 is required for accessing PLC parameters in the configuration
objects CfgOemInt, CfgOemBool, etc.

 CfgModOemSoftkey:
After entering an OEM code number, you can display a soft key to call the
user parameters. For configuration, enter the same key name as in
CfgOemPassword/funcList, e.g. CFGEDIT-OEM. You can define an image,
a language-neutral or a language-sensitive text for the soft key. The
individual parameters of CfgModOemSoftkey are described in more detail
below.

January 2015 4.3 User parameters 615


 CfgCfgEditActivate
Specifies the XML layout file for the depiction of the user parameters. You
have to enter the same name as in CfgOemPassword/funcList as key name.
The views for the code number 123 (CFGEDIT-USER123) and the view
without code number (CFGEDIT-USERPARAM) are already defined.
• MP_layoutFile: path to the XML layout file:
You define the layout for the tree structure of the user parameters in the
XML file. You define the path to the layout file in MP_layoutFile.
HEIDENHAIN recommends saving the XML layout files under
%OEM%:\config\layout.
Two views are already defined by HEIDENHAIN.
(CFGEDIT-USER123 and CFGEDIT-USERPARAM). The settings in
CONFIGEDIT-USER123 apply to the user parameters that are displayed
after you have entered the code number 123.
CONFIGEDIT-USERPARAM applies to the user parameters you call by
pressing the USER PARAM soft key. You can adapt these views to your
own requirements or delete them from the configuration. The
associated XML layout files are available at:
%OEM%\config\layout\userparam.xml and
%OEM%\config\layout\user123.xml
• MP_dispLangText—show language-sensitive parameter names:
Set the machine parameter MP_dispLangText to TRUE if you want to
display by default your own parameter names from the *.CSV file (e.g.
"conversational language") for the user parameters instead of the
system names (e.g. CfgDisplayLanguage).
 MP_dialogTextfile—language-sensitive help texts and parameter
names:
You can configure the parameter names and the parameter help texts (to be
shown in the help window) in multiple languages. In MP_dialogTextfile,
enter the file name of the *.CSV file containing the parameter texts. The
path is permanently defined: %OEM%\plc\language\en (or another
language abbreviation). Therefore, enter only the file name without path.
The language abbreviation defined in MP_System/DisplaySettings/
CfgDisplayLanguage/ncLanguage is used. If the file is not available in the
selected language, the control attempts to open the English file (directory:
%OEM%\plc\language\en).

616 HEIDENHAIN Technical Manual TNC 640


Machine Machine parameters in the CfgOemPassword configuration object:
parameters
MP_funcList
List of function names (= key names) that are called by entering
the password
Available from NCK software version: 597110-01.
Format: Array [0...199]
Input: Key name of max. 18 characters
Name of the functions that are called by entering the password.
Enter these names as key names in CfgModOemSoftkey and
CfgCfgEditActivate.
The key name of CfgOemPassword defines the password.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

Machine parameters in the CfgModOemSoftkey config object:

MP_activation
Specifies whether the defined function is a foreground
application.
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
The defined function is a foreground application, e.g.
configuration editor. Set this value if the soft key opens the
configuration editor to display user parameters.
FALSE
Function performed in the background.
Default: FALSE
Access: LEVEL3
Reaction: RESET

MP_skPos
Position of the soft key in the 3rd menu bar
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 7
0: first soft key from the left
No input: The soft key is not displayed
Menu bars 1 and 2 are reserved for HEIDENHAIN.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

January 2015 4.3 User parameters 617


The buttonText folder contains two machine parameters used to define the
labeling of the soft key. You can either define a reference to the text in a
language-sensitive *.CSV file or a language-neutral text. Leave the
buttonText empty if you want to define an image for the soft key with
MP_buttonImage.

MP_dialogRes
Reference to a language-sensitive text in a *.CSV file.
Available from NCK software version: 597110-01.
Format: String
Input: Max. 40 characters
Example:
OEMTXT_001_ncLanguage
The designator must be available in a text resource file (*.CSV).
The text file must be defined under
System/Paths/CfgOemPath/dialogTextfile.
Leave the parameter empty if you do not want the soft key
labeling to be language-sensitive. Enter the text directly under
MP_text instead.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

618 HEIDENHAIN Technical Manual TNC 640


MP_text
Soft key designator.
Available from NCK software version: 597110-01.
Format: String
Input: Max. 60 characters
Enter a language-neutral text. If a language-sensitive text was
defined with MP_dialogRes you must not change the displayed
string; the control displays the entry from a *.CSV file.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

MP_buttonImage
Image for soft keys
Available from NCK software version: 597110-01.
Format: String
Input: Path/file name to an image for a soft key
Leave the parameter empty if you have defined a text for the
soft key under buttonText.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

MP_funcKey
Key name of the function being activated when the soft key is
pressed
Available from NCK software version: 597110-01.
Format: String
Input: Max. 18 characters
The key name must be entered only if the name of the function
does not match the key name.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

MP_helpId
Symbolic name of the context information for online help
(*.CHM)
Available from NCK software version: 597110-04.
Format: String
Input: Max. 80 characters
The entered symbolic name can belong to a HEIDENHAIN or
OEM manual.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

January 2015 4.3 User parameters 619


Machine parameters in the CfgCfgEditActivate configuration object:

MP_layoutFile
Path/name of the XML layout file for user parameters
Available from NCK software version: 597110-01.
Format: String
Input: Max. 80 characters
Default: Example for user parameters (code number 123)
%OEM%\config\layout\user123.xml
Access: LEVEL3
Reaction: NOTHING

MP_dialogTextfile
Name of the text file for OEM texts
Available from NCK software version: 597110-01.
Format: Array [0...9]
Input: Enter the name (without the path!) for OEM text files. You can
enter any files with the extension *.CSV in which you define
your OEM-specific texts
The path %OEM%\plc\language\<language> is fixed, whereby
<language> is formed from the configured conversational
language, e.g. "en" for English.
Default: UserParam.CSV
Access: LEVEL3
Reaction: RESET

MP_readOnly
Open the configuration editor with read access only.
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
The configuration editor is opened with read access only; the
parameter values cannot be changed.
FALSE
The configuration editor is opened with read and write access
Default: No value, parameter optional (same behavior as for FALSE)
Access: LEVEL3
Reaction: NOTHING

620 HEIDENHAIN Technical Manual TNC 640


Machine parameters in the CfgOemPath configuration object:

MP_dispLangText
Display language-sensitive names in the configuration editor?
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
The detailed language-sensitive names are displayed.
FALSE
The symbolic English system names are displayed.
Default: TRUE
Access: LEVEL3
Reaction: NOTHING

January 2015 4.3 User parameters 621


4.3.2 Example:
Creating a layout for the user parameters. The example illustrates how you
enable the machine operator to access a parameter from your machine
configuration as a user parameter.
Goal:
Creation of a menu for selecting the language. The menu is to appear on the
screen after you have pressed the MOD key and entered the code number
123. The user's own parameter names and help text are to be displayed.

The best solution for handling XML files is to use an XML editor. These editors
are available from software vendors, or as freeware from the Internet for
example. As an alternative, the XML layout file can also be edited with a text
editor, such as Notepad. However, XML editors will help you a great deal in
working with structured XML files.
 First step: Create a new empty XML file with the file name "user123.xml".
Example:

<?xml version="1.0" encoding="UTF-8"?>


<!-- user123.xml from HEIDENHAIN 19.07.2011 -->

 Then specify the name of the XML schema file (XSD file). The XML editor
uses the XML schema file to validate the created XML file. The XML editor
verifies the file formally each time it is saved. This formal verification is
based on the information in the *.XSD file. You will find the
"configtreelayout.xsd" file on the control under %OEM%\config\layout\. You
can use this file to validate your new user parameter layout. For this
purpose, you must use TNCremo to copy the file into the project directory
of your XML editor on your PC.

622 HEIDENHAIN Technical Manual TNC 640


 The XML file will look like this:

<?xml version="1.0" encoding="UTF-8"?>


<!-- user123.xml from HEIDENHAIN 19.07.2005 -->
<ConfigtreeLayout xmlns="http://www.hng.ch/ConfigEditLayout/1"

xsi:schemaLocation="http://www.hng.ch/ConfigEditLayout/1
configtreelayout.xsd">

 Then the "conversational language" folder is created:

The following entry is therefore added to the XML file:

<Node Name="CfgDisplayLanguage"
DialogRes="OEMTXT_CfgDisplayLanguage">

Use the command DialogRes= to assign a language-sensitive name (here:


"conversational language") from the OEM text file (.*CSV) to the
CfgDisplayLanguage folder. If you want to display this text as folder name
by default, you must set MP_dispLangText to TRUE.
 In the previously created "conversational language" folder, two machine
parameters for setting the language of the NC dialog texts and the help texts
are to be defined:

For this, the following entries are required in the XML files:

<SimpleAttribute Keyfilter="*" Name="ncLanguage"


Entity="CfgDisplayLanguage" DialogRes="OEMTXT_ncLanguage">
</SimpleAttribute>
<SimpleAttribute Keyfilter="*" Name="helpLanguage"
Entity="CfgDisplayLanguage" DialogRes="OEMTXT_helpLanguage">
</SimpleAttribute>

 Then you conclude the "conversational language" folder and the XML
schema:

</Node>
</ConfigtreeLayout>

 The file is now complete and can be transferred to the control by using
TNCremo.
 Then you still need to make the entries for the OEM texts in the *.CSV file
and to adjust the machine configuration accordingly.

Note

You will find a preconfigured version of the "user123.xml" file on the control
under %OEM%\config\layout\. This file is only meant as a suggestion and
you can adjust it to your specific requirements.

January 2015 4.3 User parameters 623


4.3.3 XML commands for creating the layout files
Overview of XML commands for defining the layout of the user parameters:

XML command Description


Include
Example:
<Include File="%OEM%\config\layout\axes.xml"/>
 Inserts the layout definition of the specified file in the
layout.
 File: File name and path of the file to be inserted.
Node
Example:
<Node Name="DisplaySettings" DialogRes="OEMTXT_DisplaySettings"></Node>
 Defines a directory (branch, node) in the layout
 Permissible elements are:
Node, Keylist, Object, UniqueObject, SimpleAttribute,
Group, Key, Array
 Name: Language-neutral designation. Can be chosen
as desired.
 DialogRes: Text name from the OEM text file for
displaying a language-sensitive designation.
Keylist
Example:
<Keylist Name="ChannelSettings" Keyfilter="*"
 List of key names. The key names are displayed as
directories
 Permissible element: Entity
 Keyfilter: Filter for the key name. Permissible control
characters for the filter are *, ? (wildcards) and ‘.’.
 DialogRes: Text name from the OEM text file for
displaying a language-sensitive designation.
Entity
Example:
<Entity Name="CfgNcErrorReaction"/>
 Data object as element of a key list. The object name is
displayed as directory
 Permissible element: Attribute
 Name: Name of the data object
 DataOfAttribute: Name of an attribute whose data is
displayed here. The name of the attribute is not
displayed
 DialogRes: Text name from the OEM text file for
displaying a language-sensitive designation.

624 HEIDENHAIN Technical Manual TNC 640


XML command Description
Object
Example:
<Object Name="CfgPosDisplayPace" Keyfilter="*"/>
 List with objects. The object name is displayed as the
first directory, and the key name as the second. The key
name can be filtered
 Permissible element: Attribute
 Name: Name of the data object
 Keyfilter: Filter for the key name. For permissible
control characters, see above.
 DataOfAttribute: Name of an attribute whose data is
displayed here. The name of the attribute is not
displayed
 DialogRes: Text name from the OEM text file for
displaying a language-sensitive designation.
UniqueObject
Example:
<UniqueObject Name="CfgDisplayLanguage"/>
 Data object with an empty key name. These are data
objects that occur only once. Only the object name is
displayed
 Permissible element: Attribute
 Name: Name of the data object
 DataOfAttribute: Name of an attribute whose data is
displayed here. The name of the attribute is not
displayed
 DialogRes: Text name from the OEM text file for
displaying a language-sensitive designation.
Attribute

 Use this command if only certain attributes are to be


displayed. If this element is not specified, all attributes
of a data object will be displayed (standard behavior). If
the attribute is a field or a list, an element of a list can
be defined by specifying its index in square brackets.
Example: [3]
 Name: Name of the attribute
 DialogRes: Text name from the OEM text file for
displaying a language-sensitive designation.

January 2015 4.3 User parameters 625


XML command Description
SimpleAttribute
Example:
<SimpleAttribute Keyfilter="*" Name="ncLanguage" Entity="CfgDisplayLanguage"
DialogRes="OEMTXT_ncLanguage"></SimpleAttribute>
 Attribute without display of object name and key name.
If the attribute is used as a subelement of a node, an
existing key name must be specified (i.e. the key filter
must not contain any filter characters).
 Entity: Object name
 Keyfilter: Filter for the key name
 Name: Name of the attribute. If the attribute is a field or
a list, an element of a list can be defined by specifying
its index in square brackets.
Example: [3]
 DialogRes: Text name from the OEM text file for
displaying a language-sensitive designation.

626 HEIDENHAIN Technical Manual TNC 640


4.4 The KeySynonym function

Settings in the configuration editor MP number


KeySynonym
CfgKeySynonym
[Key name for the new parameter set]
relatedTo 109501
excludeList 109502

KeySynonym is a very helpful function for creating a new parameter set. You
use KeySynonym to create parameter sets that refer to existing parameter
sets and reuse the data contained in them. New parameter sets can be linked
to existing ones in
KeySynonym/CfgKeySynonym. As a result, you only have to define the
parameters that differ from the ones of the parameter set to which you have
linked the present parameter set.
Proceed as follows if you want to create a new parameter set using the
KeySynonym function:
 Open the configuration editor
 You will find the KeySynonym folder in the configuration tree. Move the
cursor to the folder and open it.
 Move the cursor to the CfgKeySynonym configuration object.
 Press the INSERT soft key.
 The control prompts you to enter a new key name. Now enter a name for
the new parameter set, such as ParSetS-1 for an additional set of
parameters for the spindle. Also specify via the pull-down menu the
memory file in which the data of the new parameter set are to be stored.
 The parameter-set key you just created contains the machine parameter
MP_relatedTo. Now enter the original parameter set, i.e. the one to which
the new parameter set is to be linked, e.g. ParSetS-0. This assigns (links) the
values from your 0-set for the spindle to all parameters of the new set.
Changes to the 0-set are automatically loaded by the linked parameter set.
 Save your changes with the SAVE soft key.
 A red message appears, stating that the control must be rebooted. Restart
the control now.
 Open the configuration editor when the control has rebooted.
 If you look in the ParameterSets configuration folder now, you will see a
new ParSetS-0 parameter set there. The yellow arrow in front of the
parameter set and entities indicates that the parameters are being mirrored
by the KeySynonym function.

January 2015 4.4 The KeySynonym function 627


 Now you can undo the linking of entities, as required. This means you enter
values that deviate from the original set of parameters. Select the desired
entity and press the MORE FUNCTIONS soft key and then the INSERT soft key.
The yellow arrow then disappears.
 Select the memory file via the pull-down menu.
 Save your changes with the SAVE soft key.
 The parameter set has now been created with the KeySynonym function,
and can be used.

MP_relatedTo
Link to key name
Available from NCK software version: 597110-01.
Format: String
Input: Max. 18 characters
The synonym name refers to the key name specified here.
The data of the parameter object with the indicated key name
are used for the parameter object with the synonym name.
Example:
CH_SIM uses the same data as CH_NC
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

MP_excludeList
List with configuration objects to be excluded
Available from NCK software version: 597110-01.
Format: Array [0...49]
Input: Name of configuration objects; example:
CfgPositionLimits
Cancel the reference at CfgKeySynonym/relatedTo for the
entered parameter objects.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

628 HEIDENHAIN Technical Manual TNC 640


4.5 Allocation of configuration data
The configuration data is saved in several files with the extension .cfg (see
"Managing configuration files" on page 577). Paths saved in the file
configfiles.cfg refer to these files.
This allocation has already been specified by HEIDENHAIN when the software
is delivered, but it can be adapted by the OEM to his requirements.
Allocation of configuration data:
 oem.cfg General data for systems and channels
 axlist.cfg Lists which axes are mounted, and can be
displayed and programmed. In addition, axlist.cfg refers to the kinematics
"Kinem_1" and "Kinem_2".
 ax3list.cfg Same as axlist.cfg, but for a machine with only
the three axes X, Y and Z.
 kinem*.cfg Description of kinematics
 kinem_XYZ.cfg A simple three-axis kinematics model.
ax3list.cfg refers to this kinematics model.
 axis_*.cfg Each drive has its own configuration file. This
makes it easy to change drives.
 spindle.cfg Configuration of spindle drive.
 plc.cfg Configurations for the PLC
 oemtable.cfg Configuration for tables
 configfiles.cfg Reference to the above configuration files

Multi-axis system The file configfiles.cfg for a 5-axis system might look like this (see DATA FILES
soft key):
dataFiles:=
[
"%OEM%\\config\\oem.cfg",
"%OEM%\\config\\ax3list.cfg",
"%OEM%\\config\\kinem_1.cfg",
"%OEM%\\config\\kinem_2.cfg",
"%OEM%\\config\\kinem_xyz.cfg",
"%OEM%\\config\\axis_x.cfg",
"%OEM%\\config\\axis_y.cfg",
"%OEM%\\config\\axis_z.cfg",
"%OEM%\\config\\axis_b.cfg",
"%OEM%\\config\\axis_c.cfg",
"%OEM%\\config\\spindle.cfg",
"%OEM%\\config\\plc.cfg",
"%OEM%\\config\\oemtable.cfg",
"%USR%\\config\\user.cfg"
],
kinem_xyz is already included in this list, even though the system does not use
it. But since a 3-axis system is often used for commissioning and testing, this
allows you to quickly reconfigure the system (see below).

These configuration files are preset in the control’s factory default setting.

January 2015 4.5 Allocation of configuration data 629


3-axis system Working from a 5-axis configuration (see above) prepared on it, the system can
easily be reconfigured to a 3-axis system by referring to the file ax3list.cfg.
dataFiles:=
[
"%OEM%\\config\\oem.cfg",
"%OEM%\\config\\ax3list.cfg",
"%OEM%\\config\\kinem_xyz.cfg",
"%OEM%\\config\\axis_x.cfg",
"%OEM%\\config\\axis_y.cfg",
"%OEM%\\config\\axis_z.cfg",
"%OEM%\\config\\axis_b.cfg",
"%OEM%\\config\\axis_c.cfg",
"%OEM%\\config\\spindle.cfg",
"%OEM%\\config\\plc.cfg",
"%OEM%\\config\\oemtable.cfg",
"%USR%\\config\\user.cfg"
],

Multiple variants As described above, configfiles.cfg may also contain files that are currently not
being used. This allows you to support more than one variant without having
to change or replace configfiles.cfg. However, instead of this, you can also
enter in configfiles.cfg only those files you will really use.
In practice, it is often necessary to support different sets of kinematics, for
example, if one customer wants to operate a fork head with the A axis,
whereas another customer wants to operate it with the B axis. If
configfiles.cfg is prepared properly, simply replace axlist.cfg and kinem_*.cfg
to be able to switch between the two variants.
dataFiles:=
[
"%OEM%\\config\\oem.cfg",
"%OEM%\\config\\axlist.cfg",
"%OEM%\\config\\kinem_1.cfg",
"%OEM%\\config\\kinem_2.cfg",
"%OEM%\\config\\kinem_xyz.cfg",
"%OEM%\\config\\axis_x.cfg",
"%OEM%\\config\\axis_y.cfg",
"%OEM%\\config\\axis_z.cfg",
"%OEM%\\config\\axis_a.cfg",
"%OEM%\\config\\axis_b.cfg",
"%OEM%\\config\\axis_c.cfg",
"%OEM%\\config\\spindle.cfg",
"%OEM%\\config\\plc.cfg",
"%OEM%\\config\\oemtable.cfg",
"%USR%\\config\\user.cfg"
],
Please note that both axis_a.cfg and axis_b.cfg are indicated. This enables you
to use both variants.

630 HEIDENHAIN Technical Manual TNC 640


4.6 Structure of a parameter file
The individual machine parameters are collected into parameter objects in the
*.cfg parameter files. A parameter object has a name, of which the first three
letters are always "Cfg." The name is followed by an open parenthesis and a
"key" for identifying the parameter object. This is followed by the individual
machine parameters. A parameter object must be surrounded by parentheses.
If there are several input values for a parameter (such as separate parameter
settings for each axis), then the corresponding parameter objects are
addressed via the key, and therefore occur more than once.
The parameter objects in the system files have an "empty" key.

Note

HEIDENHAIN recommends changing the parameter values directly in the


*.cfg files only in exceptional cases.

Rules for entries If changes are to be made directly in a text editor, the following rules must be
followed:
 "Key": Each parameter object has a key at the beginning, which generally
represents the name of the axis or channel, but in certain cases can also be
empty. The control assigns this parameter object to the object addressed by
the key, for example to the axis "X axis."
 The characters ":=" must come between the parameter name and the value.
 Individual parameters must be separated by commas. No comma may
follow the last parameter.
 Individual components, such as strings in a list or the components in the
array must be separated by commas. No comma may follow the last
component.
 The different levels in path entries must always be separated by "\\", for
example, "%SYS%\\CONFIG\\AXIS\\...".
 A list must always be in brackets [ ].
 If data objects with the same names and same identifications (keys) are
present, the error message "Data object already exists in file" is displayed.
 Comments are text that is ignored during transfer. You can enter two types
of comments:
• Comment in one line: After a double hyphen "--" the text until the end of
the line is ignored.
• Comments that are on more than one line must be surrounded like this:
(*comment*).
 Comments in files that are overwritten by the control (such as files with axis-
setting parameters or oscilloscope parameters) are deleted. For this reason
you should only add comments to files that are not written to by the control.

January 2015 4.6 Structure of a parameter file 631


Example of a parameter file *.cfg:

Parameter object Description


CfgChannelAxes( Name of the parameter object with
open parenthesis. You cannot change
this name.
Key:= "Channel1", Identification of the parameter object
with a string, such as the name of the
NC channel or an axis.
progAxis:= [ Data variable of the list type
"X axis", The individual elements of a list are
separated by commas. No comma
"Y axis",
may follow the last element in a list.
"Z axis",
A list must always be in brackets [ ].
"A axis",
"B axis"
],
......
[ More parameters follow…
......
],
......
No comma is allowed before the
closing parenthesis.
) Conclusion of the parameter object
-- Comment to the end of the line The text in the line after "--" (double
hyphen) is ignored
(* Characters for comment beginning
Comment distributed over several Everything between the comment
lines beginning and end is ignored
*) Characters for comment end

Parameter object Description


CfgAxis( Name of the parameter object with
open parenthesis. You cannot change
this name.
Key:= "S1", Identification of the parameter object
with a string, such as the name of the
NC channel or an axis.
isAng:= TRUE, Boolean type data variable
......, More data variables follow…
parList:= [ Data variable of the list type

632 HEIDENHAIN Technical Manual TNC 640


Parameter object Description
"PS1_0", The individual elements of a list are
separated by commas. No comma
"PS1_1",
may follow the last element in a list.
"PS1_2",
A list must always be in brackets [ ].
"PS1_3",
"PS1_C1"
],
noActToNomAtEmSt:=FALSE One more parameter follows…
No comma is allowed before the
closing parenthesis.
) Conclusion of the parameter object
-- Comment to the end of the line The text in the line after "--" (double
hyphen) is ignored
(* Characters for comment beginning
Comment distributed over several Everything between the comment
lines beginning and end is ignored
*) Characters for comment end

January 2015 4.6 Structure of a parameter file 633


4.7 MP subfiles
Individual data from the configuration files can be taken into the MP subfiles.
These subfiles can be superimposed on the machine parameters during run
time.
In principle, all files that do not require a system restart can be superimposed.
This activation is usually activated by the PLC, but can also be activated
manually by using the configuration editor.

4.7.1 Syntax of machine-parameter subfile


The syntax of an MP subfile corresponds to that of a basic file.
Subfiles differ from basic files in that only the entities or attributes to be
changed must be described.
In basic files a data object (entity) must be described completely. This means
that the basic file must contain the "key" and all "attributes" of the entity.
entity(
key:= Key4711,
attribute1:= value1,
attribute2:= value2,
attribute3:= value3,
attribute4:= value4,
)
In subfiles, only the required data needs to be indicated. Entity and key,
however, must always be indicated.
Please note: MP subfiles must not contain any reset parameters.
Example of MP subfile with a new value for attribute 3:
entity(
key:= Key4711,
attribute3:= valuex
)

634 HEIDENHAIN Technical Manual TNC 640


4.7.2 Load and edit an MP subfile via the configuration editor
 Press the MOD key
 Enter the code number 95148.
 Select the LOAD / EDIT SUBFILE soft key
 The following dialog is displayed

Load the MP subfile Load an MP subfile with the LOAD MP SUBFILE, LOAD AND SELECT or EDIT ONLY
soft keys.

Create new MP Load an MP subfile with the LOAD MP SUBFILE, LOAD AND SELECT or EDIT ONLY
subfile soft keys.
 For this purpose, enter the new name into the Name: field
 Select one of the specified soft keys
 Confirm the query File does not exist. Still adopt file name? by
pressing the soft key again

January 2015 4.7 MP subfiles 635


Soft key
descriptions
Soft key Function
Calls the function for activating/editing MP subfiles.

The selected MP subfile is loaded. The parameters are


effective immediately. To edit the parameters these must first
be activated, see "Displaying/editing data records in the
configuration editor" on page 639.
The selected MP subfile is loaded and activated. The
parameters are effective immediately and can be edited in the
configuration editor.
The selected MP subfile is opened only for editing and is not
effective. For example, this function can also be used to edit
reset parameters in MP subfiles without having to restart the
TNC 640.
Implements an update for the selected MP subfile or for the
MP subfiles in the selected folder. If you open a single file you
can then control the modifications implemented and save
these if required.

Update file / It is necessary to distinguish whether a single file or a directory as MP subfile


directory is selected.
Single file selected:
 Press the UPDATE / FILE DIRECTORY soft key
 A help page is displayed informing that the data must be checked
 Now check and save the modifications via the CONFIG DATA soft key
Directory selected:
 Press the UPDATE / FILE DIRECTORY soft key
 All MP subfiles in the directory are updated with the update rules. The
update is carried out individually for each single file and modifications are
saved immediately. Only *.cfg files are included in the update.
 A *.cfg.upd.dep file is created for each MP subfile updated without an
error. This file contains information about the implemented update.

636 HEIDENHAIN Technical Manual TNC 640


Display of information:
 Select MP subfile via the LOAD / EDIT SUBFILE soft key
 Press the EDIT ONLY soft key
 Open the MP sub file for editing with the CONFIG DATA soft key
 Exit editing with the END soft key. You are requested to save the data. This
deletes the *.cfg.upd.dep file so that the modification information is no
longer displayed.

Attention

If errors or warnings for example occur during updating of the MP subfiles,


note the information in the error window.

The PLC marker NN_GenCycleAfterReConfig is set upon activation of an MP


subfile if data relevant to the PLC have changed.

January 2015 4.7 MP subfiles 637


4.7.3 Activating the MP subfile via PLC
Subfiles are activated by Module 9034. In this case the symbolic PLC operand
NN_GenCycleAfterReConfig (M4174) will not be set.
Module 9034 Load a machine parameter subfile
Use this module to load the contents of the given configuration file into the
main memory. All configuration data not listed in this file remain unchanged.
The configuration file to be selected is checked. A faulty file is not loaded. If
the file contains parameters that require a system reset, the file is not loaded.
The file name is transferred in a string that must contain the complete path,
name and file extension. Further characters, even space characters, are not
permitted.
If the PLC program is created externally, ensure that lower-case letters are not
used for the file name!
Once the NC program has started, the module operates only during the output
of an M/S/T/Q strobe.
Call only in a submit job.
Call:
PS B/W/D/K <String number>
0 to 99
CM 9034
PL B/W/D <Error code>
0: No error
1: String does not contain a valid file name,
or the name (including the path) is too long
2: File not found
3: File is faulty / contains reset parameters
4: Incorrect string number was transferred (0 to 3)
5: Call was not in a submit job
6: Call not possible with a running program without
strobe or change not possible with a running NC program
7: Access rights insufficient, or access already reserved
8: Internal system error
Error code:

Marker Value Meaning


M4203 or 0 Parameter subfile was loaded
NN_GenApiModule 1 Error—see error code above
Error

638 HEIDENHAIN Technical Manual TNC 640


4.7.4 Displaying/editing data records in the configuration editor
Use the SELECT DATA RECORD soft key to choose between the following views:

The following overview shows which values of an object (object1, 2, 3) are


displayed in the individual views:

effective_1 effective_2 effective_3


object1( object2( object3(
key:= Key_A, key:= Key_B, key:= Key_C,
attribute11:= value1, attribute21:= value1, attribute31:= value1_T3,
attribute12:= value2, attribute22:= value2, attribute32:= value2,
attribute13:= value3_T1, attribute23:= value3, attribute33:= value3,
attribute14:= value4 attribute24:= value4 attribute34:= value4_T3
) ) )

temp_1 temp_3
object1( object3(
key:= Key_A, key:= Key_C,
attribute11:= value1, attribute31:= value1_T3,
attribute12:= value2, attribute32:= value2,
attribute13:= value3_T1, attribute33:= value3,
attribute14:= value4 attribute34:= value4_T3
) )

subfile_1 subfile_3
object3(
object1( key:= Key_C,
key:= Key_A, attribute31:= value1_T3,
attribute13:= value3_T1 attribute34:= value4_T3
) )

basic data_1 basic data_2 basic data_3


object1( object2( object3(
key:= Key_A, key:= Key_B, key:= Key_C,
attribute11:= value1, attribute21:= value1, attribute31:= value1,
attribute12:= value2, attribute22:= value2, attribute32:= value2,
attribute13:= value3, attribute23:= value3, attribute33:= value3,
attribute14:= value4 attribute24:= value4 attribute34:= value4
) ) )

January 2015 4.7 MP subfiles 639


Basic data This view shows the data imported during system start-up. Any changes will
be rewritten to the respective basic files.

Loaded subfile(s) You must have loaded a subfile during system start-up (with "CfgPortionFiles")
or by soft key for the subfile to be shown. If you select a subfile, only the data
of the subfile are displayed in the configuration editor.
The attributes contained in the subfile can be edited and rewritten to the
subfile while saving.
The subfile must be reloaded for the edited data to become effective.

Temporary data The complete data objects of all loaded subfiles are shown. They can be
edited, but they are not rewritten to the file. If a subfile from the PLC is loaded,
the data is saved only as temporary data.

Effective data The "effective data" view does not permit data to be edited. The displayed data
refer to the current data loaded by the PLC or by selecting the data record of
basic data or subfiles, and therefore show the data effective in the system.
Exception: Configuration data written with FN17 are not shown in this view.

Unload subfile The UNLOAD soft key can be used to unload the selected subfile.
This automatically activates the basic data and the subfiles that are still loaded.
The result is also shown in "Temporary data" and "Effective data."

640 HEIDENHAIN Technical Manual TNC 640


4.8 Reading and writing machine parameters in NC programs
Machine parameters can be read and written in NC programs if for example
you want to read or modify certain values from the machine configuration in
an OEM cycle.
Use the NC command CFGREAD to read numeric values (Q parameters) or
strings (QS parameters) from the machine configuration.
Use the NC command CFGWRITE to write numeric values (Q parameters) or
strings (QS parameters).

4.8.1 Reading machine parameters in NC programs (CFGREAD)


According to the type of machine parameter, the result of the query must be
written in either a Q parameter or a QS parameter:
 Writing the value of the machine parameter to a Q parameter:
This is advisable for numeric machine parameters, e.g. OEM parameters in
the configuration object CfgOemInt, CfgOemPosition or CfgOemBool, or
for other parameters with numeric values or position values.
The value 0 or 1 is returned for machine parameters of the string type
(selection menus with plain-language designators) or Boolean type (logical
values TRUE or FALSE), and the list index of the active selection is returned
for parameters with selection menu.
 Writing the value of the machine parameter to a QS parameter (string):
This is advisable for machine parameters of the string type, e.g. from the
configuration object CfgOemString, or for paths or selection menus.
Before calling the CFGREAD function, you must use the command
DECLARE STRING to assign three string variables:
 KEY_QS:
String, key name of the machine parameter (if any)
 TAG_QS:
String, name of the configuration object (entity)
 ATR_QS:
String, name of the machine parameter (= attribute)

Structure of the CFGREAD statement:

Q [number]
QS[number] = CFGREAD( KEY_QS1 TAG_QS2 ATR_QS3 IDX0 )
| | | |
Key name ----------------+ | | |
Config object (entity) ---------+ | |
Machine parameter (attribute) ----------+ |
Index -----------------------------------------+

January 2015 4.8 Reading and writing machine parameters in NC programs 641
Programming a CFGREAD command:
 Use the config editor to determine:
- The key name (= key)
- The configuration object (Cfg...)
- The name of the parameter (= attribute)
- The index (if any)
Write down the values.
 Select the Programming mode of operation
 Create a new NC program or open an existing NC program
 Move the cursor to the location in the program where the CFGREAD
command is to be inserted
The key name, the configuration object and the name of the parameter must
be saved to QS parameters by using DECLARE STRING. To do this, proceed as
follows:
 Select the string functions:
Press the SPEC FCT key, press the PROGRAM FUNCTIONS soft key, and
then the STRING FUNCTIONS soft key
 Use the DECLARE STRING soft key to define three QS parameters one after
the other, and assign the following values to them:
- Key name (if any)
- Configuration object (entity)
- Name of the machine parameter (attribute)
Saving the value of a machine parameter to a QS parameter:
 For formula input, press the STRING FORMULA soft key
 Enter the QS parameter number for the result
 Press the CFGREAD soft key to select the CFGREAD function
 Enter the numbers of the QS parameters that you previously defined with
DECLARE STRING for key name (KEY_QS), configuration object (TAG_QS)
and machine parameter (ATR_QS), as well as the index (IDX) if it is present.
 If desired, specify further operators for the STRING FORMULA. Otherwise,
conclude your entry by pressing the END key.
Saving the value of a machine parameter to a Q parameter:
 Select the Q parameter functions: Press the Q key
 For formula input, press the FORMULA soft key
 Enter the parameter number for the result
 Shift the soft-key row and select the CFGREAD function
 Enter the numbers of the QS parameters that you previously defined with
DECLARE STRING for key name (KEY_QS), configuration object (TAG_QS)
and machine parameter (ATR_QS), as well as the index (IDX) if it is present.
 If desired, specify further operators for the STRING FORMULA. Otherwise,
conclude your entry by pressing the END key.
If a query with CFGREAD was not successful the TNC 640 outputs an error
message. This error message can be suppressed with
FN17: SYSWRITE ID13 NR3 = <Label>.

642 HEIDENHAIN Technical Manual TNC 640


Example NC blocks:
Example 1:

Settings in the configuration editor


Channels
ChannelSettings
CH_NC
CfgGeoCycle
pocketOverlap: 1.3

Transferring the value in the MP_pocketOverlap parameter (overlap factor


during pocket milling) to a Q parameter:
Key name (KEY) CH_NC
Configuration object (TAG): CfgGeoCycle
Machine parameter (ATR): pocketOverlap
DECLARE STRING QS100 = "CH_NC" ;key name
DECLARE STRING QS101 = "CfgGeoCycle" ;name of configuration object
DECLARE STRING QS102 = "pocketOverlap";attribute name (= parameter)

Q103 = CFGREAD( KEY_QS100 TAG_QS101 ATR_QS102 )

Example 2:

Settings in the configuration editor


System
CfgHandwheel
type: HR410

Transferring the configured handwheel to QS parameters:


Key name (KEY) No key name, global parameter
Configuration object (TAG): CfgHandwheel
Machine parameter (ATR): type
DECLARE STRING QS10 = "" ;no key name, global parameter
DECLARE STRING QS11 = "CfgHandwheel" ;name of the configuration object
DECLARE STRING QS12 = "type" ;attribute name (= parameter)

QS13 = CFGREAD( KEY_QS10 TAG_QS11 ATR_QS12 )

January 2015 4.8 Reading and writing machine parameters in NC programs 643
Example 3:

Settings in the configuration editor


System
PLC
CfgOemInt
NP_DG_S_rpm_min
value
[0]: 10
[1]: 15

The value of the OEM machine parameter NP_DG_S_N_min (permissible


minimum spindle speed) from CfgOemInt is to be transferred to Q150:
Keyname (KEY): NP_DG_S_n_min
Configuration object (TAG): CfgOemInt
Machine parameter (ATR): value
Index: 1
DECLARE STRING QS15 = "NP_DG_S_n_min" ;key name of OEM parameter
DECLARE STRING QS16 = "CfgOemInt" ;name of configuration object
DECLARE STRING QS17 = "value" ;attribute name (= parameter)

Q150 = CFGREAD( KEY_QS15 TAG_QS16 ATR_QS17 IDX1)

644 HEIDENHAIN Technical Manual TNC 640


4.8.2 Writing machine parameters in NC programs (CFGWRITE)
Structure of the CFGWRITE statement:

Q [number] = CFGWRITE( KEY_QS1 TAG_QS2 ATR_QS3 DAT+Q1 )


| | | |
Key name ----------------+ | | |
Config object (entity) ---------+ | |
Machine parameter (attribute) ----------+ |
Value to be written ------------------------------+

CFGWRITE enables numerical values or strings from QS references to be


written to the machine configuration. Numerical values are assumed to be
metric. The return value is always 0.
The access right for CFGWRITE is determined by the saving location of the NC
program:
 If the NC program is stored on the TNC: partition, only machine parameters
with LEVEL1 access rights can be modified.
 If the NC program is stored on the PLC: partition, machine parameters with
LEVEL1, LEVEL2 and LEVEL3 can be modified.
 With CFGWRITE, only values in machine parameters with the NOTHING
reaction can be written.
The key number 555343 must be entered to enable the soft key to be
displayed for programming CFGWRITE in the editor of the TNC 640.
In Test Run mode, CFGWRITE is skipped and no modification of the
configuration is implemented. CFGWRITE is implemented in the block scan.
If a write process via CFGWRITE was not successful the TNC 640 outputs an
error message. This error message can be suppressed with
FN17: SYSWRITE ID13 NR3 = <Label>.
Before calling CFGWRITE, you must use the command DECLARE STRING to
assign string variables:
 KEY_QS:
String, key name of the machine parameter (if any)
 TAG_QS:
String, name of the configuration object (entity)
 ATR_QS:
String, name of the machine parameter (= attribute)

January 2015 4.8 Reading and writing machine parameters in NC programs 645
Programming a CFGWRITE statement:
 Use the config editor to determine:
- The key name (= key)
- The configuration object (Cfg...)
- The name of the parameter (= attribute)
Write down the values.
 Select the Programming mode of operation
 Enter the code number 555343.
 Create a new NC program or open an existing NC program
 Move the cursor to the location in the program where the CFGWRITE
statement is to be inserted
The key name, the configuration object and the name of the parameter must
be saved to QS parameters by using DECLARE STRING. To do this, proceed as
follows:
 Select the string functions:
Press the SPEC FCT key, press the PROGRAM FUNCTIONS soft key, and
then the STRING FUNCTIONS soft key
 Use the DECLARE STRING soft key to define three QS parameters one after
the other, and assign the following values to them:
- Key name (if any)
- Configuration object (entity)
- Name of the machine parameter (attribute)
 Select the Q parameter functions: Press the Q key
 For formula input, press the FORMULA soft key
 Enter the parameter number for the result
 Shift the soft-key row and select the CFGWRITE function
 Enter the numbers of the QS parameters that you previously defined with
DECLARE STRING for key name (KEY_QS), configuration object (TAG_QS)
and machine parameter (ATR_QS).
 Select and enter the type of value to be written via soft key:
Press the ENTER NUMBER soft key and enter the numerical value (DAT), or
press the QS soft key and specify a reference to a string parameter
(DAT_QS).
 If desired, specify further operators for the STRING FORMULA. Otherwise,
conclude your entry by pressing the END key.

646 HEIDENHAIN Technical Manual TNC 640


4.9 Reading or changing machine parameters via PLC modules
Modules 9430 to 9433, 9436 and 9438 can be used to read or overwrite
machine parameters via the PLC.
Use Module 9430 to overwrite the numerical value of a machine parameter
temporarily. Only in the run-time memory is the value of the parameter
overwritten. The value stored in the *.cfg file is retained. The original value
becomes effective again the next time the control is started.
Use Module 9431 to read the numerical value of a machine parameter from
the run-time memory.
Use Module 9432 to overwrite any string in the machine configuration
temporarily. Only the currently effective string parameter in the run-time
memory is overwritten. The string stored in the *.cfg file is retained. The
original value becomes effective again the next time the control is started.
Use Module 9433 to read any string from the run-time memory.
Use Module 9436 to save the numerical value of a machine parameter
permanently. The value written with Module 9436 is stored in both the run-
time memory and the *.cfg file. The change is retained in nonvolatile memory
when the control is switched off.
Use Module 9438 to save any string in the machine configuration
permanently. The string written with Module 9438 is stored in both the run-
time memory and the *.cfg file. The change is retained in nonvolatile memory
when the control is switched off.

Note

HEIDENHAIN recommends:
Use the Modules 9436 and 9438 very carefully and perform intensive tests
on the PLC program. Changes made using these modules might affect the
machine configuration to such an extent that the TNC 640 cannot be
started properly anymore.

January 2015 4.9 Reading or changing machine parameters via PLC modules 647
Supplementary explanations for calling Modules 9430 to 9433, 9436 and 9438:

Entries for PS/PL Description of the module entries

<Name of the Name of the folder in the machine configuration (=


configuration config object or entity), in which the machine
object> parameter to be changed is located;
e.g.: "CfgOemBool"

<Key name> Key name where the object is located; e.g.


"CH_NC".
Key names are used to structure the machine
configuration—they gather associated areas
together, such as a machining channel ("CH_NC") or
the parameter set of an axis ("PX").
Transfer an empty string for parameters without
key names.

<Name of the Name of the machine parameter (attribute) that is


machine to be changed;
parameter> e.g.: "swLimitSwitchPos"

<Index> Index within an array (list field);


Return 0 for parameters without an array

<Factor> Division factor for conversion to a floating-point


number
Enter 1 to receive integer parameters

<Value of the Value of the parameter, e.g.: 123456


machine
parameter>

<String> String number (0 to 15)

<Error> See "Return codes of PLC Modules 9430 to 9433,


9436, 9438 (error stack)" on page 655.

Module 9430 Temporarily change the numeric value of a machine


parameter
Use this module to enter a numeric value in the machine parameter given. The
value of the machine parameter is overwritten in the run-time memory. The
machine parameter in the *.cfg file is not overwritten. The overwritten
parameters are only in effect until the next time the control is started.
The NC software prescribes when a machine parameter can be changed. This
information is included in the description of each parameter in the Technical
Manual under "Reaction" or in the help display of the configuration editor under
"Behavior."

648 HEIDENHAIN Technical Manual TNC 640


Constraints:
 The module can only be called in a spawn or submit job.
 The module can only be called while the PLC has control over the machine.
Call:
PS B/W/D/K/S<Name of the configuration object>
e.g. "CfgPositionLimits"
PS B/W/D/K/S<Key name>
Key name of the config object, e.g. "PX"
Transfer empty string if config object has no key name
PS B/W/D/K/S<Name of the machine parameter>
e.g. "swLimitSwitchNeg"
PS B/W/D/K <Index>
Index of the parameter within an array (list field)
0: Parameter without array (list field)
PS B/W/D/K <Factor>
Division factor for conversion to a floating-point number
Enter 1 to receive integer parameter values
PS B/W/D/K <Value of the machine parameter>
CM 9430
PL B/W/D <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 655.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error; data was changed
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode (W1022)
NN_GenApiModule 1 Parameter out of value range
ErrorCode (W1022) 2 Parameter invalid or does not exist, or
other error
3 Invalid string number
6 Changing this value not allowed
13 Error while communicating with the config
server
20 Module was not started from a spawn or
submit job

January 2015 4.9 Reading or changing machine parameters via PLC modules 649
Module 9431 Read the numeric value of a machine parameter
Use this module to read the value of the given machine parameter from the
run-time memory.
Constraints:
 The module can only be called in a spawn or submit job.
Call:
PS B/W/D/K/S<Name of the configuration object>
e.g. "CfgPositionLimits"
PS B/W/D/K/S<Key name>
Key name of the config object, e.g. "PX"
Transfer empty string if config object has no key name
PS B/W/D/K/S<Name of the machine parameter>
e.g. "swLimitSwitchNeg"
PS B/W/D/K <Index>
Index of the parameter within an array (list field)
0: Parameter without array (list field)
PS B/W/D/K <Factor>
Division factor for conversion to a floating-point number
Enter 1 to receive integer parameters
CM 9431
PL B/W/D/K <Value of the machine parameter>
PL B/W/D <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 655.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error, data was read
Error (M4203) 1 Error code in NN_GenApiModuleErrorCode
(W1022)
NN_GenApiModule 1 Parameter out of value range
ErrorCode (W1022) 2 Parameter invalid or does not exist
13 Error while communicating with the config
server
20 Module was not started from a spawn or
submit job

650 HEIDENHAIN Technical Manual TNC 640


Module 9432 Change the string value of a machine parameter
Use this module to enter a string in the machine parameter given. The value
of the machine parameter is overwritten in the run-time memory. The machine
parameter in the .cfg file is not overwritten. The overwritten parameters are
only in effect until the next control start-up.
Constraints:
 The module can only be called in a spawn or submit job.
Call:
PS B/W/D/K/S<Name of the configuration object>
e.g. "CfgActivateKinem"
PS B/W/D/K/S<Key name>
Key name of the configuration object, e.g. "CH_NC"
Transfer empty string if config object has no key name
PS B/W/D/K/S<Name of the machine parameter>
e.g. "kinemToActivate"
PS B/W/D/K <Index>
Index of the parameter within an array (list field)
0: Parameter without array (list field)
PS B/W/D/K/S<New string>
CM 9432
PL B/W/D <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 655.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error; data was changed
Error (M4203) 1 Error code in NN_GenApiModuleErrorCode
(W1022)
NN_GenApiModule 1 Parameter out of value range
ErrorCode (W1022) 2 Parameter invalid or does not exist, or other
error
3 Invalid string number
13 Error while communicating with the config
server
20 Module was not started from a spawn or
submit job

January 2015 4.9 Reading or changing machine parameters via PLC modules 651
Module 9433 Read the string value of a machine parameter
Use this module to read the value of the given machine parameter from the
run-time memory.
Constraints:
 The module can only be called in a spawn or submit job.
Call:
PS B/W/D/K/S<Name of the configuration object>
e.g. "CfgActivateKinem"
PS B/W/D/K/S<Key name>
Key name of the configuration object, e.g. "CH_NC"
Transfer empty string if config object has no key name
PS B/W/D/K/S<Name of the machine parameter>
e.g. "kinemToActivate"
PS B/W/D/K <Index>
Index of the parameter within an array (list field)
0: Parameter without array (list field)
PS B/W/D/K <String number 0 to 15>
CM 9433
PL B/W/D <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 655.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error, data was read
Error (M4203) 1 Error code in NN_GenApiModuleErrorCode
(W1022)
NN_GenApiModule 1 Parameter out of value range
ErrorCode (W1022) 2 Parameter invalid or does not exist
13 Error while communicating with the config
server
20 Module was not started from a spawn or
submit job

652 HEIDENHAIN Technical Manual TNC 640


Module 9436 Change the numeric value of a machine parameter
persistently
Use Module 9436 to enter a numeric value in the indicated machine
parameter. The value of the machine parameter is overwritten in the run-time
memory, and the new value is stored (persistently) in the *.cfg file,
overwriting the previous value.
The new parameter value takes effect immediately, and is not lost when the
machine is switched off.
Constraints:
 The module can only be called in a spawn or submit job.
 The module can only be called while the PLC has control over the machine.
Call:
PS B/W/D/K <Name of the config object>
e.g. "CfgPositionLimits"
PS B/W/D/K <Key name>
Key name of the config object, e.g. "PX"
PS B/W/D/K <Name of the machine parameter>
e.g. "swLimitSwitchNeg"
PS B/W/D/K <Index>
Index of the parameter within an array (list field)
0: Parameter without array (list field)
PS B/W/D/K <Factor>
Division factor for conversion to a floating-point number
Enter 1 to receive integer parameters
PS B/W/D/K <New value of machine parameter>
CM 9436
PL B/W/D <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 655.
Error code:

Marker Value Meaning


NN_GenApiModule 0 Machine parameter was written
Error (M4203) 1 Machine parameter was not written, for
error see W1022 or
NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter out of value range
ErrorCode (W1022) 2 Parameter invalid or does not exist, or
other error
3 Invalid string number
6 Changing this value not allowed
13 Error while communicating with the config
server
20 Module was not started from a spawn or
submit job

January 2015 4.9 Reading or changing machine parameters via PLC modules 653
Module 9438 Change the string value of a machine parameter
persistently
Use Module 9438 to enter a string in the indicated machine parameter. The
value of the machine parameter is overwritten in the run-time memory, and
the new value is stored (persistently) in the *.cfg file, overwriting the previous
value.
The new parameter value takes effect immediately, and is not lost when the
machine is switched off.
Constraints:
 The module can only be called in a spawn or submit job.
Call:
PS B/W/D/K/S<Name of the configuration object>
e.g. "CfgActivateKinem"
PS B/W/D/K/S<Key name>
Key name of the configuration object, e.g. "CH_NC"
Transfer empty string if config object has no key name
PS B/W/D/K/S<Name of the machine parameter>
e.g. "kinemToActivate"
PS B/W/D/K <Index>
Index of the parameter within an array (list field)
0: Parameter without array (list field)
PS B/W/D/K/S<New value of machine parameter>
CM 9438
PL B/W/D <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 655.
Error code:

Marker Value Meaning


NN_GenApiModule 0 Machine parameter was written
Error (M4203) 1 Machine parameter was not written, for
error see W1022 or
NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter out of value range
ErrorCode (W1022) 2 Parameter invalid or does not exist, or
other error
3 Invalid string number
6 Changing this value not allowed
13 Error while communicating with the config
server
20 Module was not started from a spawn or
submit job

654 HEIDENHAIN Technical Manual TNC 640


Return codes of PLC The error codes returned by Modules 9430 to 9433, 9436 and 9438 have the
Modules 9430 to following meanings:
9433, 9436, 9438
(error stack) Value Meaning
(error stack)
0 Module executed successfully—machine parameter was
read from or written to
1  No access for the OEM to the machine parameter
 Access to the machine parameter is disabled by another
process
 Access to the machine parameter is disabled during
program run
 Access to the machine parameter is not possible via a
synonym
6 Module was not called in a submit/spawn job
7  Invalid string number transferred for configuration object,
key name or machine parameter
 Division factor is 0 or negative
8  No configuration object with the given name exists
 No machine parameter with the given name exists in the
given configuration object
9  The transferred machine parameter does not exist under
the given key name
 The machine parameter does not have the given index
 The given machine parameter is not an array or the index
is not 0
11 The machine parameter is not a numeric value
12 New value is invalid (outside of the value range)
13 Faulty contents of configuration object
14  Error while communicating with the config server
 Internal error of the config server
16 Internal error of the PLC run-time system

January 2015 4.9 Reading or changing machine parameters via PLC modules 655
4.10 Switching parameter sets
You can store multiple parameter sets for an axis or spindle in the
configuration editor.
Switching of parameter sets can be necessary, for example,
 if other parameters are necessary for a motor for different load or shaft
speed ranges.
 if control is to be dependent on the load during C-axis operation.
 if a wye/delta connection switchover is carried out for the spindle motor.
If there is more than one parameter set for one axis, use Module 9434 to
select the desired parameter set and Module 9435 to check the currently
active parameter set.

Danger

Ensure that switching the machine parameters does not result in the
machine entering an uncontrolled state.
HEIDENHAIN recommends:
When switching the parameters, the affected drive should be switched off,
or at least brought to a standstill! Controller and filter parameters should
only be switched while a drive is at a standstill, and not during machining,
since the switchover could affect the workpiece surface.
Incorrect or non-optimized parameter input values can lead to faulty
machine performance.
HEIDENHAIN does not accept any responsibility for direct or indirect
damage or injury caused to property or persons through improper use or
incorrect parameterization of the machine.

656 HEIDENHAIN Technical Manual TNC 640


Conditions Conditions of the axis:
In principle, you are free to change any machine parameters of an axis
parameter set. However, when some parameters are changed, the
configuration editor triggers a reboot (RESET) of the control. These
parameters therefore cannot be switched.
If when activating or deactivating axes over the PLC you also switch
parameter sets (e.g. when exchanging milling heads), you have to observe
particular conditions, see "Writing axis information—activating and
deactivating axes" on page 1101. The control checks for individual changed
parameters immediately after the change to another activation condition.
However, only those parameters are checked that are relevant for the
respective activation condition. An axis in the activation condition "manually
operated axis," for example, does not require controller parameters, and an
axis in the "deactivated axis" activation condition does not need any
parameters at all.
If the activation condition is switched over Module 9226 or 9418, the control
then checks
 whether all required machine parameters are available, and
 whether the machine parameters have changed since the last use of this
activation condition.
In this way, for example in a milling head exchange, an axis can be switched
to the "deactivated axis" activation condition, the parameter set can be
switched over (to other encoder configurations) and then the axis can be
reactivated.
With some parameters you have to comply with the following conditions with
regard to the switchover:
 DRIVE OFF:
The motor of the affected axis must be switched off. If this is not the case,
the control releases an error message with the reaction EMERGENCY
STOP. This causes the drives to be switched off. The control conducts a
parameter-set switchover.
 AXIS DEACTIVATED:
The axis must be deactivated (e.g. over Module 9226).
If this is not the case, the control issues the error message For a parameter
change the drive has to be deactivated (EMERGENCY STOP reaction).
This switches the drives off. The control does not conduct a parameter-set
switchover. If a parameter requiring the AXIS DEACTIVATED condition is
changed in the configuration editor, the change will not become effective
until the next startup of the control.
 REF:
The axis concerned must be homed again after the parameter set
switchover.
The following table shows the parameters for which you must fulfill these
conditions
Synchronization with NC-program calculation
Before the parameter set can be switched, some machine parameters require
a synchronization with the look-ahead capability of the NC program. Perform
this synchronization with a strobe in which the value SYNC_CALC is
configured for MP_sync. The strobe with SYNC_CALC interrupts the
interpretation of the NC program, and the path is calculated internally.

January 2015 4.10 Switching parameter sets 657


The following table presents an overview of the conditions for switching
parameter sets and indicates all drive parameters which require either a strobe
with SYNC_CALC or that the drive be switched off before the switchover.

Attention

The directives of this table must be followed in order to avoid uncontrolled


behavior of the machine!

Machine parameters RESET Strobe with DRIVE AXIS REF


SYNC_CALC OFF DISABLED
CfgAxes
refAxis X – – – –
refAllAxes X – – – –
CfgHardware
hardwareType X – – – –
I32stopsMonitoring – – – – –
driveOffGroupInput – – – – –
setupADP – – – – –
CfgCycleTimes
ipoCycle X – – – –
plcCount X – – – –
watchdogTime – – – – –
CfgFilter
typeFilter1 – – – – –
orderFilter1 – – – – –
typeFilter2 – – – – –
orderFilter2 – – – – –
CfgPosCorrection
enable – – – – –
feed – – – – –
CfgHandwheel
All parameters – – – – –
CfgDisplayData
All parameters – – – – –
CfgPlcFastInput
All parameters – – – – –
CfgChannelAxes
progAxis X – – – –
restoreAxis X – – – –
deactFastClamping – – – – –
CfgLaPath
minPathFeed – – – – –
minCornerFeed – – – – –
maxG1Feed – – – – –
maxPathJerk – – – – –

658 HEIDENHAIN Technical Manual TNC 640


Machine parameters RESET Strobe with DRIVE AXIS REF
SYNC_CALC OFF DISABLED
maxPathJerkHi – – – – –
pathMeasJerk – – – – –
pathTolerance – – – – –
pathToleranceHi – – – – –
maxPathYank – – – – –
maxPathYankHi – – – – –
reduceCornerFeed – – – – –
curveTolFactor – – – – –
curveJerkFactor – – – – –
angleTolerance – – – – –
angleToleranceHi – – – – –
filterFeedTime – – – – –
maxTransAcc – – – – –
maxTransAccHi – – – – –
CfgTCPM
toolRefPoint – – – – –
CfgAxis
isAng X – – – –
isModulo X – – – –
restoreModuloCntr – – – – –
isHirth – – – – –
axisHw X – X – –
axisMode X – – – –
testMode X – – – –
parList X – – – –
realAxis X – – – –
noActToNomAtEmSt – – – – –
deactivatedAtStart – – – – –
advancedSettings – – – – –
CfgAxisHardware
signCorrActualVal – X X – X
signCorrNominalVal – X X – X
posEncoderType – X – X X
distPerMotorTurn – – – – –
distPerMotorTurnF – – – – –
posEncoderDist – – – – X
posEncoderIncr – – – – X
genExtIntPolFactor – – – – X
posEncoderInput – X X – X
posEncoderSignal – – – – –
posEncoderFreq – – – – –
posEncoderResistor – – – – –

January 2015 4.10 Switching parameter sets 659


Machine parameters RESET Strobe with DRIVE AXIS REF
SYNC_CALC OFF DISABLED
speedEncoderInput – X – X X
inverterInterface – X – X X
ctrlPerformance – X X – –
hsciCcIndex – X – X X
driveOffGroup – – – – –
CfgAxisAnalog
analogOutput – – X – –
analogOffset – – – – –
kvFactor2 – – – – –
kvSpeedLimit – – – – –
maxFeedAt9V – – – – –
accForwardFactor – – – – –
compStrength – – – – –
compWidth – – – – –
compTimeOffset – – – – –
compFFAdjust – – – – –
compRefAcc – – – – –
compLimitFactor – – – – –
noOffsetAdjust – – – – –
unipolar – – – – –
CfgFeedLimits
minFeed – X – – –
maxFeed – X – – –
rapidFeed – X – – –
manualFeed – X – – –
maxAcceleration – X – – –
maxAccSpeedCtrl – X – – –
maxDecSpeedCtrl – X – – –
M19MaxSpeed – X – – –
M19NcSpeed – X – – –
nominalSpeed – X – – –
restoreFeed – X – – –
CfgReferencing
refType – X – – X
onTheFly – X – – –
refPosition – X – – X
endatDiff – X – – –
refFeedLow – X – – –
refFeedHigh – X – – –
refDirection – X – – X
posEncoderRefDist – – – – X
moveAfterRef – X – – –

660 HEIDENHAIN Technical Manual TNC 640


Machine parameters RESET Strobe with DRIVE AXIS REF
SYNC_CALC OFF DISABLED
moveAfterRefType – X – – –
moveAfterRefPos – X – – –
moveAfterRefFeed – X – – –
refAuxFunctions
refSwitchLowActive – – – – X
endatSerial – X – X X
moveOnAfterSwitch – – – – X
doubleRef – – – – X
doubleRefOffset – – – – –
externRefPulse – – – – X

January 2015 4.10 Switching parameter sets 661


Machine parameters RESET Strobe with DRIVE AXIS REF
SYNC_CALC OFF DISABLED
CfgPositioniLimits
swLimitSwitchPos – X – – –
swLimitSwitchNeg – X – – –
lubricationDist – X – – –
CfgControllerAuxil
driveOffLagMonitor – – – – –
checkPosStandstill – – – – –
maxPosDiff – – – – –
maxSpeedDiff – – – – –
posDiffCountDir – – – – X
CfgEncoderMonitor
checkAbsolutPos – X X – –
checkSignalLevel – – – – –
checkFrequency – – – – –
checkEncoderState – – – – –
checkRefDistance – – – – –
movementThreshold – – – – –
thresholdDistance – – – – –
CfgSpindle
All parameters – – – – –
CfgPosControl
All parameters – – – – –
CfgSpeedControl
All parameters – – – – –
CfgCurrentControl
All parameters – – – – –
CfgControllerTol
All parameters – – – – –
CfgPowerStage
ampName – X – X X
ampPowerSupplyType – X – X X
ampBusVoltage – X – X –
ampPwmFreq – X – X –
ampVoltProtection – X – X –
ampReadyWaitTime – X – X –
ampAcFailSelection – X – X –
ampFactorI2t – X – – –
powStatusCheckOff – X – – –
ampAdditionalInfo – – – – –
limitOfDcVoltage – – – – –

662 HEIDENHAIN Technical Manual TNC 640


Machine parameters RESET Strobe with DRIVE AXIS REF
SYNC_CALC OFF DISABLED
PowerStage-Table
AmpPeakCurrent – X X X –
AmpNomCurrent – X X X –
AmpCurrentSensorVoltage – X X X –
CfgServoMotor
motName – X X – X
starDelta – X X – –
motEncCheckOff – X – – –
motFactorI2t – X – – –
motSlipTimeConstant – X X – –
motEmergencyStopRamp – X – – –
motPbrMax – X – – –
motPMax – X – – –
motPMax2 – X – – –
motPbrMaxAcFail – X – – –
motMMax – X – – –
motSupply – X X – –
motEncType – X – X X
motDir – X – X X
motStr – X – X X
motTypeOfFieldAdjust – – – – –
motFieldAdjustMove – – – – –
motPhiRef – – – – –
motEncSerialNumber – – – – –
motAdditionalInfo – – – – –
motSpeedSwitchOver – – – – –
motSpeedSwitchBack – – – – –
motSeriesInduct – – – – –
motInertia – – – – –
maxSpeedBrakeOpen – – – – –
spindleAxisMode – – – – –
CfgBrake
connection – – – – –
testBrakeTolerance – – – – –
testBrakeCurrent – – – – –
timeToBrakeTest – – – – –
CfgControllerComp
All parameters – – – – –

January 2015 4.10 Switching parameter sets 663


Machine parameters RESET Strobe with DRIVE AXIS REF
SYNC_CALC OFF DISABLED
CfgPositionFilter
filter1Shape – X – – –
filter1LimitFreq – X – – –
filter2Shape – X – – –
filter2LimitFreq – X – – –
manualFilterOrder – – – – –
CfgAxisComp
All parameters – – – – –
CfgAxisCoupling
All parameters – – – – –
CfgLaAxis
All parameters – – – – –
CfgAxisHandwheel
All parameters – – – – –
CfgCCAuxil
All parameters – – – – –

Sequence A parameter set is selected for an axis with a strobe via the PLC program using
Module 9434. Here you must indicate the logical axis number (index from
CfgAxis\axisList) and the name of the parameter set (index from
Axes\ParameterSets). The strobe can then be acknowledged, and machining
continues with the new parameter set.
Module 9434 responds immediately after execution and reports in the result
whether the parameter set could be selected (result=0). It may take some
time to switch to the selected parameter set. Use Module 9435 to check
which parameter set is active.
Important:

Note

Module 9434 does not switch off the drive controller. You can switch the
drive controller off via your PLC program using PP_AxDriveOnRequest and
PP_AxPosControlRequest and reactivate it after the parameter set has
been switched.

If the axis is assigned to a machining channel, the execution of an NC program


must be synchronized with the module call.

664 HEIDENHAIN Technical Manual TNC 640


PLC modules Module 9434 Select parameter set
The module activates the parameter set programmed for the drive motor.
Constraints:
 The PLC program can activate another parameter set even while a PLC
positioning movement is being executed.
 A PLC positioning movement can also be started while a new parameter set
is being selected via Module 9434. In this case, the PLC program must
ensure the safety of the machine. The PLC program must ensure that other
parameter blocks containing machine parameters that are not suitable for
this drive are not selected. Unsuitable parameter sets can cause incorrect
positioning!
Call:
PS B/W/D/K <Axis number>
Index from CfgAxes/axisList
If you are using the iTNC-compatible programming interface
(API 1.0), you must enter 15 for the spindle.
PS B/W/D/K <Parameter set index>
0: Parameter set index 0
1: Parameter set index 1
Etc.
CM 9434
PL B/W/D <Result>
0: New parameter set selected.
1: Addressed control loop does not exist.
2: Addressed parameter set does not exist.
3: Module was not executed because the axis is active in an
NC program.
4: Module was not executed because another command is
being performed for this control loop.
5: The module was not executed because the axis is
deactivated.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error (see above)

January 2015 4.10 Switching parameter sets 665


Module 9435 Status of the parameter set of an axis
The module returns the active parameter set and (if it exists) the selected
parameter set of the control loop.
Call:
PS B/W/D/K <Axis number>
Index from CfgAxes/axisList
If you are using the iTNC-compatible programming interface
(API 1.0), you must enter 15 for the spindle.
CM 9435
PL B/W/D <Index of active parameter set>
PL B/W/D <Index of selected parameter set>
–1: No selected parameter set present
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error, addressed control loop not present
(indicated axis does not exist)

666 HEIDENHAIN Technical Manual TNC 640


4.11 List of machine parameters

4.11.1 "System" group


Globally effective machine parameters, valid for the entire system.

Parameter Function and input Behavior Page


MP number Access
iTNC MP number SW vers.
CfgAxes
Definition of existing axes of all channels in the system;
Create entries for all axes of the machine. Also for spindles and PLC axes.
axisList Key names for all axes on the machine RESET 1000
100001 Enter the axes of all channels of the machine, LEVEL3
including spindles and PLC axes.
597110-01
Format: List [0 to 23]
Input: Selection menu with the axis key
names
from Axes/PhysicalAxes
Examples: X, Y, Z, etc. or X axis, Y axis
etc.
spindleIndices Key names of all spindles on the machine RESET 1566
100002 The key names of the spindle(s) defined here LEVEL3
must be listed in MP_axisList. The list index of a
597110-02
spindle key defines the programmable spindle
number used by the PLC to identify the spindle.
Format: List [0 to 5]
Input: Selection menu with the spindle
key names from Axes/
PhysicalAxes
Examples: Index 0 for spindle1,
index 1 for spindle2, etc.
refAxis Axes that are to be run over the reference Shut down 1008
point control
100004
(RESET)
Defines the axes that are to be referenced and the
reference order. LEVEL3
Format: List [0 to 23]
Input: Selection of key names from
CfgAxes/axisList

January 2015 4.11 List of machine parameters 667


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
refAllAxes Homing all axes in succession after an NC Shut down 1008
START control
100005
(RESET)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
 TRUE
Traverse the reference mark of all axes in
succession after an NC START.
 FALSE
A reference run is not performed for all axes
Default: No value
specCoordSysList Key names of special axes for the kinematics RESET 1002
description
100003 LEVEL3
If in MP_specKinCoordSys (CfgAxisPropKin) the
(optional parameter) 597110-01
value FixedTransAxis, DefPointTrans or
DefPointRot is defined for an axis, you must enter
the respective axis here.
Format: List [0 to 23]
Input: Selection menu with the axis key
names
from Axes/PhysicalAxes
Examples: C1, Y1, etc.
CfgHardware
Specification of the controller hardware;
definition of type of drive controller.
hardwareType Type of drive controller hardware Shut down 1014
control
100101 Format: Selection menu
(RESET)
Input:
LEVEL3
 automatic
Automatic identification of controller unit 597110-01
 CC422
CC 422 controller unit for conventional axes
 CC424
CC 424 controller unit for direct drives with high
control loop requirements (very short cycle
times)
 CC61xx
CC 61xx controller unit with HSCI interface.
Define also if the UEC 11x or UMC 11x is used.
 NoCC
No controller unit

668 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
hardwareType Type of drive controller hardware Shut down 1014
control
100101 Format: Selection menu
(RESET)
Input:
LEVEL3
 NoCC
No controller unit 597110-01

i32stopsMonitoring Behavior of input I32 (drive enabling) Program 1503


run is
100102 Format: Selection menu
locked
Input: (RUN)
 on LEVEL3
With I32 = 0 all monitoring functions that can be
influenced by the PLC are switched off. 597110-01
 off
Input I32 has no effect on the monitoring
functions.
Default: off
driveOffGroupInput PLC inputs belonging to the switch-off groups Program 351
(replacement for X150) run is
100106
locked
Only for systems with HSCI interface:
(optional parameter) (RUN)
Here you can configure any PL input for each
switch-off group. In the axis-dependent LEVEL3
MP_driveOffGroup (CfgAxisHardware)
597110-03
parameter, you can configure which axis are
switched off when the 24 V at this input is
disconnected.
Format: List (8 switch-off groups)
Input: Number of PLC input
Default: No value
setupADP Specify the performance level for ADP Program 1326
run is
100108 The parameter specifies the level of computing
locked
power for ADP and therefore the feed rate quality.
(optional parameter) (RUN)
Format: Selection menu
LEVEL3
Input:
597110-06
 Off
Previous motion control active
 Standard
Low computing power, standard feed rate
quality
 Advanced
Medium computing power, high feed rate
quality
 Premium
High computing power, very high feed rate
quality
Default: Off

January 2015 4.11 List of machine parameters 669


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
plugAndPlay Evaluation of the electronic ID labels Program 1669
run is
100109 With each new start, the TNC 640 checks
locked
whether connected devices (HEIDENHAIN
MP7690 (RUN)
inverter components and inverter motors) have
(optional parameter) been modified and detects these automatically. LEVEL3
Evaluation of the electronic ID labels can be
597110-09
globally activated/deactivated with this
parameter.
If it is necessary to select another configuration
with individual devices than specified globally
here for the identification, the function can be
deactivated via further machine parameters:
CfgSupplyModule/plugAndPlay
CfgPowerStage/plugAndPlay
CfgServoMotor/plugAndPlay
 Active
Evaluation of the electronic ID labels is active.
 Inactive
Evaluation of the electronic ID labels is
deactivated.
Default: Active

670 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgMachineSimul
Switch the TNC 640 to the programming station mode;
No drives are enabled. You can create and test NC programs, but you cannot run them. Machine
functions are simulated.
simMode Specify the type of programming station RESET 1891
mode
100201 LEVEL3
Format: Selection menu
MP7210
Input:
 FullOperation
Programming station mode is switched off.
The wiring of the machine must be complete.
The motors are moving.
 CcOnly
The programming station is active.
Simulation of the CC controller unit. All PLC
inputs and outputs, as well as the emergency-
stop circuit, must be connected correctly in
order to switch the control on correctly.
 CcAndExt
The programming station is active.
Simulation of the CC controller unit and all PLC
inputs and outputs.
 Delivery
Mode for commissioning.
During power-up, all axes are automatically put
into the test mode. The drives cannot be
switched on. In this way, the control can be
started even with an incomplete or faulty axis
configuration.
skipReferencing Fast reference run RESET 1891
100202 In programming station mode, the reference run LEVEL3
in the axes can be skipped.
(optional parameter)
Format: Selection menu
Input:
 TRUE
The axes are set automatically on the reference
positions when the control is started.
 FALSE
Reference run is also active in the programming
station mode.

January 2015 4.11 List of machine parameters 671


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
skipEmStopTest Do not perform the emergency stop test RESET 1892
100203 Format: Selection menu LEVEL3
(optional parameter) Input:
 TRUE
If the programming station mode is active, the
emergency stop test is not performed.
 FALSE
The emergency stop test is performed even if
the programming station mode is active.
simHardwareType Type of drive controller hardware to be RESET 1892
simulated in Programming Station mode
100204 LEVEL3
Format: Selection menu
(optional parameter)
Input:
 automatic
Automatic identification of controller unit
 CC422
CC 422 controller unit for conventional axes
 CC424
CC 424 controller unit for direct drives with high
control loop requirements (very short cycle
times)
 CC61xx
CC 61xx controller unit with HSCI interface.
Also define if the UEC 11x is used.
 NoCC
No controller unit
simHardwareType Type of drive controller hardware to be RESET 1892
simulated in Programming Station mode
100204 LEVEL3
Format: Selection menu
(optional parameter)
Input:
 NoCC
No controller unit
CfgCycleTimes
Specification of cycle times for IPO, PLC and look-ahead
ipoCycle Position controller cycle time (interpolation RESET 1327
clock)
100301 LEVEL3
At present, only a cycle time of 3 [ms] for the
MP7600.0
position controller is supported. The value of 3 ms
is therefore preset by the system.
Format: Selection menu
Input: 3 ms
Default: 3 ms

672 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
plcCount PLC cycle time (look-ahead cycle time) RESET 2299
100302 The PLC and the Look Ahead run at a clock rate LEVEL3
that is a multiple of the IPO clock (interpolation
MP7600.1, MP7602
clock). The Look Ahead function is triggered
exactly two IPO clock pulses after the PLC.
Format: Numerical value
Input: 3 to 10 [· MP_ipoCycle]
Default: 7 (= 21 ms)
watchdogTime Delayed switch-off of SH1 Program 1552
run is
100303 Define the recovery time for watchdog 2 here.
locked
MP2172 Format: Numerical value (RUN)
Input: 1 to 30 [s] LEVEL3
Default: 3 [s] 597110-03
CfgSupplyModule (optional parameter)
Configuration of the UV power supply modules;
List with key names of all power supply modules in the system. MP_motSupply (401321) is used for
axis-specific assignment of the axes to the key names of the power supply modules defined here.
[Key name of the supply module]
You can choose any key name, such as UV1, UV2, SUPPLY1, etc.
name Type of power supply module Shut down 1691
control
117201 Enter the model of the power supply unit. If the
(RESET)
parameter is set to the editing mode, the TNC 640
MP2198
opens the "supply.spy" power-supply module LEVEL3
table. Select the power supply module from the
597110-05
table. The TNC 640 will enter the name
automatically upon selection.
plugAndPlay Evaluation of the electronic ID labels Program 1669
run is
117201 With each new start, the TNC 640 checks
locked
whether the connected supply module has been
MP7690, bit2 (RUN)
modified and detects this automatically (global
(optional parameter) configuration via CfgHardware/plugAndPlay). The LEVEL3
evaluation of the electronic ID labels can be
597110-08
deactivated with this parameter for individual
supply modules.
 Inactive
Evaluation of the electronic ID label for this
supply module is deactivated.
 Global setting
Setting from CfgHardware/plugAndPlay is
active.
Default: Active

January 2015 4.11 List of machine parameters 673


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgFilter
Default configuration of position command filters, applies to all axes.
Can be overwritten axis-specifically.
 defaultPosition:
Default configuration of the position command filter for all linear axes
 defaultCutterLoc:
Default configuration of the position command filter for all rotary axes with M128.
shape Shape of the nominal position value filter Allowed in 1304
strobe
100405, 100406 Format: Selection menu
(SYNC)
MP1200 Input:
LEVEL3
 Off
Filter is off 597110-05
 Average
Mean-value filter
 Triangle
Single filter
 HSC
HSC filter (High Speed Cutting)
(setting for "accuracy" criterion)
 Advanced HSC:
Advanced HSC filter (High Speed Cutting)
(setting for "surface" criterion)
Default: Off
frequency Limit frequency of the nominal position value Allowed in 1305
filter strobe
100405, 100406
(SYNC)
Format: Numerical value
MP1210, MP1211,
LEVEL3
MP1212, MP1213 Input: 0 to 1000 [Hz]
With max. 9 decimal places 597110-05
Default: 20
hscMode Operating mode of the nominal position value Allowed in 1305
filter strobe
100405, 100406
(SYNC)
Format: Selection menu
LEVEL3
Input:
597110-05
 Smoothing
Mode for finishing operations
 Roughing
Mode for roughing operations
The machine operator can also select this mode
for Cycle 32.
Default: Smoothing

674 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
maxHscOrder Max. filter order for HSC and Allowed in 1305
AdvancedHSC filters strobe
100405, 100406
(SYNC)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 25 to 63
MP1262, MP1263
597110-06
Default: 63
defaultManualOrder Order of the mean-value filter for the Manual Allowed in 1305
Operation mode strobe
100407
(SYNC)
Format: Numerical value
LEVEL3
Input: 1 to 51
597110-05
Default: 11
disableForMeasure Deactivation of the filter during measurement Allowed in 1306
with TS or TT strobe 2297
100408
(SYNC)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-06
 TRUE
The nominal position value and the filter in the
speed and position controller of the CC
controller unit are deactivated during
measurement with TS and TT.
 FALSE
The filter settings stay effective even during
measurement with the TS and TT.
Default: FALSE
CfgPosCorrection
Parameters for asynchronous position compensation
enable Asynchronous position compensation on/off RUN –
100501 Input: LEVEL3
(optional parameter)  on
Asynchronous position compensation is
switched on
 off
Asynchronous position compensation is
switched off
feed Velocity for asynchronous position RUN –
compensation
100502 LEVEL3
Velocity intended for compensations.
(optional parameter)
Input: 0 to 99 960 [mm/min]
Default: 960 [mm/min]

January 2015 4.11 List of machine parameters 675


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgHandwheel
Parameters for configuring the electronic handwheel;
Configuration of serial handwheel connected to X23.
type Type of handwheel Program 2134
run is
100601 Enter the model of the connected handwheel.
locked
MP7640 Format: Selection menu (RUN)
Input: LEVEL3
 NONE 597110-01
No serial handwheel connected
 HRA110
Up to three HR 150 handwheels via HRA 110
handwheel adapter
 HR130
HR 130 panel-mounted handwheel
 HR330
HR 330 portable handwheel
 HR332
HR 332 portable handwheel
 HR410
HR 410 portable handwheel
 HR420
HR 420 portable handwheel
 HR520
HR 520 portable handwheel
 HR550
HR 550 portable handwheel
Default:None
initValues Initialization values for handwheel Program 2134
run is
100602 Format: List [0 to 7]
locked
MP7645 Input: 0 to 255 (RUN)
Default: 0 LEVEL3
597110-01
incrPerRevol Increments per handwheel revolution Program 2135
run is
100603 Format: Numerical value
locked
(optional parameter) Input: 0 to 100 000 [incr] (RUN)
Default: 0, this corresponds to 20 000 [incr] LEVEL3
597110-01
rasterPerRevol Detent steps per handwheel revolution Program 2135
run is
100604 Format: Numerical value
locked
(optional parameter) Input: 0 to 100 000 (RUN)
Default: 0 LEVEL3
597110-01

676 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
countDir Counting direction for handwheel Program 2135
run is
100605 Format: Selection menu
locked
MP7650 Input: (RUN)
 positive LEVEL3
Positive counting direction
597110-01
 negative
Negative counting direction
Default: positive
sensitivity Sensitivity for electronic handwheel Program 2136
run is
100606 Shock or vibrations can cause a slight motion at
locked
the handwheel. You can define a threshold
MP7660 (RUN)
sensitivity for the handwheel to prevent
unintentional axis movements. LEVEL3
Format: Numerical value 597110-01
Input: 0 to 10 000 [pulses]
Default: 0
speedFactor Handwheel transmission ratio Program 2136
run is
100607 Three transmission ratios [%].
locked
Distance per handwheel revolution:
MP7670.0 (RUN)
Transmission ratio defined in
MP7670.1
MP_CfgAxisHandwheel : MP_distPerRevol. LEVEL3
MP7670.2
Format: List [0 to 2] 597110-02
Input:
[0] = First ratio [%]
[1] = Second ratio [%]
[2] = Third ratio [%]
Default: 1, 10 and 100 [%]
feedFactor Manual feed rates in the Electronic Handwheel Program 2136
mode run is
100608
locked
Percentage factor for the 3 feed rates. The
(RUN)
effective handwheel feed rate is equal to the feed-
rate percentage factor multiplied by the maximum LEVEL3
handwheel feed rate of the selected axis.
597110-01
Format: List [0 to 2]
Input:
[0] = First ratio [%]
[1] = Second ratio [%]
[2] = Third ratio [%]
Default: 1, 10 and 100 [%]

January 2015 4.11 List of machine parameters 677


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
selectAxes Selection of axes for the handwheel Program 2138
run is
100610 Select the axes to be moved with the handwheel.
locked
(optional parameter) Extra information: (RUN)
 On portable handwheels with axis keys, LEVEL3
e.g. HR 410:
Make a list entry for each axis key on the 597110-05
handwheel. The sequence of the list sets the
assignment to the axis keys X, Y, Z, IV, V,
VT_Axis on the handwheel.
 With HR 150 panel-mounted handwheels
through HRA 110:
Handwheel on X1 of HRA 110: 1st list entry
Handwheel on X2 of HRA 110: 2nd list entry
Handwheel on X3 of HRA 110: The initialization
parameters and the position of the selection
switch set which list entry is to be used.
 With HR 130 panel-mounted handwheel:
Do not define parameter. The axes are assigned
via the PLC program (e.g. Module 9036).
Format: List [0 to 23]
Input: Select the axes using the selection
menu
plcInputs Evaluation of the handwheel keys Program 2155
run is 2152
100611 The parameter specifies when the axis keys on
locked
the handwheel are set on PLC inputs.
MP7641, bit 5 (RUN)
Format: Selection menu
(optional parameter) LEVEL3
Input for handwheels with display:
597110-06
 IfActive or not defined
The axis keys are set on PLC inputs only if the
handwheel has been switched on through the
handwheel key.
 Always
The axis keys are set on PLC inputs even when
the handwheel is inactive.
Input for HR 410 handwheel in NC mode:
(as of NCK software 597110-08)
 IfActive or not defined
All keys except the axis keys are set on PLC
inputs.
 Always
All keys including axis keys are set on PLC
inputs.
Other handwheels:
The parameter has no function.
Default: No value (not defined)

678 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
plcPlusMinus Evaluate +/– keys through the PLC Program 2156
run is
100612 The parameter defines for handwheels with "+"
locked
and "–" keys whether these are evaluated by the
MP7641, bit 2 (RUN)
NC or PLC.
(optional parameter) LEVEL3
Note: With an HR 410 in PLC mode
the parameter has no function. 597110-06
Format: Selection menu
Input:
 FALSE:
The NC interprets pressing the "+" and "–" keys
as manual traverse jobs for the selected axis.
The keys function as if the markers
PP_AxTraversePos or PP_AxTraverseNeg were
set for the selected axis.
 TRUE
The "+" and "–" keys must be evaluated through
the PLC.
Default: FALSE
plcStartStop Evaluate NC start/stop keys by PLC Program 2156
run is
100613 Note: Only for handwheels with display.
locked
MP7641, bit 3 Format: Selection menu (RUN)
(optional parameter) Input: LEVEL3
 FALSE 597110-06
If the NC start key on the handwheel is pressed,
the NC then sets the NN_ChnNcStartExtern
marker. If the NC stop key on the handwheel is
pressed, the NC then sets the
NN_ChnNcStopExtern marker.
 TRUE
The NC start and NC stop keys of the
handwheel must be evaluated by the PLC.
Default: FALSE
plcTeachIn Evaluate the TEACH IN key Program 2157
run is
100614 Note: Only for handwheels with display.
locked
MP7641, bit 7 Format: Selection menu (RUN)
(optional parameter) Input: LEVEL3
 FALSE 597110-06
The NC evaluates the TEACH IN key on the
handwheel automatically.
 TRUE
The TEACH IN key on the handwheel must be
evaluated by the PLC.
Default: FALSE

January 2015 4.11 List of machine parameters 679


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
plcCtrlKey Evaluate the CTRL key through the PLC Program 2157
run is
100615 Note: Only for handwheels with display.
locked
MP7641, bit 8 Format: Selection menu (RUN)
(optional parameter) Input: LEVEL3
 FALSE 597110-06
The NC evaluates the CTRL key on the
handwheel automatically.
 TRUE
The CTRL key on the handwheel must be
evaluated by the PLC.
Default: FALSE
lockPlcSoftkeys Behavior of the vertical soft-key row if Program 2157
handwheel is active run is
100616
locked
Note: Only for handwheels with display.
MP7641, bit 9 (RUN)
Format: Selection menu
(optional parameter) LEVEL3
Input:
597110-06
 IfActive
Disable the vertical PLC soft-key row if the
handwheel is active.
 Never
Do not disable the vertical PLC soft-key row if
the handwheel is active.
Default: IfActive
allowCharger Permit additional charging station for HR550 Program 2157
run is
100618 Note: Only for HR 550.
locked
MP7641, Bit10 Format: Selection menu (RUN)
(optional parameter) Input: LEVEL3
 FALSE 597110-09
The use of an additional charging station is not
allowed.
 TRUE
The use of an additional charging station is not
allowed.
Default: FALSE
maxDelayRaster Limits follow-up of the axis Program 2144
run is
100617 Note: Only for handwheels with detent
locked
(optional parameter) Format: Numerical value (RUN)
Input: 1 to 100 [Inkr] LEVEL3
Default: 100 597110-09

680 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgAutoStart
AUTOSTART function
Settings for automatic program start
autoStartEnabled Activate AUTOSTART soft key PLC/Pgm 1909
run is
100701 Specifies whether the AUTOSTART soft key for
locked
defining an automatic program start is displayed in
MP7683, bit 5 (PLC/RUN)
the Program Run modes of operation at any time.
LEVEL1
Format: Selection menu
597110-01
Input:
 ON
AUTOSTART soft key is displayed
 OFF
AUTOSTART soft key is not displayed
Default: ON
closeDialogOnOK Close the Automatic Program Start dialog PLC/Pgm 1909
window with the OK soft key run is
100702
locked
Specifies the behavior of the dialog window for
(optional parameter) (PLC/RUN)
configuration of the automatic program start
(AUTOSTART soft key) if the OK soft key is LEVEL1
pressed.
Format: Selection menu
Input:
 TRUE
The dialog window is closed
 FALSE
The dialog window remains visible
Default: TRUE
useLastStartData Use the last input in the Automatic Program Start PLC/Pgm 1909
dialog window as default. run is
100703
locked
Specifies the default when opening the dialog
(optional parameter) (PLC/RUN)
window for configuration of the automatic
program start (AUTOSTART soft key). LEVEL1
Format: Selection menu
Input:
 TRUE
In the dialog window, the last input, the last file
entered, and the current date and time are
indicated.
 FALSE
No specifications for opening of dialog window.
The currently selected program is used for the
AUTOSTART function.
Default: TRUE

January 2015 4.11 List of machine parameters 681


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
hideSoftkey Hide the AUTOSTART soft key PLC/Pgm 1910
run is
100704 Specifies whether the AUTOSTART soft key is
locked
hidden or appears dimmed when it’s deactivated.
(optional parameter) (PLC/RUN)
Format: Selection menu
LEVEL1
Input:
597110-06
 TRUE
AUTOSTART soft key is hidden
 FALSE
AUTOSTART soft key is grayed out
Default: TRUE

682 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
DisplaySettings
Configuration of the user interface
CfgDisplayData
Settings for screen displays
axisDisplay Display sequence and rules for axes Change at 1034
any time
100810 Specifies the sequence and the rules for the
(NOTHING)
display of axes.
MP7291.0
Field [0] is the top-most position. LEVEL1
Input: 597110-08
Up to 24 lists with the MP_axisKey, MP_name
and MP_rule parameters. Specifies sequence and
rules for the display of an axis.
Format: Array [0 to 23]
axisDisplayRef Display sequence and rules for axes before the Change at 1035
reference run any time
100811
(NOTHING)
Specifies the sequence and the rules for the
(optional parameter)
display of axes before the reference run. LEVEL1
Field [0] is the top-most position.
597110-08
Input:
Up to 24 lists with the MP_axisKey, MP_name
and MP_rule parameters. Specifies sequence and
rules for the display of an axis.
Format: Array [0 to 23]
Input: Select the axes from CfgAxes/
axisList
using the selection menu

January 2015 4.11 List of machine parameters 683


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
positionWinDisplay Type of position display in the position Change at 1036
window any time
100803
(NOTHING)
Specifies the default setting for the position
display in the position window. The machine LEVEL1
operator can change this settings with the MOD
597110-01
key.
Format: Selection menu
Input:
 NOML.
Nominal position
 ACTL.
Actual position
 REF ACTL
Actual position referenced to the machine
datum
 RFNOML
Nominal position referenced to the machine
datum
 LAG
Following error (servo lag)
 ACTDST
Distance-to-go in the input system
 REFDST
Distance-to-go in the machine system
 M118
Traverses that were carried out with handwheel
superimpositioning (M118)

684 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
statusWinDisplay Type of position display in the status window Change at 1037
any time
100804 Specifies the default setting for the position
(NOTHING)
display in the status window. The machine
operator can change this settings with the MOD LEVEL1
key.
597110-01
Format: Selection menu
Input:
 NOML.
Nominal position
 ACTL.
Actual position
 REF ACTL
Actual position referenced to the machine
datum
 RFNOML
Nominal position referenced to the machine
datum
 LAG
Following error (servo lag)
 ACTDST
Distance-to-go in the input system
 REFDST
Distance-to-go in the machine system
 M118
Traverses that were carried out with handwheel
superimpositioning (M118)
decimalCharacter Definition of decimal separator for position Change at 1038
display any time
100805
(NOTHING)
Format: Selection menu
MP7280
LEVEL1
Input:
597110-01
 "."
At present only a period may be used as a
decimal separator.
Default: "."

January 2015 4.11 List of machine parameters 685


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
axisFeedDisplay Display of the feed rate in the Manual Change at 1038
Operation and El. Handwheel modes of any time
100806
operation (NOTHING)
MP7270
Format: Selection menu LEVEL1
(optional parameter)
Input: 597110-02
 at axis key
Display of axis feed rate by pressing an axis
direction key (axis-specific feed rate from
MP_manualFeed)
 always minimum
Display of axis feed rate also before an axis
direction key is pressed (smallest value from
MP_manualFeed for all axes)
Default: at axis key
spindleDisplay Display of spindle position in the position Change at 1039
display any time
100807
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL1
Input:
597110-04
 during closed loop
Display of spindle position only if the spindle is
servo controlled
 during closed loop and M5
Display of spindle position if the spindle is servo
controlled and M5 is pending
Default: during closed loop
hidePresetTable Display or hide the PRESET TABLE soft key. Change at 1978
any time
100808 Format: Selection menu
(NOTHING)
(optional parameter) Input:
LEVEL1
 TRUE
The PRESET TABLE soft key is hidden. 597110-04
 FALSE
The PRESET TABLE soft key is displayed.
Default: FALSE

686 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgStatusAndQPar
Settings for status values, Q parameters and tool data;
Specifies the behavior at program end and when the operating mode is changed.
clearMode Reset status values, Q parameters and tool Program 1862
data (DL, DR, DR2 from PGM) run is
100901
locked
Format: Selection menu
MP7300 (RUN)
Input: 4 to 7
LEVEL3
 0...3
Reserved, do not use
4
Erase the status display and Q parameters
when an NC program is selected.
5
Erase the status display and Q parameter when
an NC program is selected and/or in the event of
M02, M30, END PGM.
6
Erase the status display when a program is
selected.
7
Erase the status display when a program is
selected and/or in the event of M02, M30, END
PGM.
Default: 4
CfgPosDisplayPace
Display step for the individual axes; select the key name of the axis/spindle from MP_axisList using
the selection menu when inserting the parameters
displayPace Display step for position display in mm or Change at 1039
degrees any time
101001
(NOTHING)
Format: Selection menu
MP7290.0-8
LEVEL1
Input: 0.1 [mm] or [°]
0.05 [mm] or [°] 597110-01
0.01 [mm] or [°]
0.005 [mm] or [°]
0.001 [mm] or [°]
0.0005 [mm] or [°]
0.0001 [mm] or [°]
0.00005 [mm] or [°]
0.00001 [mm] or [°]
Default: 0.001 [mm] or [°]

January 2015 4.11 List of machine parameters 687


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
displayPaceInch Display step for position display in inches Change at 1039
any time
101002 Format: Selection menu
(NOTHING)
MP7290.0-8 Input: 0.005 [inch]
LEVEL1
0.001 [inch]
0.0005 [inch] 597110-01
0.0001 [inch]
0.00005 [inch]
0.00001 [inch]
Default: 0.001 [inch]
CfgUnitOfMeasure
Definition of the unit of measure valid for the display
unitOfMeasure Unit of measure for display and user interface Program 1867
run is
101101 Format: Selection menu
locked
Input: (RUN)
 metric LEVEL1
Metric measurement system
597110-01
 inch
Inches
Default: metric
CfgProgramMode
Format of the NC programs and cycle display
Specifies the type of NC program for MDI (HEIDENHAIN conversational or ISO) and the type of cycle
display.
programInputMode Program entry in HEIDENHAIN plain language Program 1872
or in ISO run is
101201
locked
Valid for the Positioning with Manual Data Input
(RUN)
(MDI) mode of operation
LEVEL1
Format: Selection menu
597110-01
Input:
 HEIDENHAIN
Program entry according to HEIDENHAIN
conversational format
 ISO
Program entry according to ISO
Default: HEIDENHAIN

688 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgDisplayLanguage
Definition of the NC and PLC conversational language
ncLanguage NC conversational language Program 1869
run is
101301 Format: Selection menu
locked
MP7230.0 Input: ENGLISH—English dialog text (RUN)
GERMAN—German dialog text
LEVEL1
CZECH—Czech dialog text
FRENCH—French dialog text 597110-01
ITALIAN—Italian dialog text
SPANISH—Spanish dialog text
PORTUGUESE—Portuguese
dialog text
SWEDISH—Swedish dialog text
DANISH—Danish dialog text
FINNISH—Finnish dialog text
DUTCH—Dutch dialog text
POLISH—Polish dialog text
HUNGARIAN—Hungarian dialog
text
RUSSIAN—Russian dialog text
CHINESE—Chinese dialog text
(simplified)
CHINESE_TRAD—Chinese dialog
text
(traditional)
SLOVENIAN—Slovenian dialog
text
KOREAN—Korean dialog text
NORWEGIAN—Norwegian dialog
text
ROMANIAN—Romanian dialog
text
SLOVAK—Slovak dialog text
TURKISH—Turkish dialog text
Default: ENGLISH
plcDialogLanguage PLC conversational language Program 1869
run is
101301 Format: Selection menu
locked
MP7230.1 Input: See MP_ncLanguage (RUN)
Default: ENGLISH LEVEL1
597110-01
plcErrorLanguage PLC error message language Program 1870
run is
101303 Format: Selection menu
locked
MP7230.2 Input: See MP_ncLanguage (RUN)
Default: ENGLISH LEVEL1
597110-01

January 2015 4.11 List of machine parameters 689


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
helpLanguage Language for online help Program 1870
run is
101304 Format: Selection menu
locked
MP7230.3 Input: See MP_ncLanguage (RUN)
Default: ENGLISH LEVEL1
597110-01
CfgOsciColor
Color settings for the internal oscilloscope
background Background color Change at 1791
any time
101401 Format: Selection menu
(NOTHING)
MP7365.0 Input: black
LEVEL3
blue
light_gray 597110-01
red
dark_gray
light_green
really_light_gray
really_dark_gray
light_violet
dark_green
light_blue
light_red
medium_gray
yellow
white
Default: white
channel1 Color for channel 1 Change at 1792
any time
101402 Format: Selection menu
(NOTHING)
MP7365.4 Input: see MP_background
LEVEL3
Default: blue
597110-01
channel2 Color for channel 2 Change at 1792
any time
101403 Format: Selection menu
(NOTHING)
MP7365.5 Input: see MP_background
LEVEL3
Default: light_green
597110-01
channel3 Color for channel 3 Change at 1792
any time
101404 Format: Selection menu
(NOTHING)
MP7365.6 Input: see MP_background
LEVEL3
Default: light_blue
597110-01

690 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
channel4 Color for channel 4 Change at 1792
any time
101405 Format: Selection menu
(NOTHING)
MP7365.7 Input: see MP_background
LEVEL3
Default: yellow
597110-01
channel5 Color for channel 5 Change at 1792
any time
101406 Format: Selection menu
(NOTHING)
MP7365.8 Input: see MP_background
LEVEL3
Default: light_violet
597110-01
channel6 Color for channel 6 Change at 1793
any time
101407 Format: Selection menu
(NOTHING)
MP7365.9 Input: see MP_background
LEVEL3
Default: dark_green
597110-01
logicTrace Color for logic-trace channels Change at 1793
any time
101408 Format: Selection menu
(NOTHING)
Input: see MP_background
LEVEL3
Default: black
597110-01
select Color for selected channel Change at 1793
any time
101409 Format: Selection menu
(NOTHING)
MP7365.3 Input: see MP_background
LEVEL3
Default: red
597110-01
grid Color for graduation Change at 1793
any time
101410 Format: Selection menu
(NOTHING)
MP7365.1 Input: see MP_background
LEVEL3
Default: medium_gray
597110-01
cursorText Color for cursor and text Change at 1793
any time
101411 Format: Selection menu
(NOTHING)
MP7365.2 Input: see MP_background
LEVEL3
Default: really_dark_gray
597110-01

January 2015 4.11 List of machine parameters 691


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgStartupData
Behavior during control startup
powerInterruptMsg Acknowledge the Power interrupted message Change at 2067
any time
101501 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 TRUE
Start-up is only continued after the message 597110-01
has been acknowledged.
 FALSE
The Power interrupted message does not
appear.
Default: FALSE
CfgRetractionMode
Behavior of the "Retraction" operating mode
retractionMode Enable "Retraction" operating mode Change at 1903
any time
124101 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 Available
The operator can select the Retraction 597110-08
operating mode during control start-up.
 Prohibited
The Retraction operating mode is not available
to the user.
Default: Prohibited

692 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgShutDown
Behavior when exiting control operation
shutdownOnConfig Behavior when RESET configuration data is Change at 2075
changed any time
101601
(NOTHING)
Specifies the TNC 640’s reaction to a change that
MP4040
requires a RESET. LEVEL3
(optional parameter)
Note: 597110-01
If no value is entered for this parameter (icon
appears dimmed), no automatic reset will be
performed. In this case you start the reset by soft
key.
Format: Selection menu
Input:
 RESTART
The control is shut down and then restarted.
 TERMINATE
The control is shut down, but the operating
system remains active.
 SHUTDOWN
The control and the operating system are shut
down.
 POWEROFF
The control and the operating system are shut
down. If a PLC output is entered in
MP_powerOffPort, it will be set after
shutdown.
Default: RESTART
shutdownOnError Behavior when RESET errors are Change at 2075
acknowledged any time
101602
(NOTHING)
Specifies the TNC 640’s behavior when a RESET
MP4040
error is acknowledged. LEVEL3
Format: Selection menu 597110-01
Input: see MP_shutdownOnConfig
Default: RESTART
shutdownOnUser Behavior when the TNC 640 is shut down by Change at 2076
soft key any time
101603
(NOTHING)
Specifies the TNC 640’s behavior when it is shut
MP4040
down by soft key. LEVEL3
Format: Selection menu 597110-01
Input: see MP_shutdownOnConfig
Default: TERMINATE

January 2015 4.11 List of machine parameters 693


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
shutdownOnOem Behavior when PLC Module 9279 is called Change at 2076
any time
101604 Specifies the TNC 640's behavior when the OEM
(NOTHING)
shuts down the control using PLC module 9279.
MP4040
LEVEL3
Format: Selection menu
597110-01
Input: see MP_shutdownOnConfig
Default: TERMINATE
maxTermTime Delay time until control is shut down Change at 2077
any time
101605 Defines the time before the process is
(NOTHING)
terminated.
(optional parameter)
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 1000 [s]
Default: No value, parameter optional
powerOffDevice Bus address of the HSCI device Change at 2077
any time
101608 System with HSCI interface:
(NOTHING)
For an HSCI system, enter the bus address of the
(optional parameter)
HSCI PL or the HSCI MB in the parameter LEVEL3
MP_powerOffDevice, e.g. the bus address of a
597110-04
PL 62xx or UEC 11x or MB 7xx at which the
control is to set a PLC output after shutting down.
System without HSCI interface:
Do not assign the parameter.
Format: Numerical value
Input: 0 to 20
Default: No value, parameter optional
powerOffSlot Number of the slot on the HSCI device Change at 2077
any time
101609 System with HSCI interface:
(NOTHING)
For an HSCI system, in parameter
(optional parameter)
MP_powerOffSlot, enter the number of a slot of LEVEL3
the HSCI device defined under
597110-04
MP_powerOffDevice at which a PLC output is to
be set after shutdown. The system module of a
PL 62xx or a UEC 11x has the number 0.
System without HSCI interface:
Do not assign the parameter.
Format: Numerical value
Input: 0 to 8
Default: No value, parameter optional

694 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
powerOffPort PLC output to be set after shutdown Change at 2078
any time
101606 System with HSCI interface:
(NOTHING)
See device-specific table
MP4041
LEVEL3
System without HSCI interface:
(optional parameter)
0 to 31: Corresponds to PLC outputs I0 to I31 for 597110-01
systems without HSCI

No entry: Do not set PLC output.


Format: Numerical value
Input: 0 to 31
Default: No value, parameter optional
powerOffDelay Delay time until the PLC output is set Change at 2078
any time
101607 After shutdown, the control waits for the time
(NOTHING)
defined in MP_powerOffDelay before setting the
MP4042
PLC output defined in MP_powerOffPort. LEVEL3
(optional parameter)
Format: Numerical value 597110-01
Input: 0 to 1000 [s]
Default: No value, parameter optional
timeoutShutdownSK Delay time until shutdown dialog is displayed Change at 2078
any time
101610 Defines the delay time after pressing the
(NOTHING)
"Machine off" soft key until the shutdown dialog is
(optional parameter)
displayed. LEVEL3
Format: Numerical value 597110-06
Input: 1 to 3600 [s]
Default: 2
timeoutShutdown Delay time during shutdown until the PLC Change at 2079
program ends any time
101611
(NOTHING)
Defines the delay time after confirming the "Do
(optional parameter)
you really want to switch off?" dialog until the LEVEL3
shutdown of the PLC program.
597110-06
Format: Numerical value
Input: 1 to 3600 [s]
Default: 20

January 2015 4.11 List of machine parameters 695


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
rebootOption Setting for the "Shut down control" dialog Change at 2079
any time
101612 Specifies whether, in the "Shut down control"
(NOTHING)
dialog, the control offers the user the restart
(optional parameter)
option for the NC software without a complete LEVEL3
shutdown of the operating system. The behavior
597110-09
defined in MP_shutdownOnUser is always in
effect.
Format: Selection menu
Input: see MP_rebootOption
Default: TERMINATE
CfgTable
Display properties of the table editor
tableView Selection of various table views Change at 1971
any time
101701 The table view can be selected by using the
(NOTHING)
screen layout in the table editor (applies to the
first six entries). The last two entries are used in LEVEL2
the Edit table characteristics mode or the
597110-01
Select from table mode.
Format: Selection menu
Input:
 UNDEF: No default
 TABLIST: List
 TABLISTPICT: List + graphics
 TABFORM: Form
 TABFORMPICT: Form + graphics
 TABFORMTEXT: Form + text
 TABLEPROP: Edit table characteristics

 TABLESELECT: Select from table


Default: TABLIST
enableNotify Switch for table change notification Change at 1972
any time
101702 Switch for prompt notification about external
(NOTHING)
changes in the current table.
SQL command option FOR NOTIFICATION. LEVEL2
Format: Selection menu 597110-01
Input:
 TRUE:
Prompt notification about external changes
 FALSE:
No prompt notification about external changes
Default: FALSE

696 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
dispComplCol Display mode of column at right margin Change at 1972
any time
101703 Format: Selection menu
(NOTHING)
Input:
LEVEL2
 TRUE:
Column is displayed, but its right margin is 597110-01
truncated.
 FALSE:
Incomplete column is hidden completely.
Default: FALSE
CfgClockView
Display mode for the time display
Specifies the display mode for time display on the user interface.
displayMode Selection of the display mode for the time NOTHING 1855
display
120601 LEVEL1
Format: Selection menu
597110-05
Input:
 Analog:
Analog clock
 Digital:
Digital clock
 Logo:
OEM logo
 Analog and logo:
Analog clock and OEM logo
 Digital and logo:
Digital clock and OEM logo
 Analog on logo:
Analog clock that superimposes the OEM logo
 Digital on logo:
Digital clock that superimposes the OEM logo
Default: Analog

January 2015 4.11 List of machine parameters 697


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgInfoLine
Enable/disable info line
Specifies whether the Info line (below the operating modes display) should be displayed.
infoLineEnabled Enable/disable info line Change at 1856
any time
120701 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 ON
The info line below the operating mode display 597110-05
is enabled
 OFF
The info line is disabled
Default: ON
CfgGraphics
Settings for 3-D simulation graphics
modelType Model type of the 3-D simulation graphics Change at 1858
any time
124201 Specifies the type of the displayed model for 3-D
(NOTHING)
graphic simulation.
LEVEL1
Format: Selection menu
597110-08
Input:
 No Model
The model depiction is deactivated. Only the 3-
D line graphics are shown (lowest processor
load, e.g. for fast ascertainment of program run
times)
 3D
Model depiction for complex operations
(highest processor load, e.g. for turning or
undercuts)
 2.5D
Model depiction for 3-axis operations (medium
processor load)
Default: 3D

698 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
modelQuality Model quality of the 3-D simulation graphics Change at 1858
any time
124202 Specifies the model quality of the 3-D graphic
(NOTHING)
simulation in four stages.
LEVEL1
Format: Selection menu
597110-08
Input:
 very high—Very high model quality
The block end points can only be displayed with
this setting.
 high—High model quality
 medium—Medium model quality
 low—Low model quality
Default: medium
CfgSoftkeys (optional parameter)
Settings for soft-key rows
leftSoftkeyRow Behavior of the left vertical OEM soft-key row Change at 1857
any time
123101 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 Disabled
The left vertical OEM soft-key row is not active. 597110-06
The soft keys must be evaluated by a Python
application, for example.
 10 SKs, Auto Hide
The left vertical OEM soft-key row has 10 soft
keys. The row is automatically shown when a
left vertical soft key is pressed.
 9 SKs, Show Always
The left vertical OEM soft-key row has 9 soft
keys. The row is always shown on the OEM
desktop.
Default: Disabled

January 2015 4.11 List of machine parameters 699


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgSomView (optional parameter)
Settings for the safe operating modes SOM_1 to SOM_4
renameSom4 Rename operating mode SOM_4 Change at –
any time
123601 In controls with functional safety, any text in
(NOTHING)
SOM_XXX format can be shown instead of
SOM_4. Up to three desired characters can be LEVEL3
used instead of "4".
597110-08
Format: String
Input: Three arbitrary characters

700 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPositionDisplay (Optional parameter)
Settings for the digital readout
progToolCallDL Position display with TOOL CALL DL Pgm.lauf –
locked
124501 Defines position display with TOOL CALL DL.
(RUN)
Format: Selection menu
LEVEL1
Input:
597110-09
 As Tool Length
Default behavior of the TNC 640. The oversize
DL programmed in the TOOL CALL block is
taken into account as part of the tool length in
the nominal position display.
 As Workpiece Oversize
iTNC 530-compatible setting. The oversize DL
programmed in the TOOL CALL block is not
taken into account in the nominal position
display. It is therefore effective as a workpiece
oversize.
CfgKeyboard
Assignment of orange axis-address keys I to V
Axis designation (see CfgProgAxis/[key name of axis]/axName)
axisKeyI Designation of axis I on the operating panel PLC/Pgm –
run is
101801 Format: String
locked
MP410.0 Input: X (PLC/RUN)
(optional parameter) Default: X LEVEL1
axisKeyII Designation of axis II on the operating panel PLC/Pgm –
run is
101802 Format: String
locked
MP410.1 Input: Y (PLC/RUN)
(optional parameter) Default: Y LEVEL1
axisKeyIII Designation of axis III on the operating panel PLC/Pgm –
run is
101803 Format: String
locked
MP410.2 Input: Z (PLC/RUN)
(optional parameter) Default: Z LEVEL1
axisKeyIV Axis designation of Axis IV on the operating PLC/Pgm 1861
panel run is
101804
locked
Format: String
MP410.3 (PLC/RUN)
Input: e.g. "C"
(optional parameter) LEVEL1
Default: C
axisKeyV Designation of axis V on the operating panel PLC/Pgm 1861
run is
101805 Format: String
locked
MP410.4 Input: e.g. "B" (PLC/RUN)
(optional parameter) Default: B LEVEL1

January 2015 4.11 List of machine parameters 701


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
presetWithAxisKey Workpiece presetting through axis keys PLC/Pgm 1976
run is
101806 Format: Selection menu
locked
MP7296 Input: (PLC/RUN)
(optional parameter)  TRUE LEVEL1
Datum is set by the SET DATUM soft key and
by pressing an orange axis key.
 FALSE
The datum is set only with the SET DATUM soft
key.
Default: TRUE
Paths
Definition of the paths and file names in effect for entire system
CfgOemPath
Paths for OEM files;
File paths that can be created and changed by the OEM.
oemTable Path for OEM tables Shut down 2464
control
102001 Format: String
(RESET)
Input: Path, max. 260 characters
LEVEL3
Path entry via selection window
597110-01
Default: %OEM%\table
dialogTextfile Name of the text file for OEM texts Shut down 620
control
102002 The path %OEM%\plc\language\en is preset by
(RESET)
the system, whereby the last subdirectory is
(optional parameter)
formed from the configured language (here en = LEVEL3
English).
597110-01
Enter the name (without the path) for OEM text
files. You can enter a maximum of 11 files of the
*.CSV type in which you define your OEM-specific
texts.
Format: List [0 to 10]
Input: Name of the text file
Max. 80 characters
cycleMainTreeFile Path and name for the OEM cycle file (.CDF) Shut down 2379
control
102003 Format: String
(RESET)
(optional parameter) Input: Path and name, max. 260
LEVEL3
characters
597110-01

702 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
cycleSubTreeFiles List of path/names of user cycle files (.CDF) Shut down 2379
control
102004 The soft key rows of these files are appended to
(RESET)
the soft key rows of the HEIDENHAIN or OEM
(optional parameter)
files. LEVEL3
Format: List [0 to 10] 597110-01
Input: Path and name, max. 260
characters
oemCycle Path for OEM cycles Shut down 2379
control
102005 Format: String
(RESET)
(optional parameter) Input: Path and name, max. 260
LEVEL3
characters
597110-01
ncDir List of drives and/or directories Shut down 2370
control
102006 The drives and directories entered here are visible
(RESET)
in the file manager, provided that you have the
required access rights. The respective paths LEVEL3
contain NC programs or tables, for example,
597110-01
floppy disk drive directories, HDR or CFR
directories, network drives, etc.
Format: List [0 to 10]
Input: String, max. 260 characters
oemLogo Path for optional OEM logo Shut down 1856
control
102007 The OEM logo entered here is shown in the upper
(RESET)
right corner of the screen if correspondingly
(optional parameter)
configured with CfgClockView/displayMode. LEVEL3
Permissible size of the logo with 19" screen: 597110-05
Max. 108 x 22 pixels
Permissible size of the logo with 15" screen:
Max. 108 x 54 pixels
Permissible file formats:
BMP, BMX, GIF, JPG, PNG, SVG
Format: String
Input: Path and name, max. 260
characters

January 2015 4.11 List of machine parameters 703


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgUserPath
Paths for the end user;
Directories that are to be visible in the file manager.
These entries can be edited by the machine operator .
ncDir List of drives and/or directories Pgm.lauf 2371
locked
102201 The drives and directories entered here are visible
(RUN)
in the file manager, provided that you have the
required access rights. The respective paths LEVEL1
contain NC programs or tables, for example,
597110-01
floppy disk drive directories, HDR or CFR
directories, network drives, etc.
Format: List [0 to 10]
Input: String, max. 260 characters
fn16DefaultPath Default output path for the function FN16: F- Pgm.lauf 1881
PRINT in the Program Run operating modes locked
102202
(RUN)
If no path is defined for the FN 16: function in the
(optional parameter)
NC program, the output is in the directory LEVEL1
specified here.
597110-05
Format: String
Input: Path, max. 260 characters
Path entry via selection window
fn16DefaultPathSim Default output path for the function FN16: F- Pgm run 1881
PRINT in the Test Run operating mode locked
102203
(RUN)
If no path is defined for the FN 16: function in the
(optional parameter)
NC program, the output is in the directory LEVEL1
specified here.
597110-05
Format: String
Input: Path, max. 260 characters
Path entry via selection window

704 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlcPath
Path/name of most recently compiled PLC program files
mainPgm Path/name of the PLC main program Change at 2376
any time
102301 Format: String
(NOTHING)
Input: Path and name, max. 260
LEVEL2
characters
pwmPgm Path/name of the PLC commissioning Change at 2376
program any time
102302
(NOTHING)
PLC program for commissioning the current
controller. This PLC program is alternately LEVEL2
compiled and used if the special mode of
operation for adjusting the current controller is
opened before acknowledgment of the "Power
interrupted" message (code number 94655).
Format: String
Input: Path and name, max. 260
characters
splcMainPgm Path/name of the SPLC main program Change at –
any time
102313 Define only for controls with integrated functional
(NOTHING)
safety (FS).
(optional parameter)
LEVEL2
597110-05
errorTable Path/name of the PLC error message table Change at 2376
(PET table) any time
102303
(NOTHING)
Format: String
LEVEL2
Input: Path and name, max. 260
characters
errorText Name of the text file for PLC error messages Change at 2376
any time
102304 The path %OEM%\plc\language\en is preset by
(NOTHING)
the system, whereby the last subdirectory is
formed from the configured language (here en = LEVEL2
English).
Format: String
Input: File name, max. 260 characters
Default: ErrorText.csv
fn14ErrorText Name of the OEM text file for FN14 error Change at 2377
messages any time
102312
(NOTHING)
The path %OEM%\plc\language\en is preset by
(optional parameter)
the system, whereby the last subdirectory is LEVEL2
formed from the configured language (here en =
597110-03
English).
Format: String
Input: File name, max. 260 characters

January 2015 4.11 List of machine parameters 705


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
dialog Name of text file for PLC dialogs Change at 2377
any time
102305 The path %OEM%\plc\language\en is preset by the
(NOTHING)
system, whereby the last subdirectory is formed
from the configured language (here en = English). LEVEL2
Format: String
Input: File name, max. 260 characters
softkeyProject Path/name of project file for PLC soft keys (*.XRS) Change at 2377
any time
102306 Format: String
(NOTHING)
Input: Path and name, max. 260
LEVEL2
characters
compCfgFile Path/name of configuration file for PLC Change at 2378
compiler (*.MCG) any time
102308
(NOTHING)
Format: String
LEVEL2
Input: Path and name, max. 260
characters
splcCompCfgFile Path/name of configuration file for SPLC Change at –
compiler (*.MCG) any time
102314
(NOTHING)
Define only for controls with integrated functional
safety (FS). LEVEL2
Format: String 597110-05
Input: Path and name, max. 260
characters
events Path/name of the event list (SPAWN Change at –
processes) any time
102309
(NOTHING)
Reserved, do not define. If evaluation is not in
process, events for SPAWN processes are to be LEVEL2
defined over PLC modules.
Format: String
Input: Path and name, max. 260
characters
keymapFile Path/name of configuration file for keyboard Change at 2378
mapping any time
102310
(NOTHING)
Format: String
LEVEL2
Input: Path and name, max. 260
characters
magazineRules Path/name for a file with magazine rules Change at 2378
any time
102311 Enter the path and name of a file with magazine
(NOTHING)
rules for managing the tool memory. Example:
(optional parameter)
%OEM%\plc\tchrules.tcr LEVEL2
Format: String 597110-02
Input: Path and name, max. 260
characters

706 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
pythonScripts Python scripts to be started Change at 2378
any time
102315 Specifies which Python scripts are automatically
(NOTHING)
started after compilation of the PLC program.
(optional parameter)
Enter the key names of the Python scripts from LEVEL2
CfgPythonScript.
597110-05
Format: List [0 to 8]
Input: Key name, max. 18 characters
CfgTablePath
Path for tables that can be activated in SQL commands through the symbolic name (SQL synonym)
given as the key name. If you use SQL commands for accessing the table, only enter the synonym
instead of the complete path and file name, for example, TOOL instead of TNC:\table\tool.t.
Some synonym names for tables are already predefined by HEIDENHAIN.
You can also add your own synonym names.
path Symbolic table names for access via SQL Change at 2465
commands any time
102501
(NOTHING)
Path for tables that can be activated in SQL
commands through the symbolic name (SQL LEVEL1
synonym) given as the key name. These symbolic
597110-01
names are used in cycles or in the PLC.
Format: String
Input: Path/name, max. 500 characters
readOnlyMode Write protection for this table in the table editor Change at 2465
any time
102502 Format: Selection menu
(NOTHING)
(optional parameter) Input:
LEVEL1
 TRUE
The table can no longer be changed through the
table editor. Access is only possible via SQL
commands.
 FALSE
The table can be changed through the table
editor.
Default: No value (= behavior as for FALSE)
CfgSystemCycle
Path for a system cycle
The key name is a symbolic name which can be used to call the system cycle. This enables you to call
machine-specific subcycles from a general system cycle without knowing the path of the respective
cycles.
path Path for a system cycle Program 1907
run is
102601 The key name is a symbolic name that can be
locked
used to call the system cycle.
(RUN)
Format: String
LEVEL3
Input: Path/name, max. 260 characters

January 2015 4.11 List of machine parameters 707


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgOemScript
Path of script file
The key name is a symbolic name that can be used to call the script file.
It contains the script files for tool change sequences, for example.
path Path of script file Change at –
any time
102701 The key name is a symbolic name that can be
(NOTHING)
used to call the script file.
LEVEL3
Format: String
597110-04
Input: Path/name, max. 260 characters
CfgConfigBackup
Settings for the DATA BACKUP function in the configuration editor.
backupFiles Additional directories or files for the config backup Change at 612
any time
123701 Enter here directories or files that are to be
(NOTHING)
additionally included in the backup by using the
Back up parameter files function. LEVEL3
Format: String 597110-08
Input: List of up to 40 paths,
max. 260 characters per path
CfgBinFileCache
Settings for saving NC programs in binary form in the cache;
The binary files are used to run NC programs if a cache exists. Then the ASCII code does not have to
be interpreted directly. The cache for binary files improves the system performance.
cachePath Directory in which the binary cache files are Change at 1882
saved any time
102801
(NOTHING)
The cache is inactive if no directory is entered.
HEIDENHAIN recommends not to change the LEVEL3
default setting %SYS%\bincache!
597110-01
Format: String
Input: Path, max. 500 characters
Directory for binary files;
maxFiles Maximum number of cache files in cache Change at 1883
directory any time
102802
(NOTHING)
If the defined quantity is exceeded, 10 % of the
cache is automatically deleted. LEVEL3
Format: Numerical value 597110-01
Input: 0 to 200
0: No cache memory available
Default: 200

708 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
freeSpace Maximum available memory for cache files Change at 1883
any time
102803 If the available memory reserve falls below the
(NOTHING)
defined value [MB], 10 % of the cache is
automatically deleted. LEVEL3
Format: Numerical value 597110-01
Input: 0 to 30 [MB]
Default: 30 [MB]
ProgramManager
Configuration of the program manager for file management.
CfgPgmMgt
Settings for the file management
dependentFiles Display of dependent files Change at –
any time
122101 This parameter specifies whether dependent files
(NOTHING)
are to be displayed.
In addition to the file name extension, dependent LEVEL1
files have the ending ".DEP".
597110-06
Possible types are, e.g. ".H.SEC.DEP",
".I.SEC.DEP", ".T.DEP", ".P.T.DEP", ".H.T.DEP".
Format: Selection menu
Input:
 AUTOMATIC
Dependent files are not displayed.
 MANUAL
Dependent files are displayed.
Default: AUTOMATIC
CfgFileType
Assignment of the editor to a file type;
Depending on the file extension, a standard editor as well as further data required for controlling the
editing process are assigned.
[Key name of the file extension]
e.g.: H (HEIDENHAIN programs), I (ISO programs), CMA (table for axis-error compensation), etc.
The DefaultFileType key is used to assign a standard editor to all other file types.

January 2015 4.11 List of machine parameters 709


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
unitOfMeasure Unit of measure for length (metric/inch) Change at 2438
any time
102901 Position display, NC programs, tables etc.
(NOTHING)
Format: Selection menu
LEVEL3
Input:
597110-01
 UNIT_MM:
Input in mm
 UNIT_INCH:
Input in inches
 UNIT_MMINCH:
Input in mm or inches
 UNIT_INDEPENDENT:
Input without unit of measure
Default: UNIT_INDEPENDENT
standardEditor Standard editor used for this file Change at 2438
any time
102902 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 TEXT EDITOR
597110-01
 PROGRAM EDITOR
 TABLE EDITOR
 HELP VIEWER
 EXTERNAL VIEWER
Default: PROGRAM EDITOR
fileSize File size above which the alternative editor is Change at 2438
used any time
102903
(NOTHING)
Files larger than MP_fileSize are no longer
(optional parameter)
converted into binary format by the program LEVEL3
editor.
597110-01
Format: Numerical value
Input: File size [KB]
Default: 100
alternateEditor Alternate editor used for files starting from the Change at 2439
size in MP_fileSize any time
102904
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-01
 TEXT EDITOR
 PROGRAM EDITOR
 TABLE EDITOR
Default: TEXT EDITOR

710 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
softkeyIcon Path/name of a graphic file for a graphic soft Change at 2439
key (soft-key icon) any time
102905
(NOTHING)
An icon can be used instead of a text in the table
(optional parameter)
editor if, in addition, the parameter MP_choice LEVEL3
(TableSettings/Columns/CfgColumnText) is
597110-01
defined.
Format: String
Input: Path/name of the icon
Max. 260 characters
softkeyIconVariant Variant number of the soft-key icon Change at 2439
any time
102906 You can specify a variant number in addition to the
(NOTHING)
path/name of a soft-key icon (for BMX files with
(optional parameter)
multiple levels). LEVEL3
Format: Numerical value 597110-01
Input: 0 to 100
protect Disabling file types Change at 2440
any time
102907 Lock the soft keys for selecting the file type. You
(NOTHING)
can also lock the EDITING ON/OFF soft key to
(optional parameter)
prevent any editing of the file type. LEVEL3
Format: Selection menu 597110-04
Input:
 LOCK_OFF
File type not locked
 LOCK_SOFTKEY
Lock the SELECT TYPE soft key for selection of
the file type
 LOCK_FILETYPE
Lock file types from editing
 LOCK_ALL
Lock the SELECT TYPE soft key for selection of
the file type and lock the file type to prevent
editing
Default: LOCK_OFF
freeDefinableTable File type is a freely definable table. Change at 2440
any time
102908 Specifies whether the current file type is to be
(NOTHING)
handled as a freely definable table.
(optional parameter)
LEVEL3
Format: Selection menu
597110-06
Input:
 TRUE
File type is a freely definable table
 FALSE
File type is not a freely definable table
Default: FALSE

January 2015 4.11 List of machine parameters 711


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPathProtection
Access rights to drives and directories
[Key name with drive or directory (path name)]
e.g. %OEM%\ or %USR%\CONFIG , etc.
protection Access rights to the drive or directory Change at 1885
any time
103101 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 LEVEL1
Access via MOD key without code number 597110-01
 LEVEL2
Access via code number 123
 LEVEL3
Access via code number 95148
PLC
Settings for PLC run-time system
CfgPlcOptions
Options for the PLC run-time system:
Specifies general optional settings for the PLC.
trackMState Automatic tracking of the active M functions Change at 2423
any time
103201 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 TRUE
The PLC run-time system automatically updates 597110-03
the status of the active M functions in the list of
the active M functions.
 FALSE
You have to use PLC Module 9088 to track the
status of the active M functions in the list of the
active M functions.
Default: FALSE

712 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
trackApiState Automatic tracking of the active M functions Change at 2424
any time
103203 Format: Selection menu
(NOTHING)
(optional parameter) Input:
LEVEL3
 TRUE
(Only effective if you use the numerical API 1.0 597110-03
memory interface!)
The PLC run-time system automatically updates
the status of the spindle and coolant M
functions in the list of active M functions. This
list is based on the markers M4005 to M4008
and M4040 to M4042.
 FALSE
(Only effective if you use the symbolic API 3.0
memory interface!)
You have to track the list of active M functions
through the PLC program. In this case, you have
to use Module 9088 to delete the M functions
from the list or to add them to the list. If the
parameter is not available, it behaves as if it
were set to TRUE in order to ensure
compatibility.
Default: FALSE
revokeMState Automatic removal of M functions from the Change at 2424
status display any time
103204
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-03
 TRUE
If Module 9088 is used to add an M function to
the list of active M functions, the PLC run-time
system evaluates the parameter MP_revoke
(CfgPlcMStrobe). All of the M functions listed
there are removed from the list of active M
functions. (Only possible if a single NC channel
is active.)
 FALSE
If more than one NC channel is configured or
the value is set to FALSE, the parameter
MP_revoke (CfgPlcMStrobe) is not evaluated.
In this case you have to use Module 9088 to
remove the M functions from the list of active
M functions.
Default: FALSE

January 2015 4.11 List of machine parameters 713


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
apiErrorReaction Reaction to unexpected error in a PLC module Change at 2425
any time
103202 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 LOG
The error that occurred is entered in the PLC 597110-02
error log.
 DISPLAY
The error that occurred is shown on the control
screen.
 STOP_PLC
The current PLC program is stopped if an error
occurs during a PLC module call.
Default: LOG
CfgPlcOemError
Configuration of PLC error messages in the PLC error table;
You can set markers, depending on the MTYPE column in the PET table.
notifyInfo Symbolic name or the number of a marker Change at 1942
any time
103301 This marker is set if there is a message pending
(NOTHING)
from the PLC. Here it is a PLC error message, for
(optional parameter)
which the value I is entered in the MTYPE column LEVEL3
of the PET table.
597110-03
Format: String
Input: PLC operand,
Max. 260 characters
notifyWarning Symbolic name or the number of a marker Change at 1942
any time
103302 This marker is set if there is a message pending
(NOTHING)
from the PLC. Here it is a PLC error message, for
(optional parameter)
which the value W is entered in the MTYPE column LEVEL3
of the PET table.
597110-03
Format: String
Input: PLC operand,
Max. 260 characters
notifyError Symbolic name or the number of a marker Change at 1942
any time
103303 This marker is set if there is an error pending from
(NOTHING)
the PLC. Here, error is a PLC error message for
(optional parameter)
which the value E is entered in the MTYPE column LEVEL3
of the PET table. If the MTYPE column does not
597110-03
appear in the PET table, all PLC error messages of
the E type are evaluated for errors.
Format: String
Input: PLC operand,
Max. 260 characters

714 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlcPeriphery
Configuration of PLC peripheral devices:
IOC configuration, assignment of logical to physical PLs; behavior of the override potentiometers;
Reaction of the PT100 inputs, etc.
iocProject Configuration file for IOC hardware Shut down 2339
control
103402 Specifies the path/file name of the configuration
(RESET)
file for HSCI and PROFIBUS components.
LEVEL3
Format: String
597110-03
Input: Path/name of the IOC file
Max. 260 characters
iocOption Option data for IOC hardware (HSCI, Shut down 2340
PROFIBUS) control
103403
(RESET)
By inserting "–" in front of the name of the option,
it can be disabled. LEVEL3
Format: List [0 to 100]
Input: String, max. 32 characters
pt100Discrete Transfer of PT100 values Change at –
any time
103404 Parameter reserved. Do not change default value.
(NOTHING)
MP4020.7
LEVEL3
(reserved parameter)
597110-01
tempCompensation Compensation of thermal expansion Change at 1180
any time
103405 Compensation speed for lag-tracking axis-error
(NOTHING)
compensation
MP4070
LEVEL3
Format: Numerical value
597110-01
Input: 0.000 to 359 999.640 [mm/min]
overrideFullRatio Compensation for cable losses of the override Change at 2178
potentiometers any time
103406
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 0.5 to 1
With max. 3 decimal places 597110-01
Default: 0.98
override100Ratio Compensation for differing adjustment of the Change at 2178
override potentiometers any time
103411
(NOTHING)
Reserved for HEIDENHAIN, do not make any
(optional parameter)
entries in this parameters on your own. LEVEL3
Format: Numerical value
Input: 0.5 to 1
With max. 4 decimal places
Default: 0.6275

January 2015 4.11 List of machine parameters 715


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
overrideDelta Compensation for thermal noise in override Change at 2179
potentiometers any time
103407
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 0.0001 to 0.1
With max. 4 decimal places 597110-01
Default: 0.0005
overrideIntegDelta Compensation for thermal noise in override Change at 2179
potentiometers any time
103408
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 0.0001 to 1
With max. 4 decimal places 597110-01
Default: 0,025
CfgPlcTimer
Default values for PLC timers and counters
Changes do not become effective until the PLC program has been restarted.
[Key name of the PLC timer or counter]
run Process marker for the timer or counter Program 2352
run is
103503 Identifies the timer or counter, for which the
locked
respectively configured time applies.
(optional parameter) (RUN)
Timer: T48 to T999
LEVEL3
Counter: C48 to C95
597110-03
If two or more times are configured, the
parameter identifies the first timer or counter.
Format: String
Input: Process marker, max. 80
characters
start Start marker for the timer or counter Program 2352
run is
103504 Identifies the start marker for the timer or counter.
locked
(optional parameter) Timer: T0 to T47 (RUN)
Counter: C0 to C47 LEVEL3
There is no start marker for timers T96 to T999. 597110-03
They can be started only through Module 9006.
This parameter is not evaluated by the control.
The PLCdesignNT development environment
uses it for the automatic generation of PLC
definition files.
Format: String
Input: Start marker, max. 80 characters

716 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
gate Release marker for counters Program 2353
run is
103505 Identifies the enabling marker (gate marker) for
locked
the corresponding counter.
(optional parameter) (RUN)
Gate markers:C96 to C143
LEVEL3
This parameter is not evaluated by the control
597110-03
itself. The PLCdesignNT development
environment uses it for the automatic generation
of PLC definition files.
Format: String
Input: Gate marker, max. 80 characters
unit Unit of measure Program 2353
run is
103501 Format: Selection menu
locked
Input: (RUN)
 SECONDS LEVEL3
Input in seconds [s]
597110-01
 PLC_CYCLES
Input in number of PLC cycles
Default: SECONDS
value Default value for PLC timers/counters Program 2353
run is
103502 Format: List [1 to 99]
locked
MP4110 / 4120 Input: 0 to 1 000 000 [s or PLC cycles] (RUN)
Default: 0 [s or PLC cycles] LEVEL3
597110-01

January 2015 4.11 List of machine parameters 717


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlcDeferCutoff
PLC output with delayed switch-off;
Defines a physical PLC output that does not switch off immediately when the machine is switched
off, but only after an adjustable delay.
[Key name of the output with delayed switch-off]
port Number of the physical output port on the PL Change at –
any time
103601 Format: Numerical value
(NOTHING)
(optional parameter) Input: 0 to 31
LEVEL2
597110-02
time Delay time during switch-off Change at –
any time
103602 Format: Numerical value
(NOTHING)
(optional parameter) Input: 0.100000000 to 5.000000000 [s]
LEVEL2
597110-02
CfgPlcFastInput
Configuration of fast PLC inputs;
Specifies the numbers, operands and edge detection. Keep in mind that the time between two edges
must be longer than the time from 'MP_CfgCycleTimes/ipoCycle'.
number Numbers of fast PLC inputs Program 2357
run is
103701 Format: List [0 to 4]
locked
MP4130 Input: 0 to 9999 (RUN)
Default: 0 LEVEL3
597110-01
significance Activation criteria for fast PLC inputs Program 2358
run is
103702 Format: List [0 to 4] with selection menu
locked
MP4131 Input: (RUN)
 lowActive LEVEL3
Activate at LOW level
 highActive
Activate at HIGH level
 allEdges
Activate at both levels
 disabled
Switched off
operand PLC operand for fast PLC inputs Program 2358
run is
103703 Name or number of the operand that is set
locked
through the fast PLC input.
(optional parameter) (RUN)
Format: List [0 to 4]
LEVEL3
Input: String, max. 24 characters

718 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlcTechnology
Reserved PLC markers for technology data—do not define;
Definition of a range of max. 16 markers with which technology-specific events of the interpolator can
be used. (optional)
operand PLC operand for fast IPO event marker Program –
run is
103800 Defines a structured PLC operand with which the
locked
max. 16 IPO event markers for grinding can be
(reserved parameter) (RUN)
used, for example PP_GrindIpoEvents.
LEVEL3
Format: String
Input: PLC operand, max. 24 characters
CfgPlcMStrobe
Settings for M functions;
Output of M strobe from NC to PLC: Specifies the treatment of the M function during NC program
run and the mapping to the PLC markers.
[Key names with the name or numerical code of the M strobe]
e.g. Cycle13, FN19, FN29, M3, M4, M5, M300, TouchProbe, etc.
min Number of the first M Function Shut down 2383
control
103901 First M function code described in the parameter
(RESET)
object. The properties described in this parameter
object apply for the specified M functions. LEVEL3
Format: Numerical value
Input: 0 to 9999
Default: 0
max Number of the highest M function Shut down 2383
control
103902 Code of the last (greatest) M function described in
(RESET)
the parameter object.
(optional parameter)
No input: The properties of the parameter object LEVEL3
apply only to the M function defined in MP_min.
Format: Numerical value
Input: 0 to 9999
Default: 0

January 2015 4.11 List of machine parameters 719


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
signal Symbolic name or number of the PLC marker Shut down 2384
that is set when the function is decoded control
103903
(RESET)
If you have not entered a value in the parameter
(optional parameter)
MP_acknowledge, resetting this marker means LEVEL3
an acknowledgment of the strobe.
No input:
The data connected with the output of the strobe
are saved without synchronization with the PLC
program and the output is immediately
acknowledged.
Format: String
Input: PLC operand, max. 80 characters
acknowledge Symbolic name or number of the PLC marker Shut down 2384
that is set for acknowledging the strobe control
103904
(RESET)
No input:
(optional parameter)
The strobe is reset with the PLC marker entered LEVEL3
in MP_signal.
597110-02
Format: String
Input: PLC operand, max. 80 characters
code Symbolic name or number of the PLC word Shut down 2385
marker for the M code control
103905
(RESET)
Name of the PLC word marker in which the M
(optional parameter)
code is passed to the PLC. LEVEL3
Example: DG_M_Function_M10
Format: String
Input: PLC operand, max. 80 characters
data Symbolic name or number of the PLC word Shut down 2385
marker for additional data control
103906
(RESET)
Symbolic name or number of the PLC word
marker in which the additional data of the M LEVEL3
function is transmitted to the PLC.
The field size determined from the symbol defines
up to how many data can be saved in the
programmed sequence. If an absolute number is
given, only one value is saved. If no value is
entered, no data can be passed to the PLC.
Format: String
Input: PLC operand, max. 80 characters

720 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
revoke Numbers of M functions whose effect will be Shut down 2385
canceled by the output of the strobe. control
103907
(RESET)
In the list, enter the numbers of the functions
whose effect will be canceled when this code is LEVEL3
output.
597110-02
Example: Configuration of M5 function
When the M5 function is called, the effect of the
M3 and M4 functions is canceled. In this example,
you would enter the key names of the functions
M3 and M4.
The parameter is effective for implementing the
state of the function in the status display and
during block scan.
Format: List [0 to 10]
Input: 0 to 9999
split The M function is split into the specified M Shut down 2386
functions control
103908
(RESET)
The currently active M function can be split into
(optional parameter)
the two specified M functions. You can cancel it in LEVEL3
part by canceling one of the specified M
597110-02
functions. The currently active M function is split
up if part of it is canceled by the MP_revoke
parameter.
Example: M13 = Spindle ON clockwise (M3) +
coolant ON (M8)
If function M13 is active and an M5 is collected
during the block scan, for example, the function
M3 contained in M13 is canceled. Only function
M8 remains active. In this case, enter 3 and 8 in
the parameter.
Format: List [2] with numerical values
Input: Numbers of M functions

January 2015 4.11 List of machine parameters 721


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
track Automatic tracking of the active M functions Shut down 2386
control
103914 Normally the PLC program has to use the module
(RESET)
9088 to track the status of the active M function.
(optional parameter)
Set this parameter to TRUE if the PLC run-time LEVEL3
system is to implement the status automatically.
597110-03
Format: Selection menu
Input:
 TRUE
The status of the active M function is tracked
automatically, depending on the
MP_trackMState parameter (CfgPlcOptions).
 FALSE
The status of the active M function must be
tracked by calling Module 9088.
singular Function is output in a separate strobe Shut down 2387
control
103909 Use MP_singular to prevent the function from
(RESET)
being output in a strobe together with other
(optional parameter)
functions. If several M, S, T functions are LEVEL3
programmed in an NC block, the strobes can be
set in parallel by the NC. Use this parameter to
exclude the current function from this parallel
collection and simultaneous transmission in one
strobe.
Format: Selection menu
Input:
 TRUE
Function is output in a separate strobe.
Combined output is prevented.
 FALSE
Function can be combined with other functions
Default: TRUE
blockEnd M function output at block end or block start Shut down 2387
control
103910 Format: Selection menu
(RESET)
Input: TRUE or FALSE
LEVEL3
 TRUE
Function is executed at block end.
 FALSE
Function is executed at beginning of block.
Default: FALSE

722 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
blockSearch Code output also during block scan Shut down 2387
control
103911 Format: Selection menu
(RESET)
Input: TRUE or FALSE
LEVEL3
 TRUE
Function is also output during the block scan
 FALSE
Function is not output during the block scan.
The function is collected and restored.
Default: FALSE
sync Synchronization of function with the NC Shut down 2387
control
103912 Format: Selection menu
(RESET)
Input:
LEVEL3
 SYNC_EXEC
The function is synchronized with program run.
The output of movement by the interpolator is
stopped; then the function is executed.
Please note:
After this function has been executed, the look-
ahead calculation continues using the position
values that were active before execution of the
function. This setting is not suitable, for
example, for M functions executing PLC
positioning movements!
 SYNC_CALC
The function is synchronized with program
calculation. The interpretation of the NC
program is stopped and the path is calculated
internally; then the function is executed. The M
function is completely executed. After
successful execution has been acknowledged,
calculation continues with new position values.
 ASYNC
The function is output without synchronization.
macro Calling an NC macro with an M function Shut down 2389
control
103913 This makes it possible to indicate and run an NC
(RESET)
subprogram instead of outputting the M function.
(optional parameter)
LEVEL3
Format: String
Input: Path/name of the macro
Max. 80 characters
noNested Nested execution of M-function macros Shut down 2389
control
103916 Format: Selection menu
(RESET)
(optional parameter) Input:
LEVEL3
 FALSE
The M-function macro is run.
 TRUE
The M function is not run as a macro but is
transferred to the PLC.

January 2015 4.11 List of machine parameters 723


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlcSStrobe
Settings for the S function of a spindle
Output of S strobe from NC to PLC: Specifies the treatment of the S function during NC program run
and the mapping to the PLC markers.
[Key name with the number or name of the spindle]
e.g. S, etc.
type Type of S strobe Shut down 2398
control
104017 If the control supports more than one type of S
(RESET)
strobe for one NC channel, you have to indicate
(optional parameter)
the type of S strobe applicable for the config LEVEL3
object CfgPlcSStrobes.
597110-01
If the control supports a single S strobe for an NC
channel, the parameter must not be defined or a
value of 0 must be entered.
TNC 640:
Do not define the parameter, or enter 0.
Format: Numerical value
Input: 0 to 2
Default: 0
condition Condition for sending the strobe to the PLC Shut down 2397
control
104001 Format: Selection menu
(RESET)
(optional parameter) Input:
LEVEL3
 COND_ALWAYS
Strobe is output with every programmed S code 597110-02
 COND_ST
Strobe is output only if the spindle speed
changes
 COND_GP
Strobe is output only if gear range changes. If
the parameter is missing from the
configuration, the strobe is always output.
signal Symbolic name or number of the PLC marker Shut down 2397
that is set when the function is decoded control
104002
(RESET)
If you have not entered a value in the parameter
(optional parameter)
MP_acknowledge, resetting this marker means LEVEL3
an acknowledgment of the strobe.
No input:
The data connected with the output of the strobe
are saved without synchronization with the PLC
program and the output is immediately
acknowledged.
Format: String
Input: PLC operand, max. 80 characters

724 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
acknowledge Symbolic name or number of the PLC marker Shut down 2397
that is set for acknowledging the strobe control
104003
(RESET)
No input:
(optional parameter)
The strobe is reset with the PLC marker entered LEVEL3
in MP_signal.
597110-02
Format: String
Input: PLC operand, max. 80 characters
spindleSpeed Symbolic name or number of the PLC word for Shut down 2398
transmitting the spindle speed control
104004
(RESET)
Name of the PLC word in which the spindle speed
(optional parameter)
is transmitted to the PLC. LEVEL3
No input: 597110-01
The spindle speed cannot be read as a numerical
value.
Format: String
Input: PLC operand, max. 80 characters
badSpeed Symbolic name or number of the PLC marker Shut down 2399
for impermissible spindle speeds control
104005
(RESET)
Name of the PLC marker that is set if the spindle
(optional parameter)
speed is outside the permissible range. LEVEL3
No input: 597110-01
The spindle speed is not monitored.
Format: String
Input: PLC operand, max. 80 characters
cuttingSpeed Symbolic name or number of the PLC word for Shut down 2399
transmitting the constant cutting speed control
104018
(RESET)
Name of the PLC word in which the constant
(optional parameter)
surface speed is transmitted to the PLC. LEVEL3
No input: 597110-01
The constant surface speed cannot be read as a
numerical value.
Format: String
Input: PLC operand, max. 80 characters

January 2015 4.11 List of machine parameters 725


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
spindleMode Symbolic name or the number of a word Shut down 2399
marker control
104006
(RESET)
Name or number of the word marker in which the
(optional parameter)
spindle mode of rotation is transmitted to the LEVEL3
PLC:
597110-01
spindleMode = 0:
Constant speed (VCONST OFF)
spindleMode = 1:
Constant cutting speed (VCONST ON)
Depending on the value of the word marker, the
PLC evaluates either the content of
MP_spindleSpeed or MP_cuttingSpeed.
No input:
The spindle mode of rotation cannot be read as a
numerical value.
Format: String
Input: PLC operand, max. 80 characters
gearCode Symbolic name or number of the PLC word for Shut down 2404
the gear range control
104007
(RESET)
Name of the PLC word in which the gear range is
(optional parameter)
transmitted to the PLC. LEVEL3
No input: 597110-01
No gear range is transmitted
Format: String
Input: PLC operand, max. 80 characters
gearSpeed0 Key names of parameter sets for gear ranges Shut down 2404
(operating mode 0) control
104008
(RESET)
Format: List [0 to 99]
(optional parameter)
LEVEL3
Input: Key name of parameter sets
(operating mode 0) 597110-02
gearSpeed1 Key names of parameter sets for gear ranges Shut down 2404
(operating mode 1) control
104009
(RESET)
Format: List [0 to 9]
(optional parameter)
LEVEL3
Input: Key name of parameter sets
(operating mode 1) 597110-02

726 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
gearStop Switch off the spindle when the gear range is Shut down 2404
changed control
104010
(RESET)
Format: Selection menu
MP3030, bit 1
LEVEL3
Input:
(optional parameter)
597110-03
 TRUE
If a strobe for changing the gear range is output,
the control automatically switches the spindle
off.
 FALSE
If a strobe for changing the gear range is output,
the spindle is not switched off.
sCode Symbolic name or number of the PLC word for Shut down 2407
the coded output of the spindle speed control
104011
(RESET)
Name of the PLC word in which the S code of the
(optional parameter)
spindle speed is transmitted to the PLC LEVEL3
Format: String 597110-03
Input: PLC operand, max. 80 characters
revoke Numbers of functions whose effect will be Shut down 2400
canceled by the output of the strobe control
104012
(RESET)
In the list, enter the numbers of the functions
(optional parameter)
whose effect will be canceled when this code is LEVEL3
output.
597110-02
The parameter is effective for implementing the
state of the function in the status display and
during block scan.
Format: List [0 to 19]
Input: 0 to 9999
blockSearch Function output also during block scan Shut down 2400
control
104014 Format: Selection menu
(RESET)
Input:
LEVEL3
 TRUE
Function is also output during the block scan. 597110-02
 FALSE
Function is not output during the block scan.
The function is collected and restored.
Default: FALSE

January 2015 4.11 List of machine parameters 727


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
sync Synchronization of function with the NC Shut down 2406
control
104015 Format: Selection menu
(RESET)
Input:
LEVEL3
 SYNC_EXEC
The function is synchronized with program run.
The output of movement by the interpolator is
stopped; then the function is executed.
Please note:
After this function has been executed, the look-
ahead calculation continues using the position
values that were active before execution of the
function. This setting is not suitable for
functions executing PLC positioning
movements, for example!
 SYNC_CALC
The function is synchronized with program
calculation. The interpretation of the NC
program is stopped and the path is calculated
internally; then the function is executed. The S
function is completely executed. After
successful execution has been acknowledged,
calculation continues with new position values.
 ASYNC
The function is output without synchronization.
Default: SYNC_EXEC

728 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
syncGear Synchronization of function with the NC if the Shut down 2406
gear range changes control
104016
(RESET)
If the parameter is missing, synchronization is as
(optional parameter)
given by the parameter MP_sync. LEVEL3
Format: Selection menu
Input:
 SYNC_EXEC
The function is synchronized with program run.
The output of movement by the interpolator is
stopped; then the function is executed.
Please note:
After this function has been executed, the look-
ahead calculation continues using the position
values that were active before execution of the
function. This setting is not suitable for
functions executing PLC positioning
movements, for example!
 SYNC_CALC
The function is synchronized with program
calculation. The interpretation of the NC
program is stopped and the path is calculated
internally; then the function is executed. The S
function is completely executed. After
successful execution has been acknowledged,
calculation continues with new position values.
 ASYNC
The function is output without synchronization.
CfgPlcTStrobe
Settings of the T functions (ToolCall and ToolDef);
Output of the T strobe from the NC to the PLC:
Specifies the treatment of the T function during NC program run, and the mapping to the PLC marker.
[Key name of the T strobe]
e.g. ToolCall, ToolDef, etc.
type Type of T function Shut down 2411
control
104101 Format: Selection menu
(RESET)
Input:
LEVEL3
 T0
Remove tool from spindle 597110-01
 T1
Insert tool in spindle
 T2
Prepare the next tool change

January 2015 4.11 List of machine parameters 729


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
condition Condition for sending the strobe to the PLC Shut down 2411
control
104102 Format: Selection menu
(RESET)
(optional parameter) Input:
LEVEL3
 COND_ALWAYS
Strobe is output with every programmed T code 597110-02
 COND_ST
Strobe is output only if tool number changes
 COND_GP
Strobe is output only if pocket number changes.
If the parameter is missing from the
configuration, the strobe is always output.
Default: COND_ST
signal Symbolic name or number of the PLC marker Shut down 2412
that is set when the function is decoded control
104103
(RESET)
If you have not entered a value in the parameter
(optional parameter)
MP_acknowledge, resetting this marker means LEVEL3
an acknowledgment of the strobe.
No input:
The data connected with the output of the strobe
are saved without synchronization with the PLC
program and the output is immediately
acknowledged.
Format: String
Input: PLC operand, max. 80 characters
acknowledge Symbolic name or number of the PLC marker Shut down 2412
that is set for acknowledging the strobe control
104104
(RESET)
No input:
(optional parameter)
The strobe is reset with the PLC marker entered LEVEL3
in MP_signal.
597110-02
Format: String
Input: PLC operand, max. 80 characters
toolNumber Symbolic name or number of the PLC word for Shut down 2412
transmitting the tool number control
104105
(RESET)
No input:
(optional parameter)
The tool number cannot be read as a numerical LEVEL3
value.
597110-01
Format: String
Input: PLC operand, max. 80 characters
toolIndex Symbolic name or number of the PLC word for Shut down 2413
transmitting the tool index control
104106
(RESET)
No input:
(optional parameter)
The index cannot be read as a numerical value. LEVEL3
Input: String, max. 24 characters 597110-01

730 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
toolMagazine Symbolic name or number of the PLC word for Shut down 2413
transmitting the magazine number of the tool control
104107
(RESET)
No input:
(optional parameter)
The magazine number cannot be read as a LEVEL3
numerical value.
597110-01
Format: String
Input: PLC operand, max. 80 characters
pocketNumber Symbolic name or number of the PLC word for Shut down 2413
transmitting the pocket number of the tool control
104108
(RESET)
No input:
(optional parameter)
The pocket number cannot be read as a numerical LEVEL3
value.
597110-01
Format: String
Input: PLC operand, max. 80 characters
unloadTool Symbolic name or number of the PLC marker Shut down 2414
that is set during decoding if no tool is loaded control
104109
(RESET)
The definition of this marker is not necessary, if
(optional parameter)
the T0 and T1 strobes are otherwise LEVEL3
distinguished.
597110-03
Format: String
Input: PLC operand, max. 80 characters
externalTool Symbolic name or number of the PLC marker Shut down 2414
that is set during decoding if a tool is loaded control
104110
that is not in the magazine (RESET)
(optional parameter)
The definition of the marker is not necessary if the LEVEL3
magazine and pocket numbers are evaluated
597110-03
elsewhere or are irrelevant.
Format: String
Input: PLC operand, max. 80 characters
internalTool Symbolic name or number of the PLC marker Shut down 2415
that is set during decoding if a tool is loaded control
104111
that is in the magazine (RESET)
The definition of the marker is not necessary if the LEVEL3
magazine and pocket numbers are evaluated
597110-03
elsewhere or are irrelevant.
Format: String
Input: PLC operand, max. 80 characters

January 2015 4.11 List of machine parameters 731


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
specialTool Symbolic name or number of the PLC marker Shut down 2415
that is set during decoding if a special tool is control
104112
loaded (RESET)
(optional parameter)
The definition of this marker is not necessary if no LEVEL3
special tools are used.
597110-03
Format: String
Input: PLC operand, max. 80 characters
machiningMagazine Symbolic name or number of the PLC word for Shut down 2415
transmitting the magazine number of the pocket control
104117
selected for machining (RESET)
(optional parameter)
The magazine number of the pocket selected for LEVEL3
machining is copied to this word marker
597110-08
additionally during decoding. The magazine
number of a tool spindle is always 0.
No input:
The magazine number cannot be read as a
numerical value.
Format: String
Input: PLC operand, max. 80 characters
machiningPocket Symbolic name or number of the PLC word for Shut down 2415
transmitting the pocket number of the pocket control
104118
selected for machining (RESET)
(optional parameter)
The pocket number of the pocket selected for LEVEL3
machining is copied additionally to this word
597110-08
marker (e.g. pocket number of the tool, which has
been selected for machining, in a turret—for a tool
spindle, this is the spindle number).
No input:
The pocket number cannot be read as a numerical
value.
Format: String
Input: PLC operand, max. 80 characters
revoke Numbers of functions whose effect will be Shut down 2416
canceled by the output of the strobe control
104113
(RESET)
In the list, enter the numbers of the functions
(optional parameter)
whose effect will be canceled when this code is LEVEL3
output.
597110-02
The parameter is effective for implementing the
state of the function in the status display and
during block scan.
Format: List [0 to 19]
Input: 0 to 9999

732 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
blockSearch Code output also during block scan Shut down 2417
control
104115 Format: Selection menu
(RESET)
Input:
LEVEL3
 TRUE
Function is also output during the block scan. 597110-02
 FALSE
Function is not output during the block scan.
The function is collected and restored.
Default: FALSE
sync Synchronization of function with the NC Shut down 2418
control
104116 Format: Selection menu
(RESET)
Input:
LEVEL3
 SYNC_EXEC
The function is synchronized with program run.
The output of movement by the interpolator is
stopped; then the function is executed.
Please note:
After this function has been executed, the look-
ahead calculation continues using the position
values that were active before execution of the
function. This setting is not suitable for
functions executing PLC positioning
movements, for example!
 SYNC_CALC
The function is synchronized with program
calculation. The interpretation of the NC
program is stopped and the path is calculated
internally; then the function is executed. The S
function is completely executed. After
successful execution has been acknowledged,
calculation continues with new position values.
 ASYNC
The function is output without synchronization.
Default: SYNC_EXEC

January 2015 4.11 List of machine parameters 733


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlcStrobeAlias
Conversion to M functions;
Reproduction of control-dependent functions through the output of M functions to the PLC program.
[Key names of the converted functions (alias strobes)]
e.g. Cycle13, FN19, FN29, TouchProbe, etc.
type Type of alias strobe Shut down 2421
control
104201 Format: Selection menu
(RESET)
Input:
LEVEL3
 FN19
Two values are transmitted synchronously from 597110-01
the NC program to the PLC.
 FN29
Up to eight values are transmitted
asynchronously from the NC program to the
PLC.
 CYCLE13
Define spindle position for M19
 TCHPROBE
Call the measuring cycles.
 OEMPROBEON
Activate the OEM touch probe via the PLC
 OEMPROBEOFF
Deactivate the OEM touch probe via the PLC
 GFUNCTION
G functions are transmitted to the PLC. The G
functions, including the function parameters,
are transferred in an M strobe.
Default: FN19
mCode Number of the M function Shut down 2421
control
104202 Number of the M function for which the control-
(RESET)
dependent function is mapped.
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 9999
Default: 0

734 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
mOffset Transferred M code is offset Shut down 2422
control
104203 Format: Selection menu
(RESET)
Input:
LEVEL3
 TRUE
The first numerical value transferred is used as 597110-01
an offset and entered in the parameter MP_min
of the associated M function. The remaining
numerical values are written to the double word
entered in MP_data.
 FALSE
No offset is used. The TNC 640 always issues
the M function given under MP_min. Both
transferred numerical values are written to the
array of double words entered in MP_data.
Default: FALSE
CfgToolChange
Definition of tool change sequences;
A tool change sequence is defined as a reference to sequences of strobe messages for a tool call.
The output and order of T strobes can be specified on the TNC 640 through scripts.
sequT0Text Loading an external tool Shut down 2237
control
118401 Format: Selection menu with scripts from
(RESET)
CfgOemScript
(optional parameter)
LEVEL3
Input: Key name of a tool change
sequence
sequT0Tint Loading an internal tool Shut down 2237
control
118402 Format: Selection menu with scripts from
(RESET)
CfgOemScript
(optional parameter)
LEVEL3
Input: Key name of a tool change
sequence
sequT0TintS Loading an internal tool that requires special Shut down 2237
handling control
118403
(RESET)
Format: Selection menu with scripts from
(optional parameter)
CfgOemScript LEVEL3
Input: Key name of a tool change
sequence
sequTextT0 Unloading an external tool Shut down 2237
control
118404 Format: Selection menu with scripts from
(RESET)
CfgOemScript
(optional parameter)
LEVEL3
Input: Key name of a tool change
sequence

January 2015 4.11 List of machine parameters 735


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
sequTextText Unloading and loading an external tool Shut down 2237
control
118405 Format: Selection menu with scripts from
(RESET)
CfgOemScript
(optional parameter)
LEVEL3
Input: Key name of a tool change
sequence
sequTextTint Unloading an external tool and loading an Shut down 2237
internal tool control
118406
(RESET)
Format: Selection menu with scripts from
(optional parameter)
CfgOemScript LEVEL3
Input: Key name of a tool change
sequence
sequTextTintS Unloading an external tool and loading an Shut down 2237
internal tool that requires special handling control
118407
(RESET)
Format: Selection menu with scripts from
(optional parameter)
CfgOemScript LEVEL3
Input: Key name of a tool change
sequence
sequTintT0 Unloading an internal tool Shut down 2237
control
118408 Format: Selection menu with scripts from
(RESET)
CfgOemScript
(optional parameter)
LEVEL3
Input: Key name of a tool change
sequence
sequTintT0S Unloading an internal tool that requires Shut down 2237
special handling control
118409
(RESET)
Format: Selection menu with scripts from
(optional parameter)
CfgOemScript LEVEL3
Input: Key name of a tool change
sequence
sequTintText Unloading an internal and loading an external Shut down 2237
tool control
118410
(RESET)
Format: Selection menu with scripts from
(optional parameter)
CfgOemScript LEVEL3
Input: Key name of a tool change
sequence
sequTintTextS Unloading an internal tool that requires Shut down 2237
special handling and loading an external tool control
118411
(RESET)
Format: Selection menu with scripts from
(optional parameter)
CfgOemScript LEVEL3
Input: Key name of a tool change
sequence

736 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
sequTintTint Unloading an internal and loading an external Shut down 2237
tool. Neither has a fixed pocket in the tool control
118412
magazine (RESET)
(optional parameter)
Format: Selection menu with scripts from LEVEL3
CfgOemScript
Input: Key name of a tool change
sequence
sequTintTintS Unloading an internal and loading another Shut down 2237
internal tool. Neither has a fixed pocket in the control
118413
tool magazine, but at least one requires (RESET)
(optional parameter) special handling
LEVEL3
Format: Selection menu with scripts from
CfgOemScript
Input: Key name of a tool change
sequence
sequTintTintF Unloading and loading another internal tool. Shut down 2237
At least one tool has a fixed pocket in the tool control
118414
magazine (RESET)
(optional parameter)
Format: Selection menu with scripts from LEVEL3
CfgOemScript
Input: Key name of a tool change
sequence
sequTintTintSF Unloading an internal and loading another Shut down 2237
internal tool. At least one tool has a fixed control
118415
pocket in the tool magazine, and at least one (RESET)
(optional parameter) tool requires special handling
LEVEL3
Format: Selection menu with scripts from
CfgOemScript
Input: Key name of a tool change
sequence
sequText (typical for lathes with turrets) Shut down 2237
Tool-change sequence for calling an external control
118416
tool without loading it in the spindle (RESET)
(optional parameter)
Format: Selection menu with scripts from LEVEL3
CfgOemScript
Input: Key name of a tool change
sequence
sequTint (typical for lathes with turrets) Shut down 2237
Tool change sequence for calling an internal control
118417
tool without loading it into the spindle (RESET)
(optional parameter)
Format: Selection menu with scripts from LEVEL3
CfgOemScript
Input: Key name of a tool change
sequence

January 2015 4.11 List of machine parameters 737


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgToolChangeExt
Definition of expanded tool change sequences;
Definition of special tool change sequences that affect the entered magazines.
Parameters that concern external tools or the tool 0 are evaluated only if both magazine numbers are
the same.
[Arbitrary key name for expanded tool change sequence]
loadFrom Number of the tool magazine from which the Shut down 2237
tool to be loaded is to be taken control
118501
(RESET)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 1 to 9999
unloadTo Number of the tool magazine in which a Shut down 2237
pocket is reserved for the tool to be unloaded control
118502
(RESET)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 1 to 9999
sequT0Tint (see CfgToolChange) Shut down 2237
control
118503
(RESET)
(optional parameter)
LEVEL3
sequT0TintS (see CfgToolChange) Shut down 2237
control
118504
(RESET)
(optional parameter)
LEVEL3
sequTextTint (see CfgToolChange) Shut down 2237
control
118505
(RESET)
(optional parameter)
LEVEL3
sequTextTintS (see CfgToolChange) Shut down 2237
control
118506
(RESET)
LEVEL3
sequTintT0 (see CfgToolChange) Shut down 2237
control
118507
(RESET)
(optional parameter)
LEVEL3
sequTintT0S (see CfgToolChange) Shut down 2237
control
118508
(RESET)
(optional parameter)
LEVEL3
sequTintText (see CfgToolChange) Shut down 2237
control
118509
(RESET)
(optional parameter)
LEVEL3

738 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
sequTintTextS (see CfgToolChange) Shut down 2237
control
118510
(RESET)
(optional parameter)
LEVEL3
sequTintTint (see CfgToolChange) Shut down 2237
control
118511
(RESET)
(optional parameter)
LEVEL3
sequTintTintS (see CfgToolChange) Shut down 2237
control
118512
(RESET)
(optional parameter)
LEVEL3
sequTintTintF (see CfgToolChange) Shut down 2237
control
118513
(RESET)
(optional parameter)
LEVEL3
squTintTintSF (see CfgToolChange) Shut down 2237
control
118514
(RESET)
(optional parameter)
LEVEL3
sequTint (see CfgToolChange) Shut down 2237
control
118515
(RESET)
(optional parameter)
LEVEL3

January 2015 4.11 List of machine parameters 739


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgSimPosition
Definition of the simulated tool change position during block scan;
Specifies the simulated tool-change position for TOOL CALL during block scan.
[Key name of the T strobe]
 value:
List of machine axes. The index corresponds to the logical axis number from MP_axisList
axis Key name for the axis Program 1011
run is
113501 Format: Selection menu
locked
(optional parameter) Input: Key name from CfgAxis (RUN)
LEVEL3
597110-03
position Position value of the axis Program 1011
run is
113501 Enter the absolute position value with respect to
locked
the machine datum (REF system). The TNC 640
(optional parameter) (RUN)
assumes that, after the PLC strobe, the listed
axes are located at the given positions and the LEVEL3
non-listed axes are at the same positions as
597110-03
before the PLC strobe.
Format: Numerical value
Input: Position value [mm]
With max. 9 decimal places

740 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlcOverrideDev
Configuration of sources for override values;
Define the hardware input of the potentiometers and the evaluation.
[Key name of override device]
e.g. potentiometerF, potentiometerS, etc.
source Selection of configurable source for override Change at 2171
values any time
104301
(NOTHING)
Format: Selection menu
LEVEL3
Input:
597110-01
 OVR1
Potentiometer 1
Feed-rate override input F on the rear side of the
TE.
 OVR2
Potentiometer 2
Spindle-speed override input S on the rear side
of the TE.
 OVR3
Potentiometer 3
Rapid-traverse override input E on the rear side
of the TE.
 KEY
Group of keys
 PLC
The PLC program sets the value as API signal
from the spindle or the NC channel.
If no value is transmitted by the PLC program,
the PLC tries to read the override source from
the IOC file.
Default: OVR1
device Device (operating panel or handwheel) Change at 2171
any time
104305 Defines the operating panel or handwheel on
(NOTHING)
which the override source is located.
(optional parameter)
LEVEL3
Format: Selection menu
597110-06
Input:
 MOP1 to MOP4
Machine operating panel 1 to 4
 HR1:
Active handwheel
Default: No value

January 2015 4.11 List of machine parameters 741


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
mode Evaluation of override values Change at 2172
any time
104302 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 DISCRETE
The key inputs or potentiometer settings are 597110-01
converted in up to 64 discrete override values
from MP_values.
 LINEAR
The input from the override device is
interpolated linearly between the minimum and
maximum override value.
 CURVE
The input values of the override device are
converted using the curve defined in
MP_values.
You define the curve with up to 64 interpolation
points in MP_values. The input values of the
override device are again interpolated linearly
above the last interpolation point specified. If no
curve is defined in MP_values, the control uses
a standard curve.
Default: DISCRETE
values Discrete values or interpolation points for Change at 2172
curve any time
104303
(NOTHING)
The mode of operation of the parameter depends
(optional parameter)
on the setting in MP_mode: LEVEL3
 MP_mode = DISCRETE: 597110-01
Enter override values for a maximum of 64 key
inputs or potentiometer settings.
 MP_mode = LINEAR:
MP_values has no function
 MP_mode = CURVE:
Define a curve with up to 64 interpolation
points. The override values are taken from the
curve. Linear interpolation is again effective
above the last interpolation point specified.
Format: Array [index 0 to 63]
Input: 0.00 to 100.00 [%]

742 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgPlc OverrideS
Configuration of the spindle override
[Key name of spindle]
e.g. S, spindle, etc.
minimal Minimum value for override Change at 2173
any time
104401 Format: Numerical value
(NOTHING)
Input: 0 to 100 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 0
maximal Maximum value for override Change at 2173
any time
104402 Format: Numerical value
(NOTHING)
Input: 0 to 200 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 150
source Source for override values Change at 2174
any time
104403 Format: List [0 to 3]
(NOTHING)
Input: Device name from
LEVEL3
CfgOverrideDev
597110-01

January 2015 4.11 List of machine parameters 743


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgOemBool
User parameter with Boolean data (logical values)
[Key name of the user status value]
The key names of these objects are arbitrary and are defined by the OEM.
If the data is to be copied into the PLC run time image, the key names must match the PLC marker
names, e.g. M4017 (for API 1.0) or NP_MG_Doors_Inactive (for API 3.0), etc.
value List of user status values PLC/Pgm 2555
(Boolean) run is
104501
locked
Format: List [0 ... 99]
(optional parameter)
LEVEL3
Input: TRUE or FALSE
597110-01
Default: FALSE
ignorePlc Do not copy data object into the PLC image PLC/Pgm 2555
run is
104502 Format: Selection menu
locked
(optional parameter) Input:
LEVEL3
 TRUE
The parameter value is not copied to the PLC 597110-01
run-time system
 FALSE
The parameter value is copied to the PLC run-
time system
CfgOemInt
User parameter with integer data (whole number)
[Key name of the user integer value]
The key names of these objects are arbitrary and are defined by the OEM.
If the data is to be copied into the PLC run time image, the key names must match the PLC word
names, e.g. W960, W976 (for API 1.0) or NP_DG_Lubrication_Time (for API 3.0), etc.
value List of user whole-number values (integers) PLC/Pgm 2555
run is
104601 Format: List [0 to 99]
locked
(optional parameter) Input: –2 147 483 648 to +2 147 483 647
LEVEL3
597110-01
ignorePlc Do not copy data object into the PLC image PLC/Pgm 2555
run is
104602 Format: Selection menu
locked
(optional parameter) Input:
LEVEL3
 TRUE
The parameter value is not copied to the PLC 597110-01
run-time system
 FALSE
The parameter value is copied to the PLC run-
time system

744 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgOemString
User parameter with text data (strings)
[Key name of the user string]
The key names of these objects are arbitrary and are defined by the OEM.
The data of the user strings is not available in the PLC run-time system, but can be used in user cycles,
for example.
value List of user text parameters NOTHING 2555
(strings)
104901 LEVEL3
Format: List [0 to 9]
(optional parameter) 597110-01
Input: String, max. 100 characters
ignorePlc Do not copy data object into the PLC image NOTHING 2555
104902 Format: Selection menu LEVEL3
(optional parameter) Input: 597110-01
 TRUE
The parameter value is not copied to the PLC
run-time system
 FALSE
The parameter value is copied to the PLC run-
time system
CfgOemPosition
User parameter with fixed-point data (position value)
[Key name of the user fixed-point value]
The key names of these objects are arbitrary and are defined by the OEM.
If the data is to be copied into the PLC run time image, the key names must match the PLC double
word names, e.g. D768 (for API 1.0) or NP_DG_TOOLCH_Pos_Spindle (for API 3.0), etc.
value List of user fixed-point values PLC/Pgm 2555
(position) run is
104701
locked
Format: List [1 to 100]
(optional parameter)
LEVEL3
Input: –30 000 to +30 000
max. 4 decimal places
ignorePlc Do not copy data object into the PLC image PLC/Pgm 2555
run is
104702 Format: Selection menu
locked
(optional parameter) Input:
LEVEL3
 TRUE
The parameter value is not copied to the PLC
run-time system
 FALSE
The parameter value is copied to the PLC run-
time system

January 2015 4.11 List of machine parameters 745


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
PythonSettings
Settings for software option 46 (Python OEM process)
SoftkeyOverlay
Settings for the superimposition of soft keys through Python
CfgSoftkeyOverlay
Soft-key superimposition;
Defines a soft-key superimposition through Python. Activation of a soft key with the specified key
name triggers the execution of the saved Python script. However, the soft key has to be released for
superimposition.
[Keyname = Identifier of the soft key that is to be superimposed]
The TNC 640 supports superimposition of the following soft keys:
 SK_NC_TOOL_TABLE TOOL TABLE soft key
 SK_NC_TOOL_TABLE_ATC TOOL MANAGEMENT soft key in the pocket table
 SK_NC_TOOL_TABLE_TOOL TOOL MANAGEMENT soft key in the tool table
 SK_NC_TOOL_TABLE_USAGE TOOL MANAGEMENT in the Program Run operating mode
path Path/name of the Python script Change at 2249
any time
120401 When the soft key entered in the key name is
(NOTHING)
pressed, the given Python script is started.
LEVEL3
Format: String
597110-05
Input: Path/name of the Python script
Max. 260 characters
Default: %SYS%\Python\tool\Client.py
jobName Name of the Python application Change at 2249
any time
120402 Specifies the name of the Python application. You
(NOTHING)
can choose any name you want. The application
will be displayed with this name, e.g. in the PLC LEVEL3
process monitor.
597110-05
Format: String
Input: Max. 17 characters
Default: tool_pocket, tool_tool or
tool_usage
parameter Call parameters for the Python script Change at 2249
any time
120403 Specifies expanded call parameters for the Python
(NOTHING)
script.
LEVEL3
Format: String
597110-05
Input: Max. 127 characters
Default: pocket, tool or last

746 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
memLimit Memory limit for the Python application Change at 2250
any time
120404 Specifies the maximum memory available for the
(NOTHING)
Python application to be started.
LEVEL3
Format: Numerical value
597110-05
Input: Memory limit [MB]
Default: 15
runControl Process monitoring Change at 2251
any time
120405 Specifies the monitoring of the Python process
(NOTHING)
when a superimposed soft key is pressed.
LEVEL3
Format: Selection menu
597110-05
Input:
 None
Every actuation of the soft key starts a new
process of the script.
 Restart
A running process is ended and a new one
started.
 Once
If a process of the script is already running, no
further process is started.
Default: Once
active Soft-key superimposition activated/ Change at 2251
deactivated any time
120406
(NOTHING)
Setting this parameter makes it possible to
(optional parameter)
overwrite or adapt settings from default soft-key LEVEL3
superimpositions with the same key names. The
597110-09
parameter activates or deactivates a soft key
superimposition. If the superimposition is
deactivated, it has no effect.
Format: Selection menu
Input:
 TRUE
Soft-key superimposition activated.
 FALSE
Soft-key superimposition deactivated.

January 2015 4.11 List of machine parameters 747


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
Process
Settings for the automatic start of Python scripts (software option 46)
CfgPythonScript
Python scripts to be started automatically;
Specifies Python processes that are automatically started by the PLC run-time system during startup
and not by calling a PLC module.
The scripts defined below must be activated under CfgPlcPath/pythonScripts.
[Key name of the Python script to be started automatically]
path Path/name of the Python script Change at 2427
any time
118303 When the soft key entered in the key name is
(NOTHING)
pressed, the given Python script is started.
(optional parameter)
LEVEL3
Format: String
597110-05
Input: Path/name of the Python script
Max. 260 characters
jobName Name of the Python application Change at 2427
any time
118304 Specifies the name of the Python application. You
(NOTHING)
can choose any name you want. The application
(optional parameter)
will be displayed with this name, e.g. in the PLC LEVEL3
process monitor.
597110-05
Format: String
Input: Max. 17 characters
parameter Call parameters for the Python script Change at 2428
any time
118301 Specifies expanded call parameters for the Python
(NOTHING)
script.
(optional parameter)
LEVEL3
Format: String
597110-05
Input: Max. 127 characters
memLimit Memory limit for the Python application Change at 2428
any time
118302 Specifies the maximum memory available for the
(NOTHING)
Python application to be started.
(optional parameter)
LEVEL3
Format: Numerical value
597110-05
Input: Memory limit [MB]
envVariables List of environmental variables for Python Change at –
scripts any time
118305
(NOTHING)
The environmental variables entered in the list are
(optional parameter)
set with the given values when the script is LEVEL3
started, and can be evaluated in the Python script.
597110-08
A total of 10 environmental variables can be set.
The value of an environmental variable can also be
empty.
Format: List [0 to 3]
Input: Number of the environmental
variable

748 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
variable Name of the environmental variable to be set Change at –
any time
118305 Format: String
(NOTHING)
(optional parameter) Input: 127 characters
LEVEL3
597110-08
value Value of the environmental variable Change at –
any time
118305 Format: String
(NOTHING)
(optional parameter) Input: 127 characters
LEVEL3
597110-08
CfgPlcOperTimes
Configuration of machining time display
displayPlcTimes Display PLC operating times Change at 2184
any time
105001 Format: Bit-encoded value
(NOTHING)
MP7237.0 Input: %xxxxxxxxxxxxxxxxxxxx
LEVEL2
Bit 0 to bit 19
= PLC time 1 to 20 597110-01
0: Do not display
1: Display
Default: %11111111111111111111
resetPlcTimes Reset PLC operating times with code number Change at 2184
857282 any time
105002
(NOTHING)
Format: Bit-encoded value
MP7237.1
LEVEL2
Input: %xxxxxxxxxxxxxxxxxxxx
Bit 0 to bit 19 597110-01
= PLC time 1 to 20
0: Do not reset
1: Reset
Default: %00000000000000000000
resetNcTimes Reset NC operating times with code number Change at 2184
857282 any time
105003
(NOTHING)
Format: Bit-encoded value
MP7237.2
LEVEL2
Input: %xxx
Bit 0 to bit 2 597110-01
= NC time 1 to 3
Bit 0 – Nonfunctional
Bit 1 – "Machine on" operating time
Bit 2 – "Program run" operating time
0: Do not reset
1: Reset
Default: %000

January 2015 4.11 List of machine parameters 749


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
textNumber Dialogs for PLC operating times Change at 2184
any time
105004 Lists 0 to 19, field 0 is the text for PLC time 1.
(NOTHING)
In the text file for PLC dialogs, indicate the line
MP7238
number of the dialog text. This text file is located LEVEL2
under %OEM%\plc\language\en, whereby the
597110-01
last subdirectory is formed from the configured
language (here en=English).
Format: List [0 to 19]
Input: 0 to 2147483647
Default: 0
CfgSafety (optional parameter)
Settings for functional safety (FS);
Define the axis-independent parameters for machines with integrated functional safety (FS) here.
machineID Name of the machine model Program –
run is
105132 Enter a designation that unambiguously identifies
locked
the machine series or the machine itself.
(optional parameter) (RUN)
Parameter reserved, do not assign.
(reserved parameter) LEVEL3
Format: String
(only evaluated in systems
with functional safety FS— Input: Max. 40 characters
observe the Technical
Default: No value
Manual for Functional Safety
FS).
dataSetID Unique designation of the data record Program –
run is
105133 Enter a number that uniquely identifies the data
locked
record.
(optional parameter) (RUN)
The number must not recur in any data records
(reserved parameter) that are effective system-wide or for a parameter LEVEL3
(only evaluated in systems set.
with functional safety FS— Parameter reserved, do not assign.
observe the Technical
Format: Numerical value
Manual for Functional Safety
FS). Input: 0 to 999
Default: 0

750 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
dataSetApproved Checked and accepted data record Program –
run is
105134 The data record is marked as accepted by the
locked
system by entering the correct code number.
(optional parameter) (RUN)
Parameter reserved, do not assign.
(reserved parameter) LEVEL3
Format: Selection menu
(only evaluated in systems
with functional safety FS— Input:
observe the Technical
 approved
Manual for Functional Safety Data record accepted
FS).
 not approved
Data record not accepted
Default: not approved
dataSetCrc Checksum of the data record Program –
run is
105135 The checksum is calculated and entered by the
locked
system during the acceptance of the data record.
(optional parameter) (RUN)
Parameter reserved, do not assign.
(reserved parameter) LEVEL3
Format: Numerical value
(only evaluated in systems
with functional safety FS— Input: 0 to 4 294 967 295
observe the Technical
Default: 0
Manual for Functional Safety
FS).
timeToEmStopTest Time for cutout channel test Program –
run is
105101 Maximum time until the next test of the cutout
locked
channels is due.
MP511 (RUN)
Format: Numerical value
(only evaluated in systems LEVEL3
with functional safety FS— Input: Time in minutes [min]
597110-05
observe the Technical 1 to 60000 [min]
Manual for Functional Safety
Default: 480 [min]
FS).

January 2015 4.11 List of machine parameters 751


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
permitSom4 Enabling of operating mode 4 Program –
run is
105113 Permissive key of the machine operating panel
locked
only for spindle start or NC start; and max. spindle
MP560 (RUN)
speed and axis feed rates selectable by the OEM
(only evaluated in systems (CfgAxisSafety/speedLimitSOM4). LEVEL3
with functional safety FS—
Warning! 597110-05
observe the Technical
Increased risk in safe operating mode 4 (SOM4)!
Manual for Functional Safety
FS). Format: Selection menu
Input:
 on
Operating mode 4 is enabled
 off
Operating mode 4 is disabled
Default: off
noSom4startProtect Monitoring function for protection against Program –
unexpected start not active in SOM_4 run is
105137
locked
Warning!
MP560 (RUN)
Increased risk in safe operating mode 4 due to
(only evaluated in systems disabled monitoring function! The responsibility LEVEL3
with functional safety FS— lies with the machine tool builder.
597110-08
observe the Technical
Format: Selection menu
Manual for Functional Safety
FS). Input:
 on
Protection against unexpected start not active
in SOM_4
 off
Protection against unexpected start active in
SOM_4
Default: off

752 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
noSS2onOpModChange No SS2 on switchover of the control operating Program –
mode run is
105138
locked
No SS2 stop reaction is triggered during a change
MP560 (RUN)
between the El. Handwheel or Traverse
(only evaluated in systems Reference Points operating modes and another LEVEL3
with functional safety FS— control operating mode.
597110-08
observe the Technical
Warning!
Manual for Functional Safety
Increased risk in safe operating mode 4 due to
FS).
disabled monitoring function! The responsibility
lies with the machine tool builder.
Format: Selection menu
Input:
 on
No SS2 on switchover from/to the El.
Handwheel or Traverse reference points
operating mode.
 off
SS2 on switchover from/to the El. Handwheel
or Traverse reference points operating mode.
Default: off
handwheelNoPB No need to hold the handwheel permissive Program –
button run is
105115
locked
If this parameter is set to on, then in operating
MP560 (RUN)
mode 4 (SOM 4), use of the permissive button on
(optional parameter) the handwheel is required only for spindle start LEVEL3
(only evaluated in systems and NC start.
597110-05
with functional safety FS— Format: Selection menu
observe the Technical
Input:
Manual for Functional Safety
FS).  on
Use of the handwheel permissive button is
required only for spindle start or NC start
 off
Use of the handwheel permissive button is
required for all axis movements.
Default: off

January 2015 4.11 List of machine parameters 753


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
handwheelMultiAx Simultaneous traverse of two or more axes in Program –
handwheel mode run is
105116
locked
Format: Selection menu
MP560 (RUN)
Input:
(only evaluated in systems LEVEL3
with functional safety FS—  on
observe the Technical Simultaneous traverse of two or more axes is 597110-05
Manual for Functional Safety allowed in handwheel mode
FS).  off
Simultaneous traverse of two or more axes is
not allowed in handwheel mode
Default: off
testBrakesCoupled No axis-specific switch-off during test through Program –
STO.B.x run is
105117
locked
Format: Selection menu
MP560 (RUN)
Input:
(optional parameter) LEVEL3
 on
(only evaluated in systems
No axis-specific switch-off during test through 597110-05
with functional safety FS— STO.B.x. All axes are simultaneously switched
observe the Technical together.
Manual for Functional Safety
 off
FS). Axis-specific switch-off during test through
STO.B.x.
Default: off
testWithOpenDoor Self-test with open guard door Program –
run is
105118 Format: Selection menu
locked
MP560 Input: (RUN)
(optional parameter)  on LEVEL3
During the safety self-test the guard doors do
(only evaluated in systems not need to be closed. 597110-05
with functional safety FS— Warning: Increased risk in the safety self-test!
observe the Technical
 off
Manual for Functional Safety During the safety self-test the guard doors must
FS). be closed.
Default: off
testNotBrakeLine Do not test for defective brake control Program –
run is
105119 Format: Selection menu
locked
MP560 Input: (RUN)
(optional parameter)  on LEVEL3
No test for defective brake control is performed.
(only evaluated in systems Warning: Malfunctions of the brake might be 597110-05
with functional safety FS— recognized too late!
observe the Technical
 off
Manual for Functional Safety Test for defective brake control is performed.
FS).
Default: off

754 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
testNotCurrent No amperage measurement during self test Program –
run is
105120 Format: Selection menu
locked
MP560 Input: (RUN)
(optional parameter)  on LEVEL3
The current is not measured during the safety
(only evaluated in systems self-test. 597110-05
with functional safety FS—
 off
observe the Technical
The current is measured.
Manual for Functional Safety
FS). Default: off
testNotStoGlobal No testing of switch-off through -STO(S).A.G Program –
run is
105121 Format: Selection menu
locked
MP560 Input: (RUN)
(optional parameter)  on LEVEL3
There is no wiring of –STO.A.G and –STOS.A.G
(only evaluated in systems to the safety relays in the power modules. 597110-05
with functional safety FS— Switch-off of the power modules over these
observe the Technical signals is not tested in the safety self-test. Only
Manual for Functional Safety allowed if appropriate inverters are used!
FS).  off
Testing of switch-off through –STO(S).A.G
Default: off
testNotStoAIntrnl No testing of switch-off through internal Program –
-STO.A signal run is
105130
locked
Deactivate the test if you are using non-
MP560 (RUN)
HEIDENHAIN systems.
(optional parameter) LEVEL3
Format: Selection menu
(only evaluated in systems 597110-05
Input:
with functional safety FS—
observe the Technical  on
Manual for Functional Safety Test of the internal –STO.A signal is deactivated
FS).  off
Test of the internal –STO.A signal is active
Default: off

January 2015 4.11 List of machine parameters 755


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
drvOnAftTimeExp Switch-on of drive permitted even though self Program –
test was invalid run is
105136
locked
If permitted by the risk analysis for the machine,
MP560 (RUN)
you can enable switched-off drives to be switched
(optional parameter) on again even though the self test timed out. LEVEL3
(only evaluated in systems Format: Selection menu 597110-05
with functional safety FS—
Input:
observe the Technical
Manual for Functional Safety  on
FS). Drives can be switched on again even after the
self test timed out
 off
Switched-off drives cannot be switched on
again after the self test timed out
Default: off
CfgPlcSafety (optional parameter)
SPLC settings for functional safety (FS);
Define the axis-independent parameters for machines with integrated functional safety (FS) here.
machineID Name of the machine model Program –
run is
122801 Enter a designation that unambiguously identifies
locked
the machine series or the machine itself.
(optional parameter) (RUN)
Parameter reserved, do not assign.
(reserved parameter) LEVEL3
Format: String
(only evaluated in systems
with functional safety FS— Input: Max. 40 characters
observe the Technical
Default: No value
Manual for Functional Safety
FS).
dataSetID Unique designation of the data record Program –
run is
122802 Enter a number that uniquely identifies the data
locked
record.
(optional parameter) (RUN)
The number must not recur in any data records
(reserved parameter) that are effective system-wide or for a parameter LEVEL3
(only evaluated in systems set.
with functional safety FS— Parameter reserved, do not assign.
observe the Technical
Format: Numerical value
Manual for Functional Safety
FS). Input: 0 to 999
Default: 0

756 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
dataSetApproved Checked and accepted data record Program –
run is
122803 The data record is marked as accepted by the
locked
system by entering the correct code number.
(optional parameter) (RUN)
Parameter reserved, do not assign.
(reserved parameter) LEVEL3
Format: Selection menu
(only evaluated in systems
with functional safety FS— Input:
observe the Technical
 approved
Manual for Functional Safety Data record accepted
FS).
 not approved
Data record not accepted
Default: not approved
dataSetCrc Checksum of the data record Program –
run is
122804 The checksum is calculated and entered by the
locked
system during the acceptance of the data record.
(optional parameter) (RUN)
Parameter reserved, do not assign.
(reserved parameter) LEVEL3
Format: Numerical value
(only evaluated in systems
with functional safety FS— Input: 0 to 4 294 967 295
observe the Technical
Default: 0
Manual for Functional Safety
FS).
splcTimer Run times of the timers of the PLC program Program –
run is
122805 Define the run times of the timers (max. 16) for
locked
the SPLC program here.
MP535 (RUN)
Format: List [0 to 15]
(optional parameter) LEVEL3
Input: Time in seconds [s]
(only evaluated in systems 597110-05
0.000 to 1 000 000 [s]
with functional safety FS—
observe the Technical Default: 0 [s]
Manual for Functional Safety
FS).
splcPgmCrcSrc Checksum through SPLC program's Program –
intermediate code run is
122806
locked
Format: Numerical value
MP691.0 (RUN)
Input: 0 to 4 294 967 295
(optional parameter) LEVEL3
Default: 0
(only evaluated in systems 597110-05
with functional safety FS—
observe the Technical
Manual for Functional Safety
FS).

January 2015 4.11 List of machine parameters 757


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
splcPgmCrcMc MC checksum through SPLC program's binary Program –
code run is
122807
locked
Format: Numerical value
MP691.1 (RUN)
Input: 0 to 4 294 967 295
(optional parameter) LEVEL3
Default: 0
(only evaluated in systems 597110-05
with functional safety FS—
observe the Technical
Manual for Functional Safety
FS).
splcPgmCrcCc CC checksum through SPLC program's binary Program –
code run is
122808
locked
Format: Numerical value
MP691.2 (RUN)
Input: 0 to 4 294 967 295
(optional parameter) LEVEL3
Default: 0
(only evaluated in systems 597110-05
with functional safety FS—
observe the Technical
Manual for Functional Safety
FS).
splcApiVersion PLC API version Program –
run is
122809 Version of the PLC API (programming interface)
locked
used to create the SPLC program.
MP693 (RUN)
Format: Numerical value
(optional parameter) LEVEL3
Input: 0 to 2 147 483 647
(only evaluated in systems 597110-05
with functional safety FS— Default: 0
observe the Technical
Manual for Functional Safety
FS).
inpNoInverseA Inverted PLC inputs of channel A Program –
run is
122810 Enter up to a maximum of 8 inverted PLC inputs
locked
of the A channel in form of a PLC operand
MP585 (RUN)
address.
(optional parameter) LEVEL3
Format: List [0 to 7]
(only evaluated in systems 597110-05
Input: Numerical value
with functional safety FS—
–1 to 255
observe the Technical
–1: Function deactivated
Manual for Functional Safety
FS). Default: –1

758 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
inpNoInverseB Inverted PLC inputs of channel B Program –
run is
122811 Enter up to a maximum of 8 inverted PLC inputs
locked
of the B channel in form of a PLC operand
MP586 (RUN)
address.
(optional parameter) LEVEL3
Format: List [0 to 7]
(only evaluated in systems 597110-05
Input: Numerical value
with functional safety FS—
–1 to 255
observe the Technical
–1: Function deactivated
Manual for Functional Safety
FS). Default: –1
inpNoDynTest PLC inputs subjected to forced dynamic Program –
sampling tests run is
122812
locked
Specify the PLC operand addresses of up to 16
MP587 (RUN)
PLC inputs to be subjected to forced dynamic
(optional parameter) sampling tests. LEVEL3
(only evaluated in systems They must be supplied by –TEST.A or 597110-05
with functional safety FS— –TEST.B of the PL 6xxx FS on which the
observe the Technical respective input is located.
Manual for Functional Safety
Format: List [0 to 15]
FS).
Input: Numerical value
–1 to 255
–1: Function deactivated
Default: –1
timerSInpAntivlt Maximum time for cross-comparison error of Program –
an FS input run is
122813
locked
Maximum permissible duration in which a safe,
MP584 (RUN)
dual-channel input can be in an inconsistent state.
(only evaluated in systems An inconsistent state exists if the two input LEVEL3
with functional safety FS— terminals of the FS input transmit differing logical
597110-06
observe the Technical values.
Manual for Functional Safety
Format: Numerical value
FS).
Input: Time in seconds [s]
0.5 to 30 [s]
with max. 9 decimal places
Default: 5 [s]
splcOemInt User parameter with data for SPLC program Program –
run is
122814 Configuration data freely definable by the machine
locked
tool builder for the SPLC program. They are
MP692.x (RUN)
copied into the NN_OemInt markers of the
(optional parameter) SPlcApiFromSafety API interface. LEVEL3
(only evaluated in systems Format: List [0 to 15] 597110-08
with functional safety FS—
Input: Numerical value
observe the Technical
–2 147 483 647 to 2 147 483 647
Manual for Functional Safety
FS). Default: 0

January 2015 4.11 List of machine parameters 759


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgAxGroupSafety (Optional parameter)
Definition of an axis group;
Specifies an axis group for functional safety (FS).
[Key name of the axis group]
e.g. "A" (axes), "S" (spindle) or "T" (tool magazine)
id Unique identification of the axis group Shut down –
control
301101 A unique ID has to be assigned to each axis group.
(RESET)
(only evaluated in systems Format: Numerical value
LEVEL3
with functional safety FS—
Input: 0 to 8
observe the Technical 597110-05
Manual for Functional Safety Default: 0
FS).
type Type of axis group Shut down –
control
301102 Specifies the type of axis group.
(RESET)
(only evaluated in systems Format: Selection menu
LEVEL3
with functional safety FS—
Input:
observe the Technical 597110-05
Manual for Functional Safety  NC_AXIS
FS). NC axes
 SPINDLE
Spindle
 AUX_AXIS
Auxiliary axes
Default: NC_AXIS
brakeAfter Definition of braking sequence Shut down –
control
301103 Enter in bit code which axis groups have to be at
(RESET)
standstill before this axis group itself is
MP610
decelerated. LEVEL3
(only evaluated in systems
Format: Bit-encoded value 597110-05
with functional safety FS—
observe the Technical Input: %xxxxxxxx
Manual for Functional Safety
Default: 0
FS).

760 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
idleState Axis-group-specific configuration whether the Shut down –
axis group is switched to SOS or STO upon control
301104
SS2 reaction (RESET)
MP549
Format: Selection menu LEVEL3
(only evaluated in systems
Input: 597110-05
with functional safety FS—
observe the Technical  DEFAULT
Manual for Functional Safety Spindle axis groups in STO upon SS2, axis axis
FS). groups in SOS upon SS2
 STO
Axis group in STO upon SS2
 SOS
Axis group in SOS upon SS2
Default: DEFAULT
ToolSettings
Settings for the behavior of the tool changer and the generation of the tool usage list.
CfgToolBehaviour
Behavior of the tool change cycles
varPocketCoding Pocket table with variable pocket coding Shut down 2234
control
202201 Prefer the F column in the pocket table to identify
(RESET)
tools with a fixed pocket in the magazine. The
(optional parameter)
parameter continues to be supported for LEVEL1
compatibility reasons, but should not be used
anymore.
Format: Selection menu
Input:
 TRUE
Variable pocket coding
 FALSE
Fixed pocket coding
Default: FALSE

January 2015 4.11 List of machine parameters 761


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
toolDefMode Behavior of the tool change cycles with Shut down 2233
TOOL DEF control
202202
(RESET)
Format: Selection menu
LEVEL1
Input:
 ToolOrder
TOOL DEF serves to call the tool (L or R not
allowed)
 ToolDefine
TOOL DEF is for tool definition (L and/or R must
be available). The tool table is emptied during
program start.
Special case 1:
The entire tool table is modified/cleared, if
parameters MP_modifyToolTblFrom = 0 and
MP_modifyToolTblTo = 0
Special case 2:
Emptying/modifying disabled for range "from" to
"to" if MP_modifyToolTblFrom <
MP_modifyToolTblTo
Default: ToolOrder
modifyToolTblFrom Start: Modification of the tool table Shut down 2233
control
202204 Modification of the tool table including this
(RESET)
indicated pocket number at
MP_toolDefMode = ToolDefine. LEVEL1
Upon program start, the tool table is cleared
starting from the indicated pocket number.
Format: Numerical value
Input: 0 to 2 147 483 647
Default: 0
modifyToolTblTo End: Modification of the tool table Shut down 2234
control
202205 Modification of the tool table including this
(RESET)
indicated pocket number at
MP_toolDefMode = ToolDefine. LEVEL1
Upon program start, the tool table is cleared up to
the indicated pocket number.
Format: Numerical value
Input: 0 to 2 147 483 647
Default: 0

762 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
M101BlockTolerance Delay of the tool change time point with M101 Shut down 2209
control
202206 When M101 is active, the look-ahead is limited to
(RESET)
a traverse time of approx. 1 minute.
(optional parameter)
LEVEL1
The parameter defines a delay measured in NC
blocks. These NC blocks delay the tool-change
time point with M101 additionally if the syntax
element BT is not indicated.
Format: Numerical value
Input: 1 to 100 [NC blocks]
Default: 1
CfgToolUsage
Configuration of the tool usage test
createUsageFile Generate tool-usage file Program 2227
run is
118701 Format: Selection menu
locked
MP7246, bit 2 Input: (RUN)
 TRUE LEVEL3
Generate tool-usage file
597110-05
 FALSE
Do not generate tool-usage file
Default: FALSE
logFilePath Path for ASCII file with the results of the last Program 2227
tool usage test run is
118702
locked
Format: String
(optional parameter) (RUN)
Input: Max. 500 characters
LEVEL3
Path/name of the ASCII file
Parameter not defined: 597110-05
ASCII file is not generated
Default: No value,
ASCII file is not generated
toolSeqListSize Visible length of the tool sequence during Program 2228
access via Python run is
118703
locked
Enter the length of the visible tool sequence
(RUN)
during access via Python (DataAccess interface).
LEVEL3
Format: Numerical value
Input: 1 to 999
Default: 16
usageFactor Add usage time for tool selection Program 2228
run is
118704 Format: Numerical value
locked
MP7485 Input: 0 to 100 [%] (RUN)
Default: 10 LEVEL3
597110-05

January 2015 4.11 List of machine parameters 763


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
allowToolDefCall Tool name/number for TOOL CALL / Shut down 2212
TOOL DEF control
118705
(RESET)
Specifies whether the tool name or number or
MP7483
both can be used for TOOL CALL/TOOL DEF. LEVEL3
Format: Selection menu 597110-05
Input:
 ByNameAndNr
Tool name and number is permissible
 ByNameOnly
Only tool name is permissible
 ByNrOnly:
Only tool number is permissible
Default: ByNameAndNr
seekNextTool Tool name/number for replacement tool Shut down 2212
search control
118706
(RESET)
Specifies whether the tool name and number or
only the tool number can be used for the LEVEL3
replacement tool search.
597110-05
Format: Selection menu
Input:
 ByNameAndNr
Tool names and numbers are considered
 ByNrOnly
Only tool numbers are considered
Default: ByNameAndNr
magazineSeekList Search sequence in tool magazines Shut down 2213
control
118707 Specifies the sequence for searching in tool
(RESET)
magazines for the tool called. A sequence can be
MP7484.0 to MP7848.7
specified for searching in tool magazines for a tool LEVEL3
call via tool name.
597110-05
Format: List [0 to 7]
Input: 0 to 7 (magazine number)
–1: Cancel
Default: –1

764 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
PalletSettings
Settings for pallet machining
CfgPalletBehaviour
Specifies the behavior of the system cycle for pallet machining
stopAt Specifies when the pallet processing stops Program 2128
run is
202101 Format: Selection menu
locked
Input: (RUN)
 Nowhere LEVEL1
Pallet processing is never stopped
 EveryRecord
The pallet processing is stopped after every line
 EveryPallet
The pallet processing is stopped after every
pallet
 EndOfTable
The pallet processing is stopped at the end of
the pallet table
Default: EndOfTable
editTableWhileRun Specifies whether the current pallet table is Program 2128
editable during program run run is
202102
locked
Format: Selection menu
(RUN)
Input:
LEVEL1
 TRUE
The current pallet table is editable in the
Program Run operating modes
 FALSE
The current pallet table cannot be edited
Default: TRUE

January 2015 4.11 List of machine parameters 765


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
EditorSettings
Settings for the Programming operating mode
CfgEditorSettings
Settings for the NC editor
createBackup Generate backup file Change at 1874
any time
105401 After you have edited an NC program, make a
(NOTHING)
backup file (*.bak).
LEVEL1
Format: Selection menu
597110-02
Input:
 TRUE
Generate a backup file *.bak
 FALSE
Do not generate a backup file *.bak
Default: TRUE
deleteBack Behavior of the cursor after deletion of lines Change at 1875
any time
105402 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 TRUE
Behavior as with iTNC 530, the cursor is on the 597110-02
previous line.
 FALSE
Cursor is on the following line
Default: TRUE
cursorAround Behavior of the cursor on the first or last line Change at 1875
any time
105403 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 TRUE
Cursor jumps to the last or first line 597110-02
 FALSE
Cursor stands ready; at first or last line. Jumping
not possible.
Default: TRUE

766 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
lineBreak Line break on NC blocks with more than one Change at 1876
line any time
105404
(NOTHING)
Format: Selection menu
MP7281.0
LEVEL1
Input:
597110-02
 ALL
Always break and display lines completely
(multiline)
 ACT
Only display the selected NC block completely
(multiline)
 NO
Only display all lines when the selected NC
block is edited
Default: ALL
stdTNChelp Activate help graphics Change at 1877
any time
105405 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 TRUE
Behavior as with iTNC 530: the help graphics 597110-01
are displayed automatically during cycle entry.
 FALSE
The help graphics have to be called via the
CYCLE HELP ON/OFF soft key.
Default: TRUE
toggleCyclDef Behavior of the soft-key row after a cycle entry Change at 1877
any time
105406 Format: Selection menu
(NOTHING)
(optional parameter) Input:
LEVEL1
 TRUE
The cycle soft-key row remains active after the 597110-01
cycle entry
 FALSE
The cycle soft-key row is hidden after the cycle
entry
Default: No value (behavior as for FALSE)

January 2015 4.11 List of machine parameters 767


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
warningAtDel Confirmation request when deleting an NC Change at 1878
block. any time
105407
(NOTHING)
Format: Selection menu
MP7246
LEVEL1
Input:
(optional parameter)
597110-01
 TRUE
A confirmation request is displayed (Really
delete NC block? DEL!) and must be confirmed
by pressing DEL again.
 FALSE
iTNC 530: The NC block is deleted without any
request for confirmation.
Default: No value (behavior as for FALSE)
maxLineGeoSearch Line number to which the program is to be Change at 1878
checked. any time
105408
(NOTHING)
If the parameter is not defined, the minimal value
MP7229
100 becomes effective automatically. LEVEL1
(optional parameter)
Format: Numerical value 597110-02
Input: 100 to 9999
Default: 100
blockIncrement DIN/ISO programming: Block number Change at 1879
increment any time
105409
(NOTHING)
Format: Numerical value
MP7220
LEVEL1
Input: 0 to 250
(optional parameter)
597110-04
Default: 10
useProgAxes Specifying programmable axes Shut down 1880
control
105410 Format: Selection menu
(RESET)
(optional parameter) Input:
LEVEL1
 TRUE
Use the axis configuration defined in parameter
CfgChannelAxes/progAxis (200301).
 FALSE
Use the default axis configuration
XYZABCUVW.
Default: FALSE

768 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
enableStraightCut Allow or lock paraxial positioning blocks Change at 1880
any time
105411 Format: Selection menu
(NOTHING)
MP7246 Input:
LEVEL1
(optional parameter)  TRUE
Paraxial positioning blocks are allowed. When
an orange axis key is pressed, and in DIN/ISO
when G07 is programmed, a paraxial positioning
block is generated.
 FALSE
Paraxial positioning blocks are locked. When an
orange axis key is pressed, the TNC 640
generates a straight line interpolation (L block).
Default: No value (behavior as for TRUE)
maxLineCommandSrch Number of lines for search for same syntax Change at 1879
elements any time
105412
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL1
Input: 500 to 400 000
597110-04
Default: 20 000
TableSettings
Description of the table types of the TNC 640;
Specifies the properties of the tables.
CfgTableProperties
Assignment of columns to a table type; Specifies:
 The columns in the table
 The primary and foreign key
With this information you can import a table or create a new one.
[Key name with the file extension of the table]
E. g. CMA, COM, TCH, etc.
columnKeys List of key names of the columns used Change at 2441
any time
105501 Key names of all columns that form the table. The
(NOTHING)
column names must be available under Columns.
LEVEL3
Format: List [0 to 79]
597110-01
Input: Column name, max. 18 characters
primaryKey Primary key (column name) for sorting Change at 2442
any time
105502 Name of the column, based upon which the data
(NOTHING)
is sorted in ascending order. The column name
must be available under CfgTableProperties/ LEVEL3
[key name]/columnKeys.
597110-01
Format: String
Input: Column name, max. 18 characters

January 2015 4.11 List of machine parameters 769


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
foreignKey Foreign key for this table Change at 2442
any time
105503 Specify a string for every list entry:
(NOTHING)
<column name> <blank space> <referential
(optional parameter)
action> LEVEL3
Valid values for <referential action>are:
 NO ACTION
 RESTRICT
 SET NULL
 SET DEFAULT
 INHERIT
Format: List [0 to 79]
Input: String, max. 40 characters
modificationKey Key name of the column in which the Change at 2442
timestamp is to be entered if a line is modified any time
105504
(NOTHING)
Format: String
(optional parameter)
LEVEL3
Input: <extension>.<column name>
Max. 18 characters
passwordKey Column with the password and checksum of a Change at 2443
data record any time
105505
(NOTHING)
Name of the column that contains the password
(optional parameter)
and the checksum for protecting a data record LEVEL3
against undesired change. The column must have
597110-09
the TEXT data type and be at least 15 characters
wide.
Format: String
Input: <extension>.<column name>
Max. 18 characters

770 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
Columns
Specifies the column names for all columns of all tables
[Key name = Name of the column]
As key name, enter the name of the table column.
If the column is to be used only in a certain table, you must enter a unique key name. The column
name must be preceded by the table type (i.e. the table extension) followed by a period:
[Table extension].[Column name]
E.g. MOT.Mmax, TCH.T, etc.
If a column is used in two or more tables, a simple key name is enough, for example NAME (without
a period).
CfgColumnDescription
Definition of a table column, column description
width Column width Program 2445
run is
105601 Defines the width for the column made in the
locked
table file. At least one character for the column
(RUN)
name and one character for spacing from the next
column. LEVEL3
Format: Numerical value
Input: 2 to 50
(column width of max. 50
characters)
Default: 2

January 2015 4.11 List of machine parameters 771


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
unit Data type of values in the column Program 2446
run is
105602 Format: Selection menu
locked
Input: (RUN)
 TEXT LEVEL3
Text entry
 SIGN
Algebraic sign + or –
 BIN
Binary number
 DEC
Decimal, positive, whole number
(cardinal number)
 HEX
Hexadecimal number
 INT
Whole number
 LENGTH
Length
 FEED
Feed rate (mm/min or 0.1 ipm)
 IFEED
Feed rate (mm/min or ipm)
 FEED_CUT
Cutting speed in m/min or feet/min
 FEED_ROT
Feed rate in mm/revolution or
inch/revolution
 FLOAT
Floating-point number
 BOOL
Logical value
 INDEX
Index with subindexes
 TSTAMP
Time/Date
Default: TEXT

772 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
initial Value automatically entered in a column when Program 2447
a new table is created. run is
105603
locked
Format: String
(optional parameter) (RUN)
Input: Max. 50 characters
LEVEL3
 NULL:
No default value. This column may be left blank.
If a default value other than NULL is given, then
a valid value must always be entered in the
column.
 Value:
Default value. When a new line is inserted, this
value is assigned as a default to the column.
Default: No value
minimum Smallest permissible input value Program 2448
run is
105604 Depending on the unit of measure selected in
locked
MP_unit, the input ranges defined in
(optional parameter) (RUN)
"MP_minimum" on page 2448 apply:
LEVEL3
Format: String
Input: Max. 50 characters
Default: No value
maximum Largest permissible input value Program 2448
run is
105605 Depending on the unit of measure selected in
locked
MP_unit, the input ranges defined in
(optional parameter) (RUN)
"MP_minimum" on page 2448 apply:
LEVEL3
Format: String
Input: Max. 50 characters
Default: No value
charset Permissible number of characters for columns Program 2448
with text run is
105606
locked
Evaluated only for columns with MP_unit = TEXT.
(optional parameter) (RUN)
If the parameter is not defined, all characters are
allowed; otherwise, only the characters listed LEVEL3
here are allowed.
Format: String
Input: Max. 224 characters
Default: No value

January 2015 4.11 List of machine parameters 773


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
unique Specifies whether only unambiguous values Program 2449
are allowed in the column run is
105607
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL3
 TRUE
Only unambiguous values allowed
 FALSE
Values may occur more than once
Default: No value (behavior as for FALSE)
readonly Write protection on column entry Program 2449
run is
105608 If the attribute is set to TRUE, the value assigned
locked
when inserting the line cannot be changed. If the
(optional parameter) (RUN)
attribute is not set or set to FALSE, values may be
overwritten. LEVEL3
Format: Selection menu
Input:
 TRUE
Values are write-protected
 FALSE
Values may be overwritten
Default: No value (behavior as for FALSE)
unitIsInch Column entry in inches Program 2450
run is
105609 If lengths and feed rates are to be specified in the
locked
column in a definite unit of measure, enter TRUE
(optional parameter) (RUN)
here for values in inches and FALSE for values in
mm. If the parameter is not set, the unit of LEVEL3
measure is taken from the corresponding table.
Format: Selection menu
Input:
 TRUE
Column entry in inches
 FALSE
Column entry in mm
Default: No value

774 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
noPasswordProtect Permit change in spite of password protection Program 2450
run is
105610 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
The column value can also be changed without
entering the password of this line. 597110-09
 FALSE
The password can be changed only after
entering the password.
Default: No value
CfgColumnText
Definition of the language-sensitive text of a column.
Language-sensitive dialog text and selection lists for columns.
dialogText
Language-sensitive dialog text and selection lists for columns. Text name from the text resource file
(for language-sensitive texts) or texts that are understood in all languages.
dialogRes Name of a text Change at 2455
any time
105701 The text must be available with this name in a text
(NOTHING)
resource file. Leave the parameter empty if the
(optional parameter)
text is to be the same for all languages. Enter the LEVEL3
text in the MP_text parameter instead.
597110-02
Format: String
Input: String, max. 40 characters
Default: No value
text Language-sensitive text Change at 2456
any time
105701 This text is loaded from a text resource file and
(NOTHING)
should not be changed here.
(optional parameter)
If the text is not language-sensitive, you must LEVEL3
enter it here directly. In this case do not enter
597110-02
anything for the MP_dialogRes attribute.
Format: String
Input: Max. 60 characters
Default: No value
softkeyIcon Path/name of a soft key icon Change at 2456
any time
105702 Specifies a graphic soft key for opening a
(NOTHING)
selection list.
(optional parameter)
LEVEL3
If instead of a text, a graphic soft key is to be
displayed, you have to enter here the path and 597110-02
name of the icon.
Format: String
Input: Max. 80 characters
Default: No value

January 2015 4.11 List of machine parameters 775


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
iconVariant Number of a soft-key variant Change at 2456
any time
105703 Additional data for graphic soft key: Variant
(NOTHING)
number of the soft-key icon in the BMX file.
(optional parameter)
LEVEL3
Format: Numerical value
597110-02
Input: 0 to 2 147 483 647
Default: No value
choice Define a selection list for input values Change at –
any time
105704 A selection element consists of a value/text pair.
(NOTHING)
The text is displayed.
(optional parameter)
When selected, the value belonging to the text is LEVEL3
entered in the table.
The value cannot be directly edited, but only
changed using the selection.
For the associated MP_text parameter, the text
can consist of two parts separated by a comma.
This will have the following effect:
 Text in front of the comma is displayed in the
selection list
 The following part in the table editor
Format: List [0 to 41]
value Value for a selection element Change at –
any time
105704 A selection element consists of a value/text pair.
(NOTHING)
Here the value belonging to the text is entered.
(optional parameter)
LEVEL3
Format: String
Input: Max. 20 characters
Default: No value

776 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
dialog
Text for a selection element. A selection element consists of a value/text pair.
dialogRes Name of a text Change at –
any time
105704 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
text Language-sensitive text Change at –
any time
105704 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
lockValue
Locked due to certain input values. If the value entered in the column corresponds to the value
specified under MP_value, the replacement text is displayed. It cannot be edited. This makes it
possible to disable editing depending on the value.
value Value for a selection element Change at –
any time
105705 A selection element consists of a value/text pair.
(NOTHING)
Here the value belonging to the text is entered.
(optional parameter)
LEVEL3
Format: String
Input: Max. 20 characters
dialog
Text for a selection element. A selection element consists of a value/text pair.
dialogRes Name of a text Change at –
any time
105705 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
text Language-sensitive text Change at –
any time
105705 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
CfgTableBinding
Predefined interpreter bindings for an SQL table.
These bindings can be used in the respective NC channel under CfgSqlProperties/bindings.
[Key name of the table binding]
As key names, you must enter the names from CfgSqlProperties/bindings.
binds Key names of the individual column bindings Program –
run is
105801 For a list of all column bindings valid for this table
locked
see also CfgColumnBinding.
(RUN)
Format: List [0 to 79]
LEVEL3
Input: String, max. 18 characters

January 2015 4.11 List of machine parameters 777


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgColumnBinding
Predefined interpreter binding of a column.
Predefined binding of a column in an SQL table with a system datum in the interpreter. Enter the key
name for all active bindings of a table under CfgTableBinding.
[Key name of the column binding]
As key names, you must use the names from CfgTableBinding/binds.
column Table type and column name of the binding RUN –
105901 Designates the table type and the column name LEVEL3
for which this binding is effective. Table type and
column name must be separated by a period, e.g.
TCH.F, T.TYP, etc.
Format: String
Input: Max. 18 characters
id System data ID (group number) RUN –
105902 Here id=0 means a binding to a Q parameter. If no LEVEL3
id is entered, no actual binding is generated, and
(optional parameter)
the interpreter is simply instructed to read in the
respective column descriptions during the
configuration phase. This does not need to be
done during run time.
Format: Numerical value
Input: Group number
0 = Binding to Q parameter
number System data no. (NR) or Q parameter no. RUN/ –
LEVEL3
105903 Format: Numerical value
(optional parameter) Input: System data number or
Q parameter number if MP_id = 0
index System data index (IDX) RUN/ –
LEVEL3
105903 Format: Numerical value
(optional parameter) Input: Index number
subIndex System data subindex (IDXIDX) RUN/ –
LEVEL3
105905 Reserved, do not assign.
(reserved parameter) Input: Not used

778 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgTableFilter
Filter for limited view of a table type
[Key name of the table filter]
The key name must have the following syntax for a selectable filter in the table editor (generic soft
key):
[Table extension].[Filter designation]
e.g. T.DRILL defines filters for the tool table.
Key names that do not have this syntax are permitted, but they are typically used as reference objects,
e.g. 1-TOOL from MP_CfgTableSelect/filter.
softkeyText
Language-sensitive description of a soft key for activating the table filter;
Text name from the text resource file (for language-sensitive texts) or texts that are understood in all
languages.
dialogRes Name of a text Change at 2455
any time
106001 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
597110-02
text Language-sensitive text Change at 2456
any time
106001 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
597110-02
softkeyIcon Path/name of a soft key icon Change at 2456
any time
106002 Specifies a graphic soft key for activating the table
(NOTHING)
filter.
(optional parameter)
LEVEL3
The path and file name of an icon can be used
instead of a text. 597110-02
Format: String
Input: Path/name, max. 80 characters
Default: No value
iconVariant Number of a soft-key variant Change at 2456
any time
106003 Additional data for graphic soft key: Variant
(NOTHING)
number of the soft-key icon in the BMX file.
(optional parameter)
LEVEL3
Format: Numerical value
597110-02
Input: 0 to 2147483647
Default: No value

January 2015 4.11 List of machine parameters 779


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
helpColumn Column name for displaying help graphics Change at –
any time
106004 If a column name is entered, different help
(NOTHING)
graphics can be displayed. This depends on the
(optional parameter)
column values in the MP_helpValue attribute. LEVEL3
Format: String
Input: Max. 50 characters
Default: No value
helpValue List of column values for assignment to help Change at –
graphics any time
106005
(NOTHING)
A list of values can be specified for the column
(optional parameter)
defined in MP_helpColumn. LEVEL3
If this value is given in the table column, the help
graphic defined in MP_helpPicture will be
displayed.
Format: List [0 to 49]
Input: String, max. 50 characters
Default: No value
helpPicture List of path/file names of help graphics Change at –
any time
106006 When this filter is applied, the help graphic
(NOTHING)
defined by path and file name is displayed in the
(optional parameter)
FORM + GRAPHICS view. LEVEL3
Depending on the column value, you can display
different help graphics if
the corresponding entries are contained in
MP_helpColumn and MP_helpValue.
Format: List [0 to 49]
Input: String, max. 80 characters
Default: No value
select Selected column names of table Change at 2454
any time
106007 If the attribute is not set or empty, all columns are
(NOTHING)
selected (SQL command: SELECT*).
(optional parameter)
LEVEL3
Example:
T,NAME,L,R 597110-02
Format: String
Input: Max. 260 characters
Default: No value

780 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
exclude Reverse logic of column selection in MP_select Change at 2455
any time
106010 Format: Selection menu
(NOTHING)
(optional parameter) Input:
LEVEL3
 TRUE
Column selection from MP_select is changed 597110-02
from a positive list to a negative list (all
except...).
 FALSE
Column selection from MP_select remains a
positive list.
Default: No value
from Path/file name or synonym of table from Change at 2455
System/Path/CfgTablePath any time
106008
(NOTHING)
Here the desired table is defined in connection
(optional parameter)
with the choice in the CfgTableSelect parameter LEVEL3
object for a column, e.g. TOOL as synonym for
597110-02
the tool table.
Format: String
Input: Max. 80 characters
Default: No value
option Further options for the display of the table Change at 2457
data record any time
106009
(NOTHING)
With the parameter you can define further options
(optional parameter)
for the depiction of the filter. The available options LEVEL3
correspond to the SQL statements WHERE and/
597110-02
or ORDER BY.
Examples:
TYP <> 21 AND L > 80
Limits the displayed data record of the table to
display no touch probes (TYP = 21), and only tools
over 80 mm in length.
TYP == 21
Limits the displayed data record of the table to
display touch probes only.
Format: String
Input: Max. 80 characters
Default: No value
lockedColumns Names of columns that are locked for editing Change at 2457
any time
106011 List of names of table columns that must not be
(NOTHING)
edited by the end user.
(optional parameter)
LEVEL3
Format: List [0 to 49]
597110-06
Input: String, max. 50 characters
Default: No value

January 2015 4.11 List of machine parameters 781


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgTablePrototype
Path and file name for the prototype of a table
[Key name (file extension) of the table prototype]
e.g. TCH, D, PR, etc.
path Path/name for the prototype of a table type Change at 2458
any time
106101 Format: String
(NOTHING)
Input: Max. 80 characters
LEVEL3
Default: For pocket table:
597110-02
%OEM%\proto\table\prototype.tch
pathInch Path/name for the prototype of a table type in Change at 2459
INCH format any time
106103
(NOTHING)
Format: String
(optional parameter)
LEVEL3
Input: Max. 80 characters
597110-05
Default: No value
enableReset Reset current table? Change at 2459
any time
106102 Specifies whether the current table may be
(NOTHING)
overwritten with the prototype.
LEVEL3
Format: Selection menu
597110-02
Input:
 TRUE
Table may be overwritten with the prototype.
 FALSE
Table must not be overwritten with the
prototype.
Default: For pocket table: FALSE

782 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgTableSelect
Choice for a column in the table editor.
An inquiry can be configured for a column to copy values from one table to another table as foreign
key.
[Key name for choice]
The key name must have the following syntax for the choice:
[Table extension].[Column name]
Example: TCH.T permits selection in column T (tool number) of the pocket table.
Key names that do not have this syntax are permitted, but they are typically used as reference objects
e.g. 1-TOOL from CfgEditorSelect/elementList.
filter Key name for display filter in table editor Change at –
any time
106201 Key name of a filter defining the table and the
(NOTHING)
view, e.g. SELECT.TOOL for CfgTableFilter.
LEVEL3
Format: String
Input: Max. 18 characters
Default: No value
column Addresses for a value query during selection Change at –
any time
106202 The values of this column name or column list will
(NOTHING)
be returned to the calling process if selected, e.g.
T,NAME returns the values from the columns T + LEVEL3
NAME.
Format: String
Input: Max. 50 characters
Default: No value
target Target table addresses for loading values Change at –
any time
106203 Column name or column list which the values are
(NOTHING)
transferred to when returning from the selection
in the table, e.g. T,NAME replaces the values in the LEVEL3
columns T + NAME.
Format: String
Input: Max. 50 characters
Default: No value

January 2015 4.11 List of machine parameters 783


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgTableUpdateList
Tables that are checked for correct table format;
Define tables here that should automatically be checked for correct table format when the control
starts up.
If the format is incorrect, the table is automatically corrected. Rules for the update are also taken into
account.
After the table has been checked and corrected, the version number is increased. Then the inspection
is no longer conducted during the next startup.
The following key names are supported:
 JhAtStartup:
List of tables that are permanently assigned by HEIDENHAIN.
 OemAtStartup:
List in which the machine tool builder can enter his own tables.
[Key name of the list for the table update]
OemAtStartup or JhAtStartup
files List with path of the tables whose format is to Shut down –
be checked control
120201
(RESET)
You can enter the complete path and file name or
the synonym of the table from CfgTablePath. LEVEL3
HEIDENHAIN recommends entering the
synonym of the table, e.g. TOOL for the tool table.
Up to 50entries are supported.
Format: String
Input: Synonym or path/name
of the table to be checked
CfgConfigSettings
Settings for the configuration editor (Machine Parameter Programming mode of operation)
undoListSize Specifies the number of entries in the change Change at 571
list any time
106501
(NOTHING)
Each change is saved in a list. The changes can be
selected and undone. LEVEL3
Format: Numerical value 597110-04
input: 0 to 1000 (larger values are not
meaningful)
Default: 20

784 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
suppressUsrMsg Suppress the Key non-functional error Change at –
message any time
106502
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
 TRUE
The TNC 640 does not output the Key non-
functional error message.
 FALSE
The TNC 640 displays all error messages.
Default: No value (behavior as for FALSE)
dispParamNumbers Display the symbolic names or the number of Change at 571
machine parameters in the change list any time
106503
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-04
 TRUE
Number of the machine parameter is displayed.
 FALSE
Symbolic name of the machine parameter is
displayed.
Default: No value (behavior as for FALSE)
hideWriteProtected Hide write-protected parameters Change at 588
any time
106504 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 TRUE
Hide write-protected configuration objects.
 FALSE
Display all configuration objects
Default: TRUE

January 2015 4.11 List of machine parameters 785


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
Network
Configuration of interface connections
Serial
Configuration of serial interfaces
CfgSerialPorts
Data record belonging to the serial port;
The data record for configuring the serial port is stored in CfgSerialInterface.
activeRs232 Enable the RS-232 interface in the program Change at 2731
manager any time
106601
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL2
Input:
597110-03
 TRUE
The RS-232 interface is enabled in the program
manager and shown as a drive icon (RS232:).
 FALSE
The RS-232 interface cannot be accessed via
the program manager.
Default: FALSE
interfaceRs232 Key name of the data record for the RS-232 Change at 2731
interface any time
106602
(NOTHING)
Define the default parameter set for the serial
RS-232 interface here. The "Default" data record is LEVEL2
selected by default. But you can use any desired
designation. The specified data record must be
contained in CfgSerialInterface. The data record
is not effective if another record was activated by
the PLC.
Format: String
Input: Max. 18 characters
interfacePlc Key names of the data records for interface Change at 2732
access by the PLC any time
106605
(NOTHING)
Here you can enter a maximum of three different
key names for interface accesses by the PLC. If LEVEL2
no parameter set is specified, the control
automatically uses the default parameter set
defined in CfgSerialInterface.
Format: List [0 to 2]
Input: String, max. 18 characters

786 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
baudRateLsv2 Data transfer rate for LSV2 communication in Change at 2732
baud any time
106606
(NOTHING)
Format: Selection menu
LEVEL2
Input: BAUD_110
BAUD_150
BAUD_300
BAUD_600
BAUD_1200
BAUD_2400
BAUD_4800
BAUD_9600
BAUD_19200
BAUD_38400
BAUD_57600
BAUD_115200
Default: BAUD_115200
CfgSerialInterface
Definition of data records for the serial ports;
[Key name of the data record for the serial port]
Under each key name, the properties of a serial port are defined. The data record to be active is
specified under CfgSerialPorts.
baudRate Data transfer rate in baud Change at 2734
any time
106701 Format: Selection menu
(NOTHING)
MP5040 Input: BAUD_110
LEVEL2
BAUD_150
BAUD_300
BAUD_600
BAUD_1200
BAUD_2400
BAUD_4800
BAUD_9600
BAUD_19200
BAUD_38400
BAUD_57600
BAUD_115200
Default: BAUD_19200

January 2015 4.11 List of machine parameters 787


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
protocol Communications protocol Change at 2734
any time
106702 Format: Selection menu
(NOTHING)
MP5030 Input:
LEVEL2
 STANDARD
Standard data transfer. Data transferred line-by-
line.
 BLOCKWISE
Packet-based data transfer, ACK/NAK protocol.
Blockwise data transfer is controlled by the
control characters ACK (Acknowledge) and NAK
(Not Acknowledge).
 RAW_DATA
Data transferred without protocol. Transfer of
characters without control characters. Protocol
intended for transfer of data of the PLC.
Default: STANDARD
dataBits Data bits in each transferred character Change at 2735
any time
106703 Format: Selection menu
(NOTHING)
MP5020 bit 0 Input:
LEVEL2
 7 bits:
7 bits are transferred for each character
transferred.
 8 bits:
8 data bits are transferred for each character
transferred.
Default: 8 bits
parity Type of parity checking Change at 2735
any time
106704 Format: Selection menu
(NOTHING)
MP5020 bit 4/5 Input:
LEVEL2
 NONE
No parity formation
 EVEN
Even parity
 ODD
Odd parity
Default: NONE
stopBits Number of stop bits Change at 2736
any time
106705 Format: Selection menu
(NOTHING)
MP5020 bit 6/7  1 stop bit
1 stop bit is appended after each transferred LEVEL2
character.
 2 stop bits
2 stop bits are appended after each transferred
character.
Default: 1 stop bit

788 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
flowControl Type of data-flow checking (handshake) Change at 2738
any time
106706 Format: Selection menu
(NOTHING)
MP5020 bit 2/3 Input:
LEVEL2
 NONE
No data-flow checking; handshaking not active
 RTS_CTS
Hardware handshaking; transfer is stopped with
RTS active
 XON_XOFF
Software handshaking; transfer is stopped with
DC3 (XOFF) active
Default: RTS_CTS
fileSystem File system for file operation via serial Change at 2738
interface any time
106707
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL2
Input:
 EXT
Minimum file system for external devices.
Corresponds to the EXT1 and EXT2 modes of
earlier TNC controls. Use these settings if you
are using printers, punches, or non-
HEIDENHAIN data transfer software.
 FE1
Use this setting for communication with the
external HEIDENHAIN FE 401 B or FE 401
floppy disk unit as of software 230626-03, or for
communication with the "TNCserver" PC
software from HEIDENHAIN.
Default: EXT
bccAvoidCtrlChar Block Check Character (BCC) is not a control Change at 2739
character any time
106708
(NOTHING)
Format: Selection menu
MP5020 bit 1
LEVEL2
Input:
(optional parameter)
 TRUE
Ensures that the check sum does not
correspond to a control character
 FALSE
Function not active
Default: FALSE

January 2015 4.11 List of machine parameters 789


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
rtsLow Idle state of the RTS line Change at 2740
any time
106709 Format: Selection menu
(NOTHING)
MP5020 bit 8 Input:
LEVEL2
 TRUE
The idle state of the RTS line is logical LOW 597110-03
 FALSE
The idle state of the RTS line is at logical HIGH.
Default: FALSE
noEotAfterEtx Behavior after receiving an ETX-control Change at 2740
character any time
106710
(NOTHING)
Format: Selection menu
MP5020 bit 9
LEVEL2
Input:
 TRUE
No EOT control character is sent after reception
of an ETX control character.
 FALSE
The control sends an EOT control character
after reception of an ETX control character.
Default: FALSE
CfgServiceRequest (optional parameter)
Settings for the TeleService 2.0 software for PCs;
Configuration of the SERVICE-REQUEST soft key. Can be used by the machine operator to initiate a
service request if servicing is required.
name Logical name of the service host Change at 2750
any time
114601 The name identifies the remote service host and
(NOTHING)
can be displayed on the user interface of the
control. LEVEL2
Format: String 597110-03
Input: Max. 500 characters
Default: No value
host Network address or host name of the remote Change at 2751
service host any time
114602
(NOTHING)
Enter the network address as four decimal
numbers separated by periods (IP address in LEVEL2
dotted-decimal notation) or as a fully qualified host
597110-03
name (e.g.
192.168.10.51
\HOME\DATA\SERVICE
Format: String
Input: Max. 500 characters
Default: No value

790 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
port Port number of the remote service host Change at 2751
any time
114603 The control sends the service request report to
(NOTHING)
the port entered here.
LEVEL2
Format: Numerical value
597110-03
Input: 0 to 2 147 483 647
Default: 19001
content Contents of the message to the remote service Change at 2751
host any time
114604
(NOTHING)
The contents serve to identify the machine,
e.g. machine model and serial number. LEVEL2
Format: String 597110-03
Input: Max. 500 characters
Default: No value
period Duration of repeated transmission of the Change at 2751
message to the service host any time
114605
(NOTHING)
Transmission of the report is repeated during the
(optional parameter)
specified period of time in seconds until the LEVEL2
function is activated or the time entered in the
597110-03
MP_timeOut parameter is exceeded.
Format: Numerical value
Input: 0 to 10 [s]
Default: 10 [s]
timeout Timeout in minutes for transmission of the Change at 2752
message to the remote service host any time
114606
(NOTHING)
Transmission is interrupted if the server could not
(optional parameter)
detect any data traffic during the configured LEVEL2
period of time.
597110-03
Format: Numerical value
Input: 0 to 15 [min]
Default: 15 [min]
serverIp Network address or host name of the server Change at 2752
any time
114607 The data traffic of the specified server(s) is
(NOTHING)
checked. The default value is the server given in
(optional parameter)
the MP_host parameter. LEVEL2
Format: String 597110-03
Input: Max. 500 characters
Default: No value

January 2015 4.11 List of machine parameters 791


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
serverIpMask Subnet mask of the server network Change at 2752
any time
114608 Enter the subnet mask of the server as four
(NOTHING)
decimal numbers separated by periods (IP
(optional parameter)
address in dotted-decimal notation). LEVEL2
Format: String 597110-03
Input: Max. 500 characters
Default: No value
CfgAccessControl
Define the connection settings
denyAllConnections Activation of the computer-specific access Change at 2749
control any time
123403
(NOTHING)
Format: Selection menu
LEVEL1
Input:
597110-06
 FALSE
Computer-specific access control active
 TRUE
Computer-specific access control deactivated
Default: FALSE
Key code
Define code numbers
CfgChangePassword (optional parameter)
Changing of existing HEIDENHAIN code numbers into OEM code numbers
[Key name = Existing HEIDENHAIN code number]
Specify the existing HEIDENHAIN code number to be replaced by an OEM code number, e.g. 807667,
95148, etc.
replaceWith New OEM password or code number Change at 1888
any time
120501 Specify numerals and/or capital letters.
(NOTHING)
The HEIDENHAIN password indicated in the key
LEVEL3
name is replaced by the new OEM password
defined here. 597110-05
Format: String
Input: Max. 18 characters
Default: No value

792 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
hideOriginal Lock previous HEIDENHAIN code number Change at 1888
any time
120502 Format: Selection menu
(NOTHING)
(optional parameter) Input:
LEVEL3
 TRUE
The previous HEIDENHAIN code number is 597110-05
disabled.
 FALSE
The previous HEIDENHAIN code number
remains in effect.
Default: FALSE
CfgOemPassword
Define OEM-specific code numbers / passwords:
The code numbers or passwords are used to enable functions. Examples:
 Activating the configuration editor with a specific layout
 Displaying soft keys in the MOD dialog
 Evaluating the password / code number in the PLC program
[Key name = OEM-specific code number / password]
If soft keys are to be provided in the MOD dialog permanently, enter the key name Default.
funcList List of function names (= key names) that are Shut down 617
called by entering the password control
106901
(RESET)
Name of the functions that are called by entering
the password. Enter these names as key names LEVEL3
in CfgModOemSoftkey and
CfgCfgEditActivate.
The password is defined by the key name in
CfgOemPassword.
Format: List [0 to 199]
Input: Max 18 characters

January 2015 4.11 List of machine parameters 793


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgModOemSoftkey
Soft key in the MOD dialog;
Define a soft key in the MOD dialog, e.g. for activating the configuration editor with a certain layout.
[Key name of the soft key]
The key name must be entered in CfgOemPassword/funcList.
activation Specifies whether the defined function is a Shut down 617
foreground application control
107101
(RESET)
Format: Selection menu
LEVEL3
Input:
 TRUE
The defined function is a foreground application,
e.g. configuration editor. Set this value if the
soft key opens the configuration editor to
display user parameters.
 FALSE
Function performed in the background
Default: FALSE
skPos Position of the soft key in the 3rd menu bar Shut down 617
control
107102 0= First soft key at left. Menu bars 1 and 2 are
(RESET)
reserved for HEIDENHAIN. Leave empty if no soft
(optional parameter)
key is to be displayed. LEVEL3
Format: Numerical value
Input: 0 to 7
buttonText
Soft-key text;
Specify a language-neutral text or the name of a text from a language-sensitive text file. Leave empty
if you enter an image for a graphic soft key in MP_buttonImage.
dialogRes Name of a text Shut down 618
control
107103 See entry under CfgColumnText/dialogText
(RESET)
LEVEL3
text Language-sensitive text Shut down 618
control
107103 See entry under CfgColumnText/dialogText
(RESET)
LEVEL3
buttonImage Image for graphic soft key Shut down 619
control
107104 Path/file name to an image for a soft key
(RESET)
(optional parameter) Do not assign the parameter if you have defined a
LEVEL3
text for the soft key under buttonText.
Format: String
Input: Max. 260 characters

794 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
funcKey Key name of the function being activated Shut down 619
when the soft key is pressed control
107105
(RESET)
Key name of the function that is activated by
(optional parameter)
entering the password. Only specify if the name LEVEL3
of the function to be activated does not match the
key name under CfgModOemSoftkey.
Format: String
Input: Max. 18 characters
helpId Symbolic name of the context information for Shut down 619
online help (*.CHM) control
107106
(RESET)
The entered symbolic name can belong to a
(optional parameter)
HEIDENHAIN or OEM manual. LEVEL3
Format: String
Input: Context ID
Max. 80 characters
CfgCfgEditActivate
Specifies the configuration editor view that is opened by entering the OEM password;
The OEM can configure the tree structure and parameter display according to his requirements.
[Key name of view of configuration editor]
As key name, use the function name entered in CfgOemPassword/funcList or
CfgModOemSoftkey/funcKey.
HEIDENHAIN has already configured CFGEDIT-USER123 and CFGEDIT-USERPARAM.
layoutFile Path/name of the XML layout file for user Change at 620
parameters any time
107201
(NOTHING)
The layout file defines the tree structure and the
attributes to be displayed for the configuration LEVEL3
editor.
597110-01
Format: String
Input: Max. 80 characters
dispLangText Display language-sensitive names in the Change at 621
configuration editor? any time
107202
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-01
 TRUE
The detailed language-sensitive names are
displayed.
 FALSE
The symbolic English system names are
displayed.
Default: TRUE

January 2015 4.11 List of machine parameters 795


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
readOnly Open the configuration editor with read- Change at 620
access only any time
107203
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-01
 TRUE
The configuration editor is opened with read
access only; the parameter values cannot be
changed
 FALSE
The configuration editor is opened with read
and write access
Default: No value (behavior as for FALSE)
Versions
Software version of the PLC, software type and version of the NC
CfgPlcVersion
PLC program version
plcVersion PLC software version Change at 2380
any time
107301 Format: String
(NOTHING)
Input: Software version (max. 64
LEVEL2
characters)
versionText (optional parameter)
Language-sensitive description for PLC version. Text name from the text resource file (for language-
sensitive texts) or texts that are understood in all languages.
dialogRes Name of a text Change at –
any time
107103 See entry under CfgColumnText/dialogText
(NOTHING)
LEVEL2
text Language-sensitive text Change at –
any time
107103 See entry under CfgColumnText/dialogText
(NOTHING)
LEVEL2

796 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
ProbeSettings
Touch-probe configuration
CfgProbes
Specifies the behavior of the TNC 640 during probing.
activeTT Active TT tool touch probe Change at 2283
any time
122601 Specifies the TT tool touch probe that is to be
(NOTHING)
activated. Enter the key name from the CfgTT
configuration object. LEVEL1
597110-06
maxTouchFeed Absolute maximum probing feed rate Change at 2277
any time
122602 Limitation of values from touch probe table.
(NOTHING)
Format: Numerical value
LEVEL1
Input: 0 to 99 960 [mm/min]
597110-01
With max. 9 decimal places
Default: 960
overrideForMeasure Feed-rate override during probing Change at 2277
any time
122604 Specifies whether the feed-rate override is in
(NOTHING)
effect during probing.
LEVEL1
Format: Selection menu
597110-09
Input:
 TRUE
Feed-rate override is enabled during probing.
 FALSE
Feed-rate override is not enabled during
probing. The NC sets the feed rate to 100%.
Default: FALSE
activeEnDatSE Transceiver unit with EnDat interface Change at –
any time
122603 Parameter reserved. Do not change default
(NOTHING)
value!
MP6509
LEVEL1
Use the parameter to specify the type of interface
(reserved parameter)
for the connected transmitter/receiver unit.
Format: Selection menu
Input:
 TRUE
Transceiver unit with EnDat interface
 FALSE
Transceiver unit without EnDat interface
Default: FALSE

January 2015 4.11 List of machine parameters 797


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgTS
Specifies the behavior of the TNC 640 during probing.
Use the key name of the spindle for which this configuration of the probing behavior is to apply.
mStrobeUTurn M function for probing from opposite Allowed in 2281
orientations strobe
122501
(SYNC)
Enter the number of the M function for spindle
MP6160
orientation by the PLC. LEVEL1
Format: Numerical value 597110-02
Input: –1 to 999
–1: Spindle orientation directly
by the NC
0: Function not active
1 to 999: Number of the M function
for spindle orientation by the PLC
Default: 0
mStrobePos M function for orienting the touch probe Allowed in 2281
before each probing procedure strobe
122502
(SYNC)
Enter the number of the M function for spindle
MP6161
orientation by the PLC. LEVEL1
Format: Numerical value 597110-02
Input: –1 to 999
–1: Spindle orientation directly
by the NC
0: Function not active
1 to 999: Number of the M function
for spindle orientation by the PLC
Default: 0

798 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgTT
Configuration of tool measurement with the TT tool touch probe
Enter any name for the TT tool touch probe as key name.
For example: TT140_1
The parameter CfgProbes/activeTT defines which tool touch probe is active.
type Type of tool touch probe used Program 2283
run is
122701 Format: Selection menu
locked
Input: (RUN)
 TT140 LEVEL1
TT 140 tool touch probe connected
597110-06
 TT449
TT 449 tool touch probe connected
 OEM
Customer-specific touch probe connected
Default: TT140
port Input of the relevant tool touch probe Program 2283
run is
122702 Format: Selection menu
locked
Input: (RUN)
 X112 LEVEL1
 X113 597110-06
 X12
 X13
Default: X113
stylusType Type of probe contact being used Program 2286
run is
122703 Format: Selection menu
locked
MP6500, bit 0 Input: (RUN)
 NoTT LEVEL1
No TT tool touch probe connected. The cycles
for tool measurement are locked. 597110-03
 RoundStylus
Use this setting for the TT 130 and TT 140 tool
touch probes from HEIDENHAIN.
 RectangularStylus
Select this setting for the HEIDENHAIN TT 140
tool touch probe with rectangular contact plate
for lathe tool calibration.
Default: NoTT

January 2015 4.11 List of machine parameters 799


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
spindleOrientMode M function for spindle orientation Program 2287
run is
122704 Format: Numerical value
locked
MP6560 Input: –1 to 999 (RUN)
 -1 LEVEL1
Spindle orientation directly by NC
597110-03
0
Function not active, individual tooth
measurement not possible; tool radius
measurement possibly faulty
 1 to 999
Number of the M function for spindle
orientation through PLC
Default: –1
probingRoutine Probing routine Program 2290
run is
122705 Format: Selection menu
locked
MP6500, bit 8 Input: (RUN)
 MultiDirections LEVEL1
The probe contact is probed from several
directions. 597110-05
 SingleDirection
The probe contact is probed from one direction.
Default: MultiDirections
probingDirRadial Probing direction for tool radius measurement Program 2287
run is
122706 Format: Selection menu
locked
MP6505 Input: X_Positive (RUN)
Y_Positive
LEVEL1
X_Negative
Y_Negative 597110-03
Z_Positive
Z_Negative
Default: X_Positive
offsetToolAxis Distance from tool lower edge to probe Program 2287
contact upper edge for tool radius run is
122707
measurement locked
MP6530 (RUN)
Format: Numerical value
LEVEL1
Input: 0.001 to 99.9999 [mm]
597110-03
Default: 5
rapidFeed Rapid traverse in probing cycle for TT table Program 2288
touch probe run is
122708
locked
Format: Numerical value
MP6550 (RUN)
Input: 10 to 300 000 [mm/min]
LEVEL1
Default: 600
597110-03

800 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
probingFeed Probing feed rate for tool measurement with Program 2293
non-rotating tool run is
122709
locked
Format: Numerical value
MP6520 (RUN)
Input: 1 to 3000 [mm/min]
LEVEL1
Default: 60
597110-03
probingFeedCalc Calculation of the probing feed rate Program 2293
run is
122710 Format: Selection menu
locked
MP6507 Input: (RUN)
 ConstantTolerance LEVEL1
Calculation of the probing feed rate with
constant tolerance 597110-03
 VariableTolerance
Calculation of the probing feed rate with
variable tolerance
 ConstantFeed
Constant probing feed rate
Default: ConstantTolerance
spindleSpeedCalc Speed determination method Program 2292
run is
122711 Format: Selection menu
locked
MP6500, bit 4 Input: (RUN)
 Automatic LEVEL1
Automatically determine speed
597110-03
 MinSpindleSpeed
Always use minimum spindle speed
Default: Automatic
maxPeriphSpeedMeas Maximum permissible surface speed of the Program 2293
tool edge for radius measurement run is
122712
locked
Format: Numerical value
MP6570 (RUN)
Input: 1 to 129 [m/min]
LEVEL1
With max. 4 decimal places
597110-03
Default: 30
maxSpeed Maximum permissible speed during tool Program 2293
measurement run is
122714
locked
Format: Numerical value
MP6572 (RUN)
Input: 0 to 1000 [min–1]
LEVEL1
0: 1000 [min–1]
597110-03
Default: 0

January 2015 4.11 List of machine parameters 801


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
measureTolerance1 Maximum permissible measuring error for Program 2294
tool measurement with rotating tool run is
122715
(1st measuring error) locked
MP6510.0 (RUN)
Format: Numerical value
LEVEL1
Input: 0.001 to 0.999 [mm]
597110-03
Default: 0.005
measureTolerance2 Maximum permissible measuring error for Program 2294
tool measurement with rotating tool run is
122716
(2nd measuring error) locked
MP6510.1 (RUN)
Format: Numerical value
LEVEL1
Input: 0.001 to 0.999 [mm]
597110-03
Default: 0.01
stopOnCheck NC stop during tool check Program 2295
run is
122717 Format: Selection menu
locked
MP6500, bit 5 Input: (RUN)
 TRUE LEVEL1
If the breakage tolerance is exceeded, the NC
program is stopped and the error message Tool 597110-03
broken is displayed.
 FALSE
The NC program is not stopped when the
breakage tolerance is exceeded.
Default: TRUE
stopOnMeasurement NC stop during tool measurement Program 2295
run is
122718 Format: Selection menu
locked
MP6500, bit 6 Input: (RUN)
 TRUE LEVEL1
If the breakage tolerance is exceeded, the NC
program is stopped and the error message 597110-03
Touch point inaccessible is displayed.
 FALSE
The NC program is not stopped when the
breakage tolerance is exceeded.
Default: TRUE

802 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
adaptToolTable Change the tool table during tool check and Program 2295
measurement run is
122719
locked
Format: Selection menu
MP6500, bit 11 (RUN)
Input:
LEVEL1
 AdaptNever
After "tool checking" and "tool measurement" 597110-03
the tool table is not changed.
 AdaptOnBoth
After "tool checking" and "tool measurement"
the tool table is changed.
 AdaptOnMeasure
After "tool measurement" the tool table is
changed
Default: AdaptOnBoth
radioTransmission Activate radio transmission for TT tool touch Program –
probe run is
122720
locked
Parameter reserved. Use only in consultation
MP6502 (RUN)
with HEIDENHAIN.
LEVEL1
Defines the type of transmission for the wireless
TT tool touch probe. 597110-08
Format: Selection menu
Input:
 TRUE
Radio transmission is selected.
 FALSE
Infrared transmission is selected.
Default: FALSE
CfgTTRoundStylus
Configuration of a round probe contact for tool measurement
centerPos Coordinates of the stylus center Program 2290
run is
114201 Format: List [0 to 2]
locked
MP6580 Input: –99 999.9999 to (RUN)
MP6581 +99 999.9999 [mm]
LEVEL1
MP6582 [0]: X coordinate
[1]: Y coordinate 597110-03
[2]: Z coordinate
Default: 0

January 2015 4.11 List of machine parameters 803


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
stylusAxis Alignment of the probe contact of the TT tool Program 2290
touch probe run is
114205
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL1
 Default
Alignment is derived from the TOOL CALL 597110-03
programmed.
 X_Positive
Stylus axis points in the direction of the positive
X axis.
 Y_Positive
Stylus axis points in the direction of the positive
Y axis.
 Z_Positive
Stylus axis points in the direction of the positive
Z axis.
 X_Negative
Stylus axis points in the direction of the
negative X axis.
 Y_Negative
Stylus axis points in the direction of the
negative Y axis.
 Z_Negative
Stylus axis points in the direction of the
negative Z axis.
Default: Default
stylusDimension Diameter of the probe contact of the TT tool Program 2289
touch probe run is
114202
locked
Format: Numerical value
MP6531 (RUN)
Input: 0.001 to 99.9999 [mm]
LEVEL1
Default: 40
597110-03
safetyDistToolAx Safety clearance around the probe contact of Program 2288
the TT tool touch probe for pre-positioning in run is
114203
the tool-axis direction locked
MP6540.0 (RUN)
Format: Numerical value
LEVEL1
Input: 0.001 to 99 999.9999 [mm]
597110-03
Default: 10
safetyDistStylus Safety zone around the probe contact of the Program 2288
TT tool touch probe for pre-positioning run is
114204
locked
Safety clearance in the plane perpendicular to the
MP6540.1 (RUN)
tool axis
LEVEL1
Format: Numerical value
597110-03
Input: 0.001 to 99.9999 [mm]
Default: 5

804 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgUnbalance (optional parameter)
Setting for balancing the tool in turning mode.
In the spindle configuration folder, create one parameter set per lathe spindle for which the balancing
is to be configured in turning operation.
spindle Selection of lathe spindle Pgm run 1646
locked
120101 Select the key of the spindle from the list of axis
(RUN)
key names to which this configuration of the
balance measurement is to apply. LEVEL3
Format: Selection menu 597110-05
Input: Key names from CfgAxes/axisList
maxSpeed Maximum permissible speed for unbalance Pgm run 1646
measurement locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: 0 to 1200 [1/min]
597110-05
Default: 400 [1/min]
radialPosition Default radial position at start of unbalance Pgm run 1646
measurement locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: Position in [mm]
597110-05
Maximum
value: 2 147 483 647
Default: 0
offset Offset for alignment of the rotary table Pgm run 1647
locked
120101 Format: Numerical value
(RUN)
Input: Offset in [°]
LEVEL3
Maximum
597110-05
value: 2 147 483 647
Default: 0
axisOfMeasure Axis for measured value capture Pgm run 1647
locked
120101 Select the key of the axis from the list of axis key
(RUN)
names, the following errors of which are to be
used for detecting the unbalance measurements. LEVEL3
Format: Selection menu 597110-05
Input: Key names from CfgAxes/axisList
Default: No value

January 2015 4.11 List of machine parameters 805


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
triggerMin Lower limit for trigger Pgm run 1647
locked
120101 Lower limit of the trigger window.
(RUN)
Enter the permissible speed deviation from the
nominal value in percent. LEVEL3
Format: Numerical value 597110-05
Input: 0 to 100 [%]
Default: 5 [%]
triggerMax Upper limit for trigger Pgm run 1648
locked
120101 Upper limit of the trigger window.
(RUN)
Enter the permissible speed deviation from the
nominal value in percent. LEVEL3
Format: Numerical value 597110-05
Input: 0 to 100 [%]
Default: 5 [%]
maxUnbalance Maximum permissible unbalance amplitude Pgm run 1648
(following error) locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: Following error of measuring axis
[mm] 597110-05
Default: No value
minUnbalance Minimum permissible unbalance deflection Pgm run 1648
(following error) locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: Following error of measuring axis
[mm] 597110-05
Default: No value
maxUnbalanceUsr Maximum permissible unbalance (user Pgm run 1649
monitor) locked
120101
(RUN)
Format: Numerical value
LEVEL1
Input: Following error of measurement
axis [mm] 597110-05
Default: 0
limitUnbalanceUsr Maximum unbalance sum (user monitor) Pgm run 1649
locked
120101 Format: Numerical value
(RUN)
Input: Following error of measurement
LEVEL1
axis [mm]
597110-05
Default: 0

806 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
maxUnbalanceOem Maximum permissible unbalance (system Pgm run 1648
monitor) locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: Following error of measurement
axis [mm] 597110-05
Default: 0
limitUnbalanceOem Maximum unbalance sum (system monitor) Pgm run 1649
locked
120101 Format: Numerical value
(RUN)
Input: Following error of measurement
LEVEL3
axis [mm]
597110-05
Default: 0
mStrobeSpindleCCW M function for spindle left Pgm run 1649
locked
120101 Format: Numerical value
(RUN)
Input: –1: Use standard function
LEVEL3
(e.g. M3, M4, M5)
1 to 999: Number of the M function 597110-05
Default: –1
mStrobeSpindleCW M function for spindle right Pgm run 1650
locked
120101 Format: Numerical value
(RUN)
Input: –1: Use standard function
LEVEL3
(e.g. M3, M4, M5)
1 to 999: Number of the M function 597110-05
Default: –1
mStrobeSpindleStop M function for spindle stop Pgm run 1650
locked
120101 Format: Numerical value
(RUN)
Input: –1: Use standard function
LEVEL3
(e.g. M3, M4, M5)
1 to 999: Number of the M function 597110-05
Default: –1
mStrobeOrient M function for spindle orientation Pgm run 1650
locked
120101 Format: Numerical value
(RUN)
Input: –1: Spindle orientation via NC
LEVEL3
0: Function inactive
1 to 999: Number of the M function 597110-05
Default: 0
tableCalibrate Path/name of the unbalance calibration table Pgm run 1650
of the rotary table locked
120101
(RUN)
Format: String
LEVEL3
Input: Path/name of the table *.ubc
Max. 80 characters 597110-05

January 2015 4.11 List of machine parameters 807


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
timeOut Window for unbalance detection Pgm run 1650
locked
120102 Enter the time window for the measuring
(RUN)
process, in which the trigger condition for the
measuring of balance must be fulfilled. LEVEL3
Format: Numerical value 597110-05
Input: 0 to 100 [s]
Default: 10 [s]
CfgAfc (optional parameter, software option 45)
AFC—Adaptive Feed Control
The contouring feed rate is controlled depending on the respective spindle power in percent.
enable Activating/deactivating AFC Change at 1455
any time
120001 Format: Selection menu
(NOTHING)
MP7246, bit 3 Input:
LEVEL3
 off
AFC is deactivated. 597110-06
 on
AFC is activated.
Default: off
plcControl PLC word marker as AFC input quantity Change at 1443
activate/deactivate any time
120002
(NOTHING)
Control input variable = Value from PLC word
(optional parameter)
marker PP_ChnAfcPlcControl (instead of the LEVEL3
spindle power in percent)
597110-06
(50 % of spindle power corresponds to an entry of
500 in the word marker)
Format: Selection menu
Input:
 off
AFC control input variable from controller
(spindle power in percent)
 on
AFC control input variable from PLC
Default: No value

808 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
CfgWorkingRange (optional parameter)
Configuration of traverse ranges
Under each key name, you define the properties of a traverse range. They include various functions
and conditions of the TNC 640 that can be activated when a traverse range is switched, see "Traverse
ranges" on page 1112.
[Arbitrary key name of the traverse range]
kinCompositeModel Kinematics to be activated from Allowed in 1114
CfgKinCompositeModel strobe
123901
(RUN)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-08
Key names of the kinematics configured in
CfgKinCompositeModel. Enter the kinematics
to be selected when this traverse range is
activated.
Default: No value, parameter optional
axes Activate/deactivate axes; switch the Allowed in 1114
parameter set strobe
123902
(RUN)
Format: List [0 to 23]
(optional parameter)
LEVEL3
Input:
597110-08
Up to 24 lists with the MP_axis, MP_activation
and MP_parSet parameters for this traverse
range. Defines actions for physical axes when the
traverse range is activated/deactivated.
Default: No value, parameter optional
axis Physical axis Allowed in 1115
strobe
123902 Format: Selection menu
(RUN)
(optional parameter) Input:
LEVEL3
Key name of the physical axis from Axes/
597110-08
PhysicalAxis
Default: No value, parameter optional
activation Activate/deactivate axis Allowed in 1115
strobe
123902 Format: Selection menu
(RUN)
(optional parameter) Input:
LEVEL3
Defines whether the axis specified in MP_axis is
597110-08
activated or deactivated on selection of this
traverse range:
 Activate
Axis is activated.
 Deactivate
Axis is deactivated.
Default: No value, parameter optional

January 2015 4.11 List of machine parameters 809


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
parSet Parameter set Allowed in 1115
strobe
123902 Format: Selection menu
(RUN)
(optional parameter) Input:
LEVEL3
Key name of the parameter set from Axes/
597110-08
ParameterSets, which, on activation of this
traverse range, becomes effective for the axis
specified in MP_axes.
Default: No value, parameter optional
basisTrans Path of the preset table *.pr for this traverse Allowed in 1115
range strobe
123903
(RUN)
Format: String
(optional parameter)
LEVEL3
Input: Path, max. 500 characters
597110-08
Default: No value, parameter optional
activeTT Active TT tool touch probe for this traverse Allowed in 1116
range strobe
123904
(RUN)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-08
Key name of the tool touch probe from CfgTT
Default: No value, parameter optional
plcMarker PLC status marker for traverse range Allowed in 1116
strobe
123905 Format: String
(RUN)
(optional parameter) Input:
LEVEL3
Symbolic name or number for a PLC marker.
597110-08
The TNC 640 sets this marker to 0 when the
traverse range is deactivated. After successful
switchover to the traverse range, the marker is
set to 1.
Default: No value, parameter optional

810 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number Access
iTNC MP number SW vers.
handwheelAxes Selection of axes for the handwheel for this Allowed in 1117
traverse range strobe
123906
(RUN)
Select the axes to be moved with the handwheel.
(optional parameter)
LEVEL3
Overwrites the previous axis assignment of the
handwheel (CfgHandwheel/selectAxes). 597110-08
Extra information:
 On portable handwheels with axis keys,
e.g. HR 410:
Make a list entry for each axis key on the
handwheel. The sequence of the list sets the
assignment to the axis keys X, Y, Z, IV, V,
VT_Axis on the handwheel.
 With HR 150 panel-mounted handwheels
through HRA 110:
Handwheel on X1 of HRA 110: 1st list entry
Handwheel on X2 of HRA 110: 2nd list entry
Handwheel on X3 of HRA 110: The initialization
parameters and the position of the selection
switch set which list entry is to be used.
 With HR 130 panel-mounted handwheel:
Do not define parameter. The axes are assigned
via the PLC program (e.g. Module 9036).
Format: List [0 to 23]
Input: Select the axes using the selection
menu

January 2015 4.11 List of machine parameters 811


4.11.2 "Channels" group
Channel-specific machine parameters.

Parameter Function and input Reaction/ Page


MP number Access
iTNC MP number SW
version
Kinematics
Configuration of the machine kinematics
CfgKinComposModel
Kinematic model—composed of partial kinematics
[Key name of the kinematics model]
subKinList List of key names of the subkinematics Allowed in 1195
strobe
202901 Enter the subkinematics comprising the machine
(SYNC)
kinematics, going from the tool to the workpiece.
LEVEL3
Format: List [0 to 5]
597110-03
Input: Key name from
CfgKinSimpleModel
activeSpindle Key name of the active spindle of this Allowed in 1196
kinematics model strobe
202902
(SYNC)
Format: String
LEVEL3
Input: Key name of the spindle from
System/CfgAxes/axisList 597110-03
tiltingAllowed Tilting the working plane is allowed Allowed in 1196
strobe
202904 Format: Selection menu
(SYNC)
(optional parameter) Input:
LEVEL3
 TRUE
Tilting the working plane is allowed with this 597110-04
kinematic model.
 FALSE
Tilting the working plane is not allowed with this
kinematic configuration. The TNC 640 displays
an error message.
Default: TRUE
CfgKinSimpleModel
Definition of subkinematics
[Key name of subkinematics]
kinObjects List of key names of objects in the kinematics Allowed in 1193
chain strobe
202801
(SYNC)
Format: List [0 to 49]
LEVEL3
Input: Key names of objects from
CfgKinSimpleTrans 597110-03
CfgKinSimpleAxis
CfgKinAnchor

812 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
progAxes Programmable axes Allowed in 1194
strobe
202802 Format: List [0 to 11]
(SYNC)
(optional parameter) Input: Programmable axes for this
LEVEL3
subkinematic.
For a kinematics model, the 597110-08
programmable axes are
generated by
combining the
CfgKinSimpleModel/progAxes
and CfgChannelAxes/progAxis
associated lists.
Default: No value
CfgKinSimpleTrans
Definition of transformations in three dimensions
dir Direction of the transformation Allowed in 1192
strobe
202602 The selection of X, Y and Z indicates that it is a
(SYNC)
shift of the coordinate system in X, Y or Z
direction. If A, B, or C is indicated, then it is a LEVEL3
rotation of the coordinate system about the A, B
597110-03
or C axis.
Format: Selection menu
Input: X, Y, Z, A, B, C
val Value of the transformation Allowed in 1192
strobe
202602 Format: Numerical value
(SYNC)
Input: –999 999 999 to
LEVEL3
+999 999 999 [mm] or [°]
Max. 9 decimal places 597110-03
realtimeComp PLC operand for real-time kinematic Allowed in 1224
compensation strobe
202603
(SYNC)
The coordinate system is additionally shifted or
(optional parameter)
rotated by the value that the PLC operand LEVEL3
contains.
597110-05
The unit for the value transfer to the position
controller is 1/10000 mm or 1/10000 degrees.
Format: String
Input: PLC operand, max. 31 characters

January 2015 4.11 List of machine parameters 813


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
temperatureComp Formula for temperature compensation Allowed in 1224
strobe
202604 The coordinate system is additionally shifted or
(SYNC)
rotated by the value calculated with the formula.
(optional parameter)
References to PLC operands, constants and LEVEL3
mathematical operators are allowed.
597110-09
The unit for the value transfer to the position
controller is 1/10000 mm or 1/10000 degrees.
Format: String
Input: PLC operand (max. 240 characters)
CfgKinSimpleAxis
Definition of the machine axes in the kinematics chain
[Key name of the machine axis]
dir Direction of the machine axis Allowed in 1190
strobe
202701 Format: Selection menu
(SYNC)
Input: X, Y, Z, A, B, C
LEVEL3
597110-03
axisRef Reference to the associated axis Allowed in 1191
strobe
202702 Enter here the key name of the associated axis
(SYNC)
from System/CfgAxes/axisList.
LEVEL3
Format: String
597110-03
Input: Key name of axis
kinCompErr List of errors for KinematicsComp Allowed in 1494
strobe
202703 Format: List
(SYNC)
(optional parameter) Input: List of possible errors that can be
LEVEL3
compensated with KinematicsComp.
597110-09
Default: No value
locErrX Position error Allowed in 1494
strobe
202703.01601 Value of the position error in the indicated axis in
(SYNC)
X direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0

814 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
locErrY Position error Allowed in 1494
strobe
202703.01602 Value of the position error in the indicated axis in
(SYNC)
Y direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
locErrZ Position error Allowed in 1494
strobe
202703.01603 Value of the position error in the indicated axis in
(SYNC)
Z direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
locErrA Position error Allowed in 1494
strobe
202703.01604 Value of the position error in the indicated axis in
(SYNC)
A direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
locErrB Position error Allowed in 1494
strobe
202703.01605 Value of the position error in the indicated axis in
(SYNC)
B direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
locErrC Position error Allowed in 1494
strobe
202703.01606 Value of the position error in the indicated axis in
(SYNC)
C direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0

January 2015 4.11 List of machine parameters 815


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compErrX Component error Allowed in 1494
strobe
202703.01607 Formula for the component error in the indicated
(SYNC)
axis in X direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
compErrY Component error Allowed in 1494
strobe
202703.01608 Formula for the component error in the indicated
(SYNC)
axis in Y direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
compErrZ Component error Allowed in 1494
strobe
202703.01609 Formula for the component error in the indicated
(SYNC)
axis in Z direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
compErrA Component error Allowed in 1494
strobe
202703.01610 Formula for the component error in the indicated
(SYNC)
axis in A direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
compErrB Component error Allowed in 1494
strobe
202703.01611 Formula for the component error in the indicated
(SYNC)
axis in B direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0

816 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compErrC Component error Allowed in 1494
strobe
202703.01612 Formula for the component error in the indicated
(SYNC)
axis in C direction.
(optional parameter)
LEVEL3
Format: Numerical value
597110-09
Input: –999 999 999 to 999 999 999 [mm]
With max. 3 decimal places
Default: 0
errOnToolSide Sequence of compensations Allowed in 1494
strobe
202703.01613 Format: Selection menu
(SYNC)
(optional parameter) Input:
LEVEL3
 TRUE
The axis errors in the kinematic chain are 597110-09
entered as seen from the tool side. Sequence:
locErrX, locErrY, locErrZ, locErrA, locErrB,
LocErrC, compErrX, compErrY, compErrZ,
compErrA, compErrB, compErrC, axis.
 FALSE
The axis errors in the kinematic chain are
entered as seen from the workpiece side.
Sequence: compErrC, compErrB, compErrA,
compErrZ, compErrY, compErrX, locErrC,
locErrB, locErrA, locErrZ, locErrY, locErrX
Default: TRUE
resetLocErr Reset the position error Allowed in 1494
strobe
202703.01614 Format: Selection menu
(SYNC)
(optional parameter) Input:
LEVEL3
 TRUE
The position errors are reset on the opposite 597110-09
side of the axis. The position errors of an axis
therefore influence only the axis itself and not
the other axes in the kinematic chain.
 FALSE
Function not active
Default: TRUE

January 2015 4.11 List of machine parameters 817


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgKinAnchor
Definition of fixed points in the kinematics chain, e.g. machine base
[Key name of the anchor]
kindOfAnchor Fixed point in the kinematics chain Allowed in 1189
strobe
Specifies a fixed point in the kinematics chain. At
(SYNC)
present, only the definition of a machine base is
supported. LEVEL3
In the desired subkinematics 597110-03
(CfgKinSimpleModel), enter the machine base
(e.g. with the key name Base) at the appropriate
position in the list.
Format: Selection menu
Input: MachBase
CfgCMO (optional parameter)
Description of a Collision Monitoring Object (CMO)
The CMO is an object or part of the machine. It is to be monitored during machine movement for
collision with other potential collision objects.

It is possible to use uniform kinematics on machines with and without software option 40 (DCM).
Without software option 40, however, there is no protection against collisions, even if the kinematics
description contains CMOs.
[Key name of the collision object]
primitives List of references to objects of this CMO Program 2119
run is
119401 Format: Selection menu
locked
(optional parameter) Input: Geometric primitives: (RUN)
CfgCMOCylinder, CfgCMOCuboid,
LEVEL3
CfgCMOPlane, CfgCMOMesh3D
and transformations 597110-06
Default: No value
dontTest List of CMOs not to be tested Program 2119
run is
119402 Format: Selection menu
locked
(optional parameter) Input: Collision object: CfgCMO or (RUN)
Geometric primitives:
LEVEL3
CfgCMOCylinder, CfgCMOCuboid,
CfgCMOPlane, CfgCMOMesh3D 597110-06
Default: No value

818 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
active Include the CMO in the collision calculation Program 2119
run is
119403 Specifies whether this CMO is to be included in
locked
the collision calculation.
(RUN)
Format: Selection menu
LEVEL3
Input:
597110-06
 TRUE
CMO is included in the collision calculation.
 FALSE
CMO is not included in the collision calculation.
Default: TRUE
property Special properties of a CMO Program 2120
run is
119404 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TT_Probe LEVEL3
Indicates a TT touch probe.
During the tool measurement the touch probe is 597110-06
not monitored for collisions.
Define this setting only for a single CMO.
Default: No value
name Name displayed in the event of collision Program 2119
run is
119405 Enter an accurately descriptive name for the
locked
collision body. If the object collides, this text
(optional parameter) (RUN)
appears in an error message. More than one
collision object can have the same name. LEVEL3
Format: String 597110-06
Input: Name of the CMO (max. 32
characters)
Default: –

January 2015 4.11 List of machine parameters 819


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgCMOCylinder (optional parameter)
Definition of the geometric body "cylinder" ("cylinder" geometric primitive)
Define the cylinder by entering its radius and height. You have to indicate a reference to this cylinder
in the description of the CMO that includes it.
[Key name of the cylinder]
dir Direction of the cylinder axis Program 2114
run is
119101 For cylinders within a collision object, this entry
locked
specifies the positive direction of the cylinder axis
(RUN)
in the local coordinate system, which is given by
the previous coordinate transformations. LEVEL3
Format: Selection menu 597110-06
Input: X, Y, Z
Default: X
bottomCenter Cylinder: Center of the floor Program 2115
run is
119102 With this entry you describe the alignment of the
locked
center point of the cylinder floor surface in the
(RUN)
local coordinate system. You define the alignment
of the local coordinate system through the LEVEL3
coordinate transformations in the CMO
597110-06
description (or in the kinematic chain).
Format: Array [0...2]
Input: Numerical value
–999 999 999 to 999 999 999 [mm]
With max. 9 decimal places
Default: 0
radius Radius of the cylinder Program 2115
run is
119103 Specifies the radius of the cylinder
locked
Format: Numerical value (RUN)
Input: 0 to 999 999 999 [mm] LEVEL3
With max. 9 decimal places
597110-06
Default: 0
height Height of the cylinder Program 2115
run is
119104 Defines the cylinder height in the axis direction
locked
from MP_dir in the local coordinate system.
(RUN)
Format: Numerical value
LEVEL3
Input: 0 to 999 999 999 [mm]
597110-06
With max. 9 decimal places
Default: 0

820 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
name Name displayed in the event of collision Program 2116
run is
119105 Enter an accurately descriptive name for the
locked
cylinder. If the cylinder collides, this text appears
(optional parameter) (RUN)
in an error message. More than one cylinder can
have the same name. LEVEL3
Format: String 597110-06
Input: Name of the cylinder
(max. 32 characters)
Default: –
CfgCMOCuboid (optional parameter)
Definition of the geometric body "cuboid" ("cuboid" geometric primitive)
Define the cuboid by a corner and its dimensions. You have to indicate a reference to this cuboid in
the description of the CMO that includes it.
[Key name of the cuboid]
vertex Shifts a corner of the cuboid in the local Program 2116
coordinate system run is
119201
locked
With this entry you describe the alignment of the
(RUN)
cuboid in the local coordinate system.
You define the alignment of the local coordinate LEVEL3
system through the coordinate transformations in
597110-06
the CMO description (or in the kinematic chain).
Format: Numerical value
Input: –999 999 999 to 999 999 999 [mm]
With max. 9 decimal places
Default: 0
edgeLengths Edge lengths of the cuboid Program 2115
run is
119202 With this entry you define the edge lengths of the
locked
cuboid along the positive coordinate axes. You
(RUN)
can also enter negative values to describe edge
lengths in negative directions. LEVEL3
Format: Array [0...2] 597110-06
Input: Numerical value
–999 999 999 to 999 999 999 [mm]
With max. 9 decimal places
Default: 0

January 2015 4.11 List of machine parameters 821


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
name Name displayed in the event of collision Program 2116
run is
119203 Enter an accurately descriptive name for the
locked
cuboid. If the cuboid collides, this text appears in
(optional parameter) (RUN)
an error message. More than one cuboid can have
the same name. LEVEL3
Format: String 597110-06
Input: Name of the cuboid
(max. 32 characters)
Default: –
CfgCMOPlane (optional parameter)
Definition of the geometric body "half-space" ("half-space" geometric primitive)
The half-space is limited by a plane. Other CMOs are examined for collision with this plane. You have
to indicate a reference to this half-space in the description of the CMO that includes it.
[Key name of the plane]
axis Alignment of the limit plane Program 2114
run is
119301 The half-space is limited by a plane. The plane is
locked
perpendicular to the coordinate axis of the local
(RUN)
coordinate system as given in axis. You define
the alignment of the local coordinate system LEVEL3
through previous transformations in the CMO
597110-06
description (or in the kinematic chain).
Format: Selection menu
Input: X, Y, Z
Default: X
value Position of the limit plane Program 2114
run is
119302 Here you enter the intersection of the limit plane
locked
with the coordinate axis from the MP_axis
(RUN)
attribute.
LEVEL3
Format: Numerical value
597110-06
Input: –999 999 999 to 999 999 999 [mm]
With max. 9 decimal places
Default: 0

822 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
type Alignment of the half space Program 2114
run is
119303 Format: Selection menu
locked
Input: (RUN)
 LimitMin LEVEL3
The control reports a collision if other CMOs
encroach on the half-space in negative direction 597110-06
of the coordinate axis given in axis.
 LimitMax
The control reports a collision if other CMOs
encroach on the half-space in positive direction
of the coordinate axis given in axis.
Default: LimitMin
name Name displayed in the event of collision Program 2116
run is
119304 Enter an accurately descriptive name for the half-
locked
space. If the half-space collides, this text appears
(optional parameter) (RUN)
in an error message. More than one half-space
can have the same name. LEVEL3
Format: String 597110-06
Input: Name of the half-space
(max. 32 characters)
Default: –
CfgCMOMesh3D (Optional parameter)
Definition of a geometric primitive in M3D format
Define the object via an M3D file. You have to indicate a reference to this object in the description of
the CMO that includes it.
[Key name of geometric primitive]
filename File path to a M3D file Allowed in 2116
strobe
124801 You define the placement of the object through
(SYNC)
the previous coordinate transformations in the
CMO description (or in the kinematic chain). LEVEL3
Example: %OEM%\config/m3d/example.m3d 597110-09
Format: String
Input: Path
(max. 260 characters)
Default: –

January 2015 4.11 List of machine parameters 823


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
name Name displayed in the event of collision Allowed in 2116
strobe
124802 Enter an appropriate name for the object. If the
(SYNC)
object collides, this text appears in an error
(optional parameter)
message. More than one object can have the LEVEL3
same name.
597110-09
Format: String
Input: Name of object
(max. 32 characters)
Default: –
ChannelSettings
Channel-specific settings
[Key name of the machining channel]
Two channels are permanently defined:
 CH_NC: Machining channel
 CH_SIM: Simulation channel
CfgChannelAxes
Definition of the axes and axis names of this channel
progAxis Programmable axes Shut down 1003
control
200301 Programmable axis names and axis names for the
(RESET)
position display in the workpiece system.
LEVEL3
Format: Array [0 to 11]
Input: Selection of key names from
CfgAxes/axisList
restoreAxis Sequence for returning to the contour Shut down 1010
control
200305 Specifies the sequence in which the axes are
(RESET)
returned to the contour after NC stop or during
(optional parameter)
block scan. After NC stop, the axes are moved to LEVEL3
the stop position. During a block scan, they are
597110-03
moved to the calculated restore position.
Format: List [0 to 9] / selection menu
Input: Selection of key names from
CfgAxes/axisList
deactFastClamping Deactivation of "fast" clamping Program 1004
run is
200307 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
Deactivate fast clamping
597110-03
 FALSE
Axis works with fast clamping
Default: FALSE

824 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgChannelFile
Definition of the initialization files for this channel;
Specifies the paths of system cycles of the geometry calculation, for example.
The parameters are predefined by HEIDENHAIN and should not be changed.
geoChainInit Path/name of the file for initializing the Shut down –
geometry chain control
200401
(RESET)
Format: String
LEVEL3
Input: Max. 260 characters
geoIniProgram Path/name of the lead program for program Shut down 1907
run control
200402
(RESET)
Format: String
LEVEL3
Input: Max. 260 characters
geoIniBlock Path/name of the lead program for MDI mode Shut down –
control
200403 Format: String
(RESET)
Input: Max. 260 characters
LEVEL3
geoIniCycle Path/name of the lead program for manual Shut down –
cycles control
200404
(RESET)
Format: String
LEVEL3
Input: Max. 260 characters
geoCycleEnd Path/name of the trailing program for Shut down 1912
program end control
200405
(RESET)
Format: String
LEVEL3
Input: Max. 260 characters
geoCancelCycle Path/name of the trailing program if program Shut down 1914
aborts control
200406
(RESET)
Format: String
LEVEL3
Input: Max. 260 characters
geoTCallCycPath Path/name for the TOOL CALL cycle Shut down –
control
200407 Format: String
(RESET)
Input: Max. 260 characters
LEVEL3
geoTDefCycPath Path/name for the TOOL DEF cycle Shut down –
control
200408 Format: String
(RESET)
Input: Max. 260 characters
LEVEL3
geoAutoTCallSycle Path/name for the automatic TOOL CALL cycle Shut down –
TOOL CALL after expiration of tool life. control
200409
(RESET)
Format: String
LEVEL3
Input: Max. 260 characters

January 2015 4.11 List of machine parameters 825


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
geoPalletCtrlCycle Path/name of the pallet control cycle Shut down –
control
200410 Format: String
(RESET)
Input: Max. 260 characters
LEVEL3
plcSetPresetCycle Path/name of the preset set cycle for PLC Shut down –
module 9090/9281 control
200411
(RESET)
Format: String
LEVEL3
Input: Max. 260 characters
progSelectCycle Path/name of the program selection cycle Shut down –
control
200412 Is called when an NC program is selected via the
(RESET)
file manager.
LEVEL3
Format: String
Input: Max. 260 characters
afterMdiCycle Path/name of the trailer program when Shut down –
leaving MDI control
200413
(RESET)
Is called when the Positioning with Manual Data
(optional parameter)
Input mode is exited. LEVEL3
Format: String
Input: Max. 260 characters
afterRefCycle Path/name of the trailer program when Shut down –
leaving reference control
200415
(RESET)
Is called when leaving Traverse reference
(optional parameter)
points mode of operation. LEVEL3
Format: String
Input: Max. 260 characters
geoTConsCycle Path/name of the cycle for tool-data Shut down –
consistency control
200414
(RESET)
Path of the cycle for loading tool data if the current
(optional parameter)
tool has changed outside of a program run. LEVEL3
Format: String
Input: Max. 260 characters

826 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgKinList
List of all kinematic models available in this channel
kinCompositeModels List of key names of kinematic models for this Allowed in 1197
machining channel strobe
203001
(SYNC)
Format: List [0 to 20]
LEVEL3
Input: Selection menu with key names
from
CfgKinComposModel
CfgActivateKinem
Active machine kinematics;
A certain kinematic configuration can be activated with this entry.
kinemToActivate Kinematics to be activated / Active kinematics Program 1197
run is
204001 Define here the key name of the kinematic
locked
configuration to be activated. You can also see
(RUN)
from this parameter which kinematics
configuration is currently active. LEVEL1
Format: Selection menu 597110-03
Input: Key name of the kinematics model
from CfgKinComposModel
kinemAtStartup The kinematics to be activated during control Program 1197
start-up run is
204002
locked
Enter here the key name of the kinematic model
(optional parameter) (RUN)
that is to be activated during start-up of the control
(regardless of which key name is entered in LEVEL1
MP_kinemToActivate).
597110-06
Format: Selection menu
Input: Key name of the kinematics model
from CfgKinComposModel

January 2015 4.11 List of machine parameters 827


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
enableSelection Kinematic selection via MOD key Program 1198
run is
204003 Specifies whether the end user is allowed to use
locked
the MOD dialog to select the kinematics.
(Optional parameter) (RUN)
Format: Selection menu
LEVEL1
Input:
597110-09
 Available
Kinematic selection in MOD dialog is allowed
 Prohibited
Kinematic selection in MOD dialog is locked
 Password
Kinematic selection in MOD dialog is allowed
after entering the keyword KINEMATIC.
With CfgChangePassword, the keyword
KINEMATIC can be replaced by any desired
OEM password.
Default: No value (=behavior as
available)
CfgRangeAtStartup (Optional parameter)
Settings for the automatic activation of a traverse range after startup of the TNC 640
rangeAtStartup Automatic activation of a traverse range Program 1118
during startup run is
205001
locked
Format: Selection menu
(RUN)
Input:
LEVEL3
 Unchanged
No automatic activation of a traverse range 597110-08
(default setting)
 Last
The traverse range last used is reactivated.
 Default
A default traverse range is activated. Specify
this with the parameter MP_defaultRange.
Default: No value, parameter optional
defaultRange Default traverse range after control startup Program 1118
run is
205002 Format: Selection menu
locked
(optional parameter) Input: (RUN)
List of traverse ranges from CfgWorkingRange LEVEL3
Default: No value, parameter optional 597110-08

828 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgSqlProperties
Table bindings for this channel;
The keys listed under tables identify the tables, and the keys listed under bindings identify the
corresponding column bindings.
A corresponding binding at the same list position under bindings belongs to every list entry under
tables.
tables Key names for tables Program –
run is
200501 Format: List [0 to 39]
locked
Input: String, max. 18 characters (RUN)
LEVEL3
bindings Key names for table column bindings Program –
run is
200502 Enter predefined bindings from CfgTableBinding
locked
here.
(RUN)
Format: List [0 to 39]
LEVEL3
Input: String, max. 18 characters
CfgNcErrorReaction
Behavior of programmable errors FN14: ERROR;
FN14 errors are triggered only if the error warning level given in the PET table is smaller than or equal
to the warning level set here. Note that errors with warning level 0 are always triggered and errors
with warning level 5 are never triggered.
warningLevel Warning level of channel Program 1005
run is
200601 Format: Numerical value
locked
Input: 0 to 4 (RUN)
0: FN14 errors with warning level = 0 are triggered LEVEL1
1: FN14 errors with warning level </= 1 are triggered
2: FN14 errors with warning level </= 2 are triggered
3: FN14 errors with warning level </= 3 are triggered
4: FN14 errors with warning level </= 4 are triggered
Default: 0
onKinemReset Reaction during data reset through kinematic Program 1006
change run is
200602
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL1
 Stop
Display message and stop NC program. 597110-08
NC start is required to continue the program.
 Warning
Display message; do not stop program.
 Continue
Do not display message; do not stop program.
Default: Warning

January 2015 4.11 List of machine parameters 829


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgNcPgmParState
Specification for storage of Q/QS parameters
Defines the persistent storage and name of the current Q/QS parameter set
persistent Persistent storage of the Q/QS parameters Program 1006
run is
200701 Format: Selection menu
locked
Input: (RUN)
 TRUE LEVEL1
Q/QS parameters are saved persistently in the
current parameter set at the end of the
program, see MP_currentSet.
 FALSE
Q/QS parameters are not stored
Default: FALSE
currentSet Name of the current Q/QS parameter set Program 1007
run is
200702 If no other name is given, the key name of the
locked
machining channel is used for saving.
(RUN)
Format: String
LEVEL1
Input: Max. 18 characters
CfgNcPgmBehaviour
Defines the behavior of the TNC 640 during NC program run
operatingTimeReset Reset the machining time when program starts. Shut down 1007
control
200801 Format: Selection menu
(RESET)
Input:
LEVEL2
 TRUE
The machining time is reset at each program 597110-01
start.
 FALSE
The machining time is totaled.
Default: FALSE
plcSignalCycle PLC signal: Number of the currently pending Program 1917
machining cycle run is
200803
locked
Input:
(optional parameter) (RUN)
Name or number for a PLC word marker.
LEVEL2
Format: String
597110-09
Max. 500 characters
Default: No value, parameter optional

830 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
[Key name of the machining channel]
CfgGeoTolerance
Specifies the permissible geometry tolerances
circleDeviation Permissible deviation from the radius Allowed in 1904
strobe
200901 Permissible deviation of circle radius between
(SYNC)
circle end point and circle starting point.
MP7431
LEVEL1
Format: Numerical value
Input: 0.0001 to 0.016 [mm]
Default: 0.005 [mm]
CfgGeoCycle
Specifies the settings for the fixed cycles
pocketOverlap Overlap factor for pocket milling Program 1980
run is
201001 Format: Numerical value
locked
MP7430 Input: 0.001 to 1.414 (RUN)
Default: 1 LEVEL1
posAfterContPocket Traverse after machining the contour pocket Allowed in 1980
strobe
201007 Specifies whether the position before calling the
(SYNC)
cycle should be moved to following an SL cycle, or
MP7420, bit 4
whether only clearance height should be LEVEL1
(optional parameter) approached.
597110-09
Format: Selection menu
Input:
 PosBeforeMachining
Return to the position approached before
machining the SL cycle.
 ToolAxClearanceHeight
Position the tool axis to clearance height.
Default: PosBeforeMachining
displaySpindleErr Display the Spindle ? error message if M3/M4 Program 1981
is not active run is
201002
locked
Format: Selection menu
MP7441, bit 0 (RUN)
Input:
LEVEL1
 on
Error message is displayed
 off
Error message is not displayed
Default: on

January 2015 4.11 List of machine parameters 831


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
displayDepthErr Error message Enter depth as negative is Program 1981
suppressed run is
201003
locked
Format: Selection menu
MP7441, bit 2 (RUN)
Input:
LEVEL1
 on
Error message is displayed
 off
Error message is not displayed
Default: on
apprDepCylWall Behavior when moving to wall of slot in the Allowed in 1980
cylinder surface strobe
201004
(SYNC)
Format: Selection menu
MP7680, bit 12
LEVEL1
Input:
 LineNormal
The slot wall is approached and departed
linearly.
 CircleTangential
The slot wall is approached and departed
tangentially; at the beginning and end of the slot
a rounding arc with a diameter equal to the slot
width is inserted.
Default: CircleTangential
mStrobeOrient M function for spindle orientation in the fixed Program 1982
cycles run is
201005
locked
Format: Numerical value
MP7442 (RUN)
Input:
LEVEL1
 –1: Spindle orientation directly by the NC
 0: Function not active
 1 to 999: Number of the M function for spindle
orientation by the PLC
Default: 0
suppressPlungeErr Do not show Plunging type is not possible Program 1982
error message run is
201006
locked
Format: Selection menu
(RUN)
Input:
LEVEL1
 on
Error message is not displayed. 597110-05
 off
Error message is displayed.
Default: off

832 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgToolUsageFile
Channel-specific setting for generation of the tool usage file
usageFile Channel-specific setting for generation of the Change at 2227
tool usage file any time
204701
(NOTHING)
Format: Selection menu
LEVEL1
Input:
597110-05
 Never:
Do not generate tool usage file in this channel.
 Once:
Generate a tool usage file in this channel only
once during the next run of the NC program.
 Always:
Generate a tool usage file in this channel with
each run of the NC program.
Default: Channel CH_NC (Program Run
modes):
Never
Channel CH_SIM (Test Run mode):
Always
CfgStretchFilter
Geometry filter for culling linear elements;
The operating method of the stretch filter depends on the settings. If the filter smoothes the corners,
the change in direction is less distinct and a higher feed rate can be used. Alternatively, very close
linear elements are filtered out. This reduces the number of NC blocks and accelerates program run.
filterType Type of stretch filter Allowed in 1290
strobe
201101 Format: Selection menu
(SYNC)
Input:
LEVEL1
 Off
The filter is switched off.
 ShortCut
Omit individual points on polygon; if the
connecting line from the middle point of three
subsequent points on a polygon to the previous
point or to the next point is within the tolerance
band, the middle point will be omitted.
 Average
The geometry filter smoothes corners.
Default: Off

January 2015 4.11 List of machine parameters 833


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
tolerance Maximum distance of the filtered to the Allowed in 1290
unfiltered contour strobe
201102
(SYNC)
Format: Numerical value
LEVEL1
Input: 0 to 10 [mm]
with max. 5 decimal places
0: Stretch filter is off
Default: 0
maxLength Maximum length of the distance resulting Allowed in 1291
from filtering strobe
201103
(SYNC)
Format: Numerical value
LEVEL1
Input: 0 to 1000 [mm]
with max. 5 decimal places
0: Stretch filter is off
Default: 0
CfgRotWorkPlane
Configuration of the tilt-working-plane function
rotateWorkPlane Permit tilting of the working plane Shut down 1234
control
201201 Format: Selection menu
(RESET)
MP7500, bit 0 Input:
LEVEL3
 On
"Tilt Working Plane" function permitted 597110-03
 Off
"Tilt Working Plane" function not permitted
Default: On
planeOrientation Orientation of the working plane Shut down 1235
control
201202 Format: Selection menu
(RESET)
MP7500, bit 1 Input:
LEVEL3
 RotAxValues
In Cycle 19 the coordinate system of the 597110-03
working plane is calculated from the axis values
of the rotational axes (A, B, C).
 SpaceAngles
In Cycle 19 the coordinate system of the
working plane is interpreted as a spatial angle.
Default: RotAxValues

834 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
autoMoveAxes Automatic positioning of the rotational axes Shut down 1235
control
201205 Format: Selection menu
(RESET)
MP7500, bit 2 Input:
LEVEL3
 NoMove
No automatic positioning 597110-03
 MoveRotAxesOnly
Automatic positioning of the rotational axes
 AutoMoveAllAxes
Automatic positioning of rotational and
translation axes
Default: AutoMoveAllAxes
rotPreference Cycle 19 and PLANE function: Realization of Shut down 1236
the tilt position control
201206
(RESET)
If the first rotary axis in a tilting movement is
MP7500, bit 6
under that table and parallel to the tool direction, LEVEL3
you have the following options:
597110-03
Format: Selection menu
Input:
 CoordRot
The spatial angle C is realized through a rotation
of the table. The TNC 640 sets the rotary axis to
the value 0.
 TableRot
The TNC 640 aligns the rotary axis so that the X
axis of the working plane is parallel to the X axis
of the machine. At the same time, the angle is
saved in Q122. This makes it possible, for
example, to machine a workpiece by always
using the same axis for paraxial linear blocks in
the X/Y plane.
 NoPref
No definition—default value. If, when the Plane
function is called, CoordRot is not explicitly
defined, the TNC 640 always conducts the
process described under TableRot.
Default: NoPref

January 2015 4.11 List of machine parameters 835


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
autoCorrectVector Automatic vector compensation Shut down 1237
control
201207 If the basis and normal vectors are not
(RESET)
perpendicular to each other for PLANE VECTOR,
(optional parameter)
you can define the following possible reactions for LEVEL3
the control:
597110-05
Format: Selection menu
Input:
 FALSE
The control indicates a programming error by
outputting an error message.
 TRUE
The control automatically corrects the basis
vector with consideration of the normal vector,
which remains unchanged.
Default: FALSE
enableVTaxis Virtual tool axis Shut down 1237
control
201208 Specifies whether handwheel superimposed
(RESET)
traverse is possible in the active tool axis system
MP7641, bit 4
(Virtual Tool Axis VT). LEVEL3
Format: Selection menu 597110-06
Input:
 TRUE
Permit virtual tool axis on handwheel
 FALSE
Do not permit virtual tool axis on handwheel
Default: TRUE
CfgPresetSettings (optional parameter)
Configuration of the "datum setting" function
chkTiltingAxes Check the tilting-axis position during "datum Shut down 1978
setting" control
204601
(RESET)
Format: Selection menu
MP7500, bit 5
LEVEL3
Input:
(optional parameter)
597110-05
 NoCheck
Do not check the tilt situation for agreement.
 CheckIfTilted
If plane tilting is active, check the current tilt
situation and rotary axis position for agreement.
 CheckAlways
Check rotary-axis position during active plane
tilting, and additionally check for rotary axis
position 0 during inactive plane tilting
Default: CheckAlways

836 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgTCPM
Configuration of TCPM (Tool Center Point Management)
toolRefPoint Tool preset for programmed path Program 1905
run is
201302 Format: Selection menu
locked
Input: (RUN)
 ToolTip LEVEL1
Tool tip
 ToolCenter
Tool center point
Default: ToolTip
maxCompFeed Maximum velocity of the principal axes during Program 1905
compensating movements through M128 or run is
201303
TCPM locked
MP7471 (RUN)
Format: Numerical value
(optional parameter) LEVEL1
Input: 0 to 59 999 999 940 [mm/min]
With max. 3 decimal places 597110-05
Default: 600 000 [mm/min]
CfgKinematicsOpt (optional parameter)
Settings for the touch probe cycles for automatic measurement of rotary axes
(software option 48 "KinematicsOpt" is required)
maxModification KinematicsOpt: Maximum permitted change Change at 1228
value any time
204801
(NOTHING)
Format: Numerical value
MP6600
LEVEL3
Input: 0.01 to 1 [mm]
With max. 3 decimal places 597110-05
Default: 0.05 [mm]
maxDevCalBall KinematicsOpt: Radius deviation of the Change at 1228
calibration sphere any time
204802
(NOTHING)
Format: Numerical value
MP6601
LEVEL3
Input: 0.01 to 0.1 [mm]
With max. 3 decimal places
Default: 0.02 [mm]
mStrobeRotAxPos KinematicsOpt: Number of the M-function Change at 1229
macro for positioning the rotary axes any time
204803
(NOTHING)
Format: Numerical value
MP6602
LEVEL3
Input: 0 to 999
-1: Inactive function 597110-05
Default: –1

January 2015 4.11 List of machine parameters 837


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgLiftOff
Configuration of lift-off parameters for NC stop
on Switching on/off lift-off movements during Program 1427
NC stop run is
201401
locked
Format: Selection menu
(RUN)
Input:
LEVEL3
 on
Lift-off movements active 597110-01
 off
Lift-off movements not active
Default: off
distance Maximum retraction height for NC stop Program 1427
run is
201402 Format: Numerical value
locked
Input: 0 to 2 [mm] (RUN)
With max. 9 decimal places
LEVEL3
Default: 0
597110-01
operand PLC operand for suppressing the LIFTOFF Program 1427
function run is
201403
locked
Name or number of the PLC operand (logical
(optional parameter) (RUN)
marker or input) through which the lift-off function
can be suppressed by the PLC program during NC LEVEL3
stop.
597110-05
Format: String
Input: Max. 80 characters
CfgDCM (Optional parameter)
Parameter for collision monitoring (DCM)
reactionIfRTC Reaction to RTC commands with active DCM Program 1155
run is 2091
205301 Specifies how the control behaves when an RTC
locked
command is executed via the NC program with
(optional parameter) (RUN)
active collision monitoring (DCM).
LEVEL3
Format: Selection menu
597110-09
Input:
 Cancel
The NC program is aborted, with error
message.
 None
RTC commands are executed. DCM is
deactivated during this time. This is referenced
by a warning.
Default: Cancel

838 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
reactionIfUnref Reaction to non-referenced axes with active Program 2091
DCM run is
205302
locked
Specifies how the control behaves if DCM is
(optional parameter) (RUN)
active, although at least one axis of the channel is
not referenced or is operated with lag tracking LEVEL3
(CfgPosControl/feedForwardFactor is not equal to 1).
597110-09
Format: Selection menu
Input:
 Cancel
The NC program is aborted, with error
message.
 None
DCM is deactivated if at least one axis is not
referenced or is operated with lag tracking.
Warnings are issued.
Default: Cancel
CfgLaPath
Parameters for calculation of the path feed rate profile;
Defines the minimum feed rates within one segment (path segment) and for the transition between
two segments (corners). Feed rates lower than the minimum defined feed rates become effective
only if they are programmed.
Maximum values for jerk and yank are defined for acceleration on the path. A tolerance value is
included. The feed rate for corners and curvatures is limited so that the filter error does not exceed
this value.
minPathFeed Minimum feed rate on the path Allowed in 1308
strobe
201501 This feed rate is only violated within a segment if
(SYNC)
a lower feed rate is programmed.
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 600 000 [mm/min]
With max. 9 decimal places
Default: 60
minCornerFeed Minimum feed rate at corners Allowed in 1309
strobe
201502 This feed rate is only violated between two
(SYNC)
segments if a lower feed rate is programmed.
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 600 000 [mm/min]
with max. 9 decimal places
Default: 30

January 2015 4.11 List of machine parameters 839


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxG1Feed Maximum machining feed rate. If this value is Allowed in 1310
exceeded, the "–Hi" parameters go into effect. strobe
201503
(SYNC)
Format: Numerical value
MP1092
LEVEL3
Input: 0 to 99 999 [mm/min]
With max. 9 decimal places 597110-01
Default: 99 999
maxPathJerk Maximum jerk on the path Allowed in 1311
strobe 2297
201504 This value applies for machining feed rates up to
(SYNC)
MP_maxG1Feed.
MP1090.0
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 1 000 000 [m/s3]
With max. 9 decimal places
Default: 5
maxPathJerkHi Maximum jerk on the path at rapid traverse Allowed in 1311
strobe
201505 This value also applies to feed rates greater than
(SYNC)
MP_maxG1Feed.
MP1090.1
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 1 000 000 [m/s3]
With max. 9 decimal places
Default: 5
pathMeasJerk Maximum jerk on the path during Allowed in 1311
measurement strobe 2297
201517
(SYNC)
If the value is not set, the control uses the value
(optional parameter)
from MP_maxPathJerk. LEVEL3
If the minimum value 0 is set, the control works
597110-06
with the maximum value.
Format: Numerical value
Input: 0 to 1 000 000 [m/s3]
with max. 9 decimal places
0: The control uses the maximum
value
Default: 5
pathTolerance Path tolerance for contour transitions after the Allowed in 1310
filter strobe
201506
(SYNC)
The feed rate for corners and curvatures is limited
MP1202.0
so that the filter error does not exceed this value. LEVEL3
The path tolerance can be changed with Cycle 32.
597110-01
Format: Numerical value
Input: 0.0001 to 10 [mm]
With max. 9 decimal places
Default: 0.01

840 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
pathToleranceHi Path tolerance after the filter at rapid traverse Allowed in 1310
strobe
201507 This value also applies to feed rates greater than
(SYNC)
MP_maxG1Feed.
MP1202.1
LEVEL3
Format: Numerical value
597110-01
Input: 0.0001 to 10 [mm]
With max. 9 decimal places
Default: 0.01
maxPathYank Maximum yank on the path (dj/dt) Allowed in 1312
strobe
201508 Format: Numerical value
(SYNC)
Input: 0 to 1 000 000 [mm/s4]
LEVEL3
With max. 9 decimal places
597110-01
Default: 4000
maxPathYankHi Mode of yank limitation at rapid traverse Allowed in 1312
strobe
201518 Settings for the yank limitation during rapid
(SYNC)
traverse movements with FMax or above
(optional parameter)
MP_maxG1Feed. LEVEL3
Format: Selection menu 597110-08
Input:
 Off
The same yank limitation as with normal feed
rate
 Maximum
No yank limitation
Default: Off
reduceCornerFeed Reduction of the contouring feed rate at the Allowed in 1321
beginning of a contour element strobe
201516
(SYNC)
Format: Selection menu
MP1205
LEVEL3
Input:
(optional parameter)
597110-05
 TRUE
Reduction of contouring feed rate active
(slower but more accurate if required)
 FALSE
Reduction of contouring feed rate not active
(fast, but can be a little less accurate)
Default: TRUE

January 2015 4.11 List of machine parameters 841


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
curveTolFactor Factor for path tolerance in circles Allowed in 1323
strobe
201509 The parameter makes it possible to set the
(SYNC)
tolerance separately at corners
(MP_pathTolerance effective) and on arcs LEVEL3
(MP_curveTolFactor · MP_pathTolerance
597110-01
effective).
Format: Numerical value
Input: 0.5 to 100
with max. 9 decimal places
Default: 1
curveJerkFactor Factor for feed rate reduction at curvature Allowed in 1323
changes strobe
201510
(SYNC)
If oscillations occur, for example, at line-to-arc
MP1230 to MP1243
transitions, the feed rate can be reduced with LEVEL3
MP_curveJerkFactor (< 1.0)
597110-01
.
Format: Numerical value
Input: 0 to 100
with max. 9 decimal places
0: No further
feed rate reduction
Default: 1
angleTolerance Tolerance for rotary axes with M128 Allowed in 1313
(changeable in Cycle 32) strobe
201511
(SYNC)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 0.0001 to 10 [°]
With max. 9 decimal places 597110-02
Default: 0.01
angleToleranceHi Tolerance for rotary axes with M128 and rapid Allowed in 1313
traverse strobe
201512
This value also applies to feed rates greater (SYNC)
(optional parameter) than MP_maxG1Feed.
LEVEL3
Format: Numerical value
597110-02
Input: 0.0001 to 10 [°]
With max. 9 decimal places
Default: 0.01
filterFeedTime Time constant of feed-rate smoothing filter Allowed in 1294
strobe
201513 Advanced Function Set 2 (option #9) required
(SYNC)
MP1522 Format: Numerical value
LEVEL3
(optional parameter) Input: 0 to 10 [s]
597110-04
with max. 9 decimal places
Default: 0.1

842 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxTransAcc Maximum radial acceleration on circles and Allowed in 1314
curved paths strobe
201514
(SYNC)
The parameter limits the radial accelerations for
MP1070
circles and circle segments, as well as for curved LEVEL3
(optional parameter) paths in general. The limit is effective in addition
597110-05
to the axis-specific acceleration limit.
Advanced Function Set 2 (option #9) required
Format: Numerical value
Input: 0 to 1 000 000 [m/s2]
With max. 9 decimal places
Default: 0
maxTransAccHi Maximum radial acceleration on circles and Allowed in 1314
curved paths at rapid traverse strobe
201515
(SYNC)
The parameter limits the radial accelerations for
MP1070
circles and circle segments, as well as for curved LEVEL3
(optional parameter) paths in general. The limit is effective in addition
597110-05
to the axis-specific acceleration limit.
This value also applies to feed rates greater than
MP_maxG1Feed.
Advanced Function Set 1 (option #9) required
Format: Numerical value
Input: 0 to 1 000 000 [m/s2]
With max. 9 decimal places
Default: 0
CfgPlcStrobes
Definition of the M, S and T strobes for this channel
mStrobes List of M strobe descriptions in this channel Shut down 2381
control
201601 Format: List [0 to 299]
(RESET)
Input: Key name of the M function
LEVEL3
Selection from CfgPlcMStrobe
sStrobe List of S strobe descriptions in this channel Shut down 2395
control
201602 Format: List [0 to 5]
(RESET)
Input: Key name of the S function
LEVEL3
Selection from CfgPlcSStrobe
tStrobes List of T strobe descriptions in this channel Shut down 2409
control
201603 Format: List [0 to 2]
(RESET)
Input: Key name of the T function
LEVEL3
Selection from CfgPlcTStrobe

January 2015 4.11 List of machine parameters 843


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
aliasStrobes List of implemented strobes in this channel Shut down 2419
control
201604 Reproduction of control-dependent functions on a
(RESET)
uniform M-function transfer to the PLC program.
LEVEL3
Format: List [0 to 4]
597110-01
Input: Key name of the M function
Selection from CfgPlcMStrobe
unitOfMeasure Symbolic name or number of the PLC marker for Shut down 2381
the unit of measure of the NC program control
201605
(RESET)
Name of the PLC marker, which informs the PLC
(optional parameter)
of the unit of measure of the NC program to be LEVEL3
run.
PLC marker = 1: Inches
PLC marker = 0: Metric system
Format: String
Input: Max. 80 characters
CfgToolChangeApi
Definition of the interface marker for tool change sequences for this channel
followUpS Symbolic name or number of a marker Shut down 2243
control
204301 This marker is set during strobe decoding if it is
(RESET)
followed in the tool change sequence by another
strobe with an S code. LEVEL3
Format: String
Input: PLC marker, max. 80 characters
followUpT Symbolic name or number of a marker Shut down 2243
control
204302 This marker is set during strobe decoding if it is
(RESET)
followed in the tool change sequence by another
strobe with a T code. LEVEL3
Format: String
Input: PLC marker, max. 80 characters
toolAutoInserted Symbolic name or number of a marker Shut down 2243
control
204304 This marker is set during an automatic
(RESET)
TOOL CALL for inserting a replacement tool upon
expiration of the tool life. LEVEL3
Format: String
Input: PLC marker, max. 80 characters

844 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
updateTable Symbolic name or number of a marker Shut down 2243
control
204303 The PLC program will set this marker to prevent
(RESET)
the control from updating the pocket table
automatically. LEVEL3
Format: String
Input: PLC marker, max. 80 characters
CfgPlcBlockScan (optional parameter)
Beginning and end of strobes to be tracked in the block scan.
Definition of M functions that mark the beginning and end of the block scan tracking for the PLC.
mFirst M function at beginning of strobes to be Shut down 1012
tracked control
201801
(RESET)
In the block scan, this M function is output before
the strobes to be tracked. At a value of –1 there is LEVEL3
no output.
597110-02
Format: Numerical value
Input: –1 to 999
Default: –1, i.e. no output
mLast M function at end of tracked strobes Shut down 1012
control
201802 In the block scan, this M function is output after
(RESET)
the tracked strobes. At a value of –1 there is no
output. LEVEL3
Format: Numerical value 597110-02
Input: –1 to 999
Default: –1, i.e. no output
CfgPlcOverrideF
Configuration of the feed rate override for this channel
minimal Minimum value for override Change at 2176
any time
201901 Format: Numerical value
(NOTHING)
Input: 0 to 100 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 0
maximal Maximum value for override Change at 2176
any time
201902 Format: Numerical value
(NOTHING)
Input: 0 to 200 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 150

January 2015 4.11 List of machine parameters 845


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
source Source for override values Change at 2176
any time
201903 Format: List [0 to 3] / Selection menu
(NOTHING)
Input: Key name of the override device
LEVEL3
from
CfgPlcOverrideDev 597110-01
Default: PotentiometerF
CfgPlcOverrideR (optional parameter)
Configuration of rapid traverse override for this channel
minimal Minimum value for override Change at 2177
any time
202001 Format: Numerical value
(NOTHING)
Input: 0 to 100 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 0
maximal Maximum value for override Change at 2177
any time
202002 Format: Numerical value
(NOTHING)
Input: 0 to 200 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 150
source Source for override values Change at 2177
any time
202003 Format: List [0 to 3] / Selection menu
(NOTHING)
Input: Key name of the override device
LEVEL3
from
CfgPlcOverrideDev 597110-01
Default: No value

846 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgPrefForPolarKin
Settings for the polar kinematics
(optional)
kindOfPref Behavior of the polar kinematics at radius 0 Program –
run is
202301 If the tool center of a machine with polar
locked
kinematics lies exactly on the polar axis (C axis,
(optional parameter) (RUN)
radius 0), there are two possibilities for a linear
positioning block: r,phi or -r,phi+180. LEVEL1
Use this parameter to define the behavior of the
TNC 640 if the tool center point path runs through
(crosses) the polar axis.
Format: Selection menu
Input:
 RadiusPositive:
After crossover, the tool center point is at a
position with positive radius.
 RadiusNegative:
After crossover, the tool center point is at a
position with negative radius.
 MinimalAngle:
The crossover path is executed through a C-axis
movement as small as possible.
 NoChangeOfRadius:
After crossover, the radius has the same
algebraic sign as before crossover.
 Radius0NotAllowed:
A tool center point path that runs through
(crosses) the polar axis is not allowed.

January 2015 4.11 List of machine parameters 847


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgThreadSpindle
Spindle settings for thread cutting
sourceOverride Potentiometer for feed rate during thread Program 2174
cutting run is
113603
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL1
 SpindlePotentiometer
(iTNC 530-compatible setting) 597110-05
During thread cutting, the potentiometer is
effective for the spindle speed knob. The
potentiometer for the feed rate override is
disabled.
 FeedPotentiometer
(standard behavior of the TNC 640)
During thread cutting, the potentiometer is
effective for the feed rate knob. The
potentiometer for the spindle speed knob is not
active.
Default: No value
thrdWaitingTime Dwell time for reversal of spindle rotational Program 1614
direction run is
113601
locked
The spindle stops for this time at the bottom of
MP7120.0 (RUN)
the thread before starting again in the opposite
(optional parameter) direction of rotation. LEVEL1
Format: Numerical value 597110-03
Input: 0 to 65.535 [s]
With max. 9 decimal places
Default: No value
thrdPreSwitchTime Advanced switching time of the spindle during Program 1614
tapping with coded spindle-speed output run is
113602
locked
The spindle is stopped at this time before
MP7120.1 (RUN)
reaching the bottom of the thread.
(optional parameter) LEVEL1
Format: Numerical value
597110-03
Input: 0 to 65.535 [s]
With max. 9 decimal places
Default: No value

848 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
limitSpindleSpeed For limiting the spindle speed with Cycles 17, Program 1612
18 and 207 run is
113604
locked
Format: Selection menu
MP7160, bit 1 (RUN)
Input:
(optional parameter) LEVEL1
 TRUE
Spindle speed is limited so that it runs with 597110-06
constant speed approx. 1/3 of the time
 FALSE
Limiting not active.
Default: FALSE
CfgMillTurn (Optional parameter)
Software option #50 is required
Configuration of milling/turning functions
mStrobeToolOrient M function for spindle orientation in turning Change at 1633
mode any time
204202
(NOTHING)
Format: Numerical value
LEVEL1
Input: 0...999
597110-05
0
Tool orientation deactivated
 1...999
Number of the M function for tool orientation
Default: 0
toolClampSpacing Position for clamping the tool carrier (milling Change at 1633
spindle) any time
204203
(NOTHING)
Format: Numerical value
LEVEL1
Input: 0...359.9999 [°]
With max. 4 decimal places 597110-05
0
Any position for clamping the tool carrier (milling
spindle)
 Value in [°]
Grid spacing for clamping the tool carrier (milling
spindle)
Default: 0

January 2015 4.11 List of machine parameters 849


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
eccLimSpeedFactor Factor for max. spindle speed during eccentric Change at 1634
turning any time
204204
(NOTHING)
The spindle speed for eccentric turning is limited
to the value that can be calculated from: LEVEL1
Speed [1/min] = eccLimSpeedFactor / eccentricity 597110-08
[mm] * 1 [min/mm]
Format: Numerical value
Input: 0 to 9999.999
With max. 3 decimal places
0
eccentric turning not allowed
 0.001 to 9999.999
factor for maximum speed
Default: 0

850 HEIDENHAIN Technical Manual TNC 640


4.11.3 "Axes" group
Axis-specific machine parameters.

Parameter Function and input Reaction/ Page


MP number Access
iTNC MP number SW
version
CfgProgAxis
Settings for programmable/displayed axes,
If you want to be able to program, display and/or edit axis names, you must enter the corresponding
key name of the axis here.
[Key name of the axis]
The OEM can choose any key name for the axis, e.g. X, X axis, etc. The axis with this key name must
be contained in CfgAxis.
Other names can be assigned to axes whose names cannot be programmed until a certain kinematics
model has been activated.
axName Designation of the axis for position display Shut down 1018
control
300001 This axis name is also valid for programming/
(RESET)
editing.
LEVEL3
Format: String
Input: Programmable axis name such
as A, B, C, U, V, W, X, Y, Z
dir Spatial orientation of the axis or center of Shut down 1018
rotation control
300002
(RESET)
Format: Selection menu
LEVEL3
Input:
 XAxis
Motion/rotary axis in X direction
 YAxis
Motion/rotary axis in Y direction
 ZAxis
Motion/rotary axis in Z direction
 SpecAxis
Free/undefined spatial orientation, e.g. for a
spindle or PLC axis

January 2015 4.11 List of machine parameters 851


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
progKind Type of axis Shut down 1019
control
300003 Format: Selection menu
(RESET)
Input:
LEVEL3
 MainLinCoord
Primary coordinate, always linear (X, Y, Z)
 ParallelLinCoord
Parallel linear coordinate (U, V, W)
 ParallelAngCoord
Parallel angular coordinate (A, B, C)
 SatelliteLinCoord
Minor linear coordinate: Reserved, not used at
present
 SatelliteAngCoord
Minor angular coordinate: Reserved, not used at
present
 Spindle
Spindle
index Index for SYSREAD and SYSWRITE Shut down 1019
commands control
300004
(RESET)
The index is a default value. Enter one of the
following values, depending on the axis: LEVEL3
X=1, Y=2, Z=3, A=4, B=5, C=6, U=7, V=8, W=9
and spindle S=10.
Format: Numerical value
Input: 0 to 999
relatedAxis Assigned physical axis Shut down 1020
control
300005 Only enter axis name if the key name of the
(RESET)
programmable axis does not match the key name
(optional parameter)
of the physical axis. LEVEL3
Format: Selection menu
Input: Key name of axis from
Axes/PhysicalAxis

852 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
PhysicalAxis
Physical description of the axes
[Key name of the axis]
The OEM can choose any key name for the axis, e.g. X, X axis, etc. The axis with this key name must
be entered in CfgAxes/axisList.
CfgAxis
General description of an axis;
The parameter object CfgAxis must be configured for each axis or spindle.
isAng Rotary axis Shut down 1022
control
300101 Remark:
(RESET)
Rotary axes are not allowed as principal axes.
LEVEL3
Format: Selection menu
597110-01
Input:
 TRUE
Rotary axis
 FALSE
Linear axis (no rotary axis)
Default: FALSE
isModulo Modulo display Shut down 1023
control
300102 Modulo limit of 360 degrees for the position
(RESET)
display of rotary axes.
LEVEL3
Format: Selection menu
597110-01
Input:
 TRUE
Modulo display from 0 to 360 [°]
 FALSE
No modulo display
Default: FALSE
restoreModuloCntr Save modulo counter of the axis in SRAM Program 1023
run is
300111 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
The modulo counter of the axis is saved
cyclically in SRAM and restored during startup 597110-05
of the TNC 640.
 FALSE
The modulo counter of the axis is not saved in
SRAM and not restored during control startup.
Default: FALSE

January 2015 4.11 List of machine parameters 853


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
isHirth Axis with Hirth coupling Program 1162
run is
300103 Default grid increment in [°] or [mm] (depending
locked
on the axis type) for Hirth coupling, measured
MP420 (RUN)
from the machine datum.
(optional parameter) LEVEL3
If the parameter is inactive or the value 0 is
entered, no Hirth grid is supported. 597110-02
Format: Numerical value
Input: Hirth grid in [°] or [mm]
Default: No value
axisHw Hardware to which the axis is connected Shut down 1026
control
300104 Format: Selection menu
(RESET)
Input:
LEVEL3
 None
No hardware connection (virtual axis) 597110-01
 InOutCC
Digital axis with connection to a CC controller
unit
 AnalogMC
Analog drive interface; encoder connection to
the MC
 AnalogCC
Analog drive interface; encoder connection to
the CC
 DisplayMC
Display axis; encoder connection to the MC
 DisplayCC
Display axis; encoder connection to the CC
 ManualMC
Open-loop axis; encoder connection to the MC
 ManualCC
Open-loop axis; encoder connection to the CC
 ProfiNet
Reserved, no function
Default: InOutCC

854 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
axisMode Axis operating mode Shut down 1027
control
300105 Format: Selection menu
(RESET)
MP10 (expanded) Input:
LEVEL3
 NotActive
Axis does not exist 597110-01
 Active
Axis physically present
 PlcControlled
e.g. for encoded spindles; axis is controlled
solely by the PLC
Default: Active
testMode Axis in test mode Shut down 1027
control
300106 Note:
(RESET)
Axes in Test mode must be enabled in the SIK.
LEVEL3
Format: Selection menu
597110-01
Input:
 TRUE
Test mode for commissioning, i.e. the axis
needs not be connected
 FALSE
Test mode not active.
If MP_axisMode = Active: Axis must be
connected electrically.
Default: FALSE
parList List of all parameter sets of this axis Shut down 1028
control
(300107) Multiple parameter sets can be created for an
(RESET)
axis. The key name is used to select the desired
set. LEVEL3
Example: PX (parameter set for X axis).
597110-01
Format: List [0 to 10]
Input: Key name(s) from ParameterSets
realAxis Key name of the associated real axis Shut down 1028
control
300108 For TNC contouring controls:
(RESET)
Parameter reserved, do not assign.
(optional parameter)
LEVEL3
The key name of the associated real axis is only to
be entered if the current axis is a virtual axis. 597110-01
Format: Selection menu
Input: Key name of axis from
Axes/PhysicalAxis

January 2015 4.11 List of machine parameters 855


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
noActToNumAtEmSt Actual-to-nominal vaIue transfer for all axes in Program 1029
an EMERGENCY STOP run is
300109
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL3
 TRUE
Actual-to-nominal value transfer for all axes in
an EMERGENCY STOP is not performed.
 FALSE
The standard control behavior is actual-to-
nominal value transfer for all axes in an
EMERGENCY STOP.
Default: FALSE
deactivatedAtStart Deactivate axis during startup Program 1105
run is
300110 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
During startup of the TNC 640 the axis is
deactivated—irrespective of the parameter
MP_axisHw. The same effect is attained with
the setting as from calling PLC module 9226 or
9418 with mode 14.
 FALSE
During startup of the TNC 640 the axis is treated
as configured in the parameter axisHw.
Default: No value

856 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
advancedSettings Advanced settings for individual axes Program 1030
run is
300112 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 noBreakAtProbe (bit 0) LEVEL3
Specifies whether the axis moved by the PLC is
to be stopped during deflection of the touch 597110-06
probe (by another axis).
• TRUE
Axis movement is not stopped
• FALSE
Axis movement is stopped
• Default:
FALSE
 manFilterEnhanced (bit 1)
Specifies whether a movement of this axis
commanded by the PLC is to be made with a
bell-shaped or a ramp-shaped acceleration
curve.
• TRUE
Ramp-shaped acceleration curve active
• FALSE
Bell-shaped acceleration curve active
• Default:
FALSE
 countLagOverflow (bit 2)
Specifies whether the following error for a
spindle in the position control loop is to be
calculated in modulo counting mode.
• TRUE
Do not calculate following error in modulo
mode
• FALSE
Calculate following error in modulo mode
• Default:
FALSE
 analogPWM (bit 3)
Reserved for special settings of analog drives.

January 2015 4.11 List of machine parameters 857


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
advancedSettings  backlashOnMC (bit 4) Program 1030
Specifies whether the reversal error is to be run is
300112 taken into account in the NC software or in the locked
(optional parameter) DSP software (on the CC). (RUN)
• TRUE
The reversal error is calculated in the NC LEVEL3
software 597110-06
• FALSE
The reversal error is calculated in the DSP
software on the CC
• Default:
FALSE
 usePmax2ForM19 (bit 5) 597110-08
Enables the use of CfgServoMotor/
motPMax2 for spindle orientation. Use only
after consultation with HEIDENHAIN.
• TRUE
The spindle power is limited to the
parameter MP_motPMax2 during braking
at the current limit for M19.
• FALSE
The MP_motPMax2 parameter is not
evaluated during braking at the current limit
for M19 (standard behavior).
• Default:
FALSE
 ignoreKinematics (bit 6)
Specifies whether the active kinematic 597110-08
configuration is to be ignored during manual
traverse.
• TRUE
Regardless of the kinematic configuration
effective in manual operation, this axis can
always be moved by using the manual
direction keys.
• FALSE
If a kinematic configuration is effective in
manual operation, only one axis can be
moved at a time. The active kinematic
configuration is not ignored.
• Default:
FALSE

858 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
advancedSettings  clearShuttOfffPos (Bit7) Program 1030
Reset axis position at shutdown saved in run is
300112 SRAM. locked
(optional parameter) • TRUE (RUN)
Set axis position at shutdown in SRAM to
zero. The parameter is reset following LEVEL3
evaluation with the next start-up. 597110-09
• FALSE
Function deactivated.
• Default:
FALSE
 reserve08...reserve09
Reserved.
CfgAxisPropKin
Description of special axis properties;
Specifies various properties that are important for the kinematics
specKinCoordSys Type of special coordinate system Shut down 1040
control
300201 Specifies whether the assigned coordinate
(RESET)
transformation is used to define a fixed translation
(optional parameter)
axis or a datum (DefPoint). LEVEL3
Enter the key name of this axis in CfgAxes/
specCoordSysList, too.
Format: Selection menu
Input:
 FixedTransAxis
Translation axis for which no physical axis exists
(e.g. the Y axis of a grinding machine is
represented by using the X and Z axes).
 DefPointTrans
Coordinate system in the kinematics model to
which no physical axis is assigned (e.g. for
defining auxiliary coordinate systems).
 DefPointRot
Same as DefPointTrans, but for rotary axis.
kindOfRotAxis Type of rotational axis, only for rotary axes Shut down 1040
control
300202 Format: Selection menu
(RESET)
(optional parameter) Input:
LEVEL3
 RollOver
Axis can roll over
 NotRollOver
Axis has a limited angle of rotation

January 2015 4.11 List of machine parameters 859


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
presetToAlignAxis Controls the treatment of the preset for Shut down 1041
rotational axes control
300203
(RESET)
If the parameter is not set or set to TRUE (default),
(optional parameter)
the offset from the preset is subtracted from the LEVEL3
axis value before the kinematic calculation.
If the attribute is set to FALSE, the offset only
affects the position display of the axis.
Format: Selection menu
Input:
 TRUE
Offset is subtracted
 FALSE
Offset is only effective for the display
Default: TRUE
hasSpecAxisData Reserved: Special axis data available, only for Shut down 1041
special axes control
300204
(RESET)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
 TRUE
Special axis data available
 FALSE
No special axis data
Default: FALSE
parAxComp Compensation of parallel linear axes Shut down 1241
control
300205 Format: Selection menu
(RESET)
(optional parameter) Input:
LEVEL3
 Off
Compensation and display function is
deactivated for parallel axes.
 Display
Display function for parallel secondary axes is
active.
 Move
Compensation for parallel axes is active.

860 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgAxisSafety (optional parameter)
Settings for functional safety (FS);
Define the axis-dependent parameters for machines with integrated functional safety (FS) here.
axisGroup Assignment to an axis group Shut down –
control
300311 Assign the axis to an axis group. The axis groups
(RESET)
are specified under CfgAxGroupSafety.
MP600, MP601
LEVEL3
Format: Numerical value
(only evaluated in systems
with functional safety FS— Input: –1 to 7
observe the Technical –1: Axis is not safe
Manual for Functional Safety
Default: 0
FS).
positionDiffRef Maximum position deviation between MC and Shut down –
CC when traversing the reference marks; control
300305
(RESET)
Maximum position deviation to the marking when
MP642
testing the axes LEVEL3
(only evaluated in systems
Format: Numerical value
with functional safety FS—
observe the Technical Input: 0 to 30 [mm] or [°]
Manual for Functional Safety With max. 9 decimal places
FS).
Default: 1
(optional parameter)
positionMatch Position at which the operator can test the Shut down –
agreement of the actual position with the control
300306
position values used internally (RESET)
MP646
(position of mark) LEVEL3
(only evaluated in systems
Format: Numerical value
with functional safety FS—
observe the Technical Input: –99 999.9999 to 99 999.9999
Manual for Functional Safety [mm] or [°]
FS). With max. 9 decimal places
(optional parameter) Default: 0
positionDiffNom Maximum permissible position deviation for Shut down –
actual/nominal monitoring with position control
300314
values (RESET)
MP641
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 30 [mm] or [°]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 1
FS).
(optional parameter)

January 2015 4.11 List of machine parameters 861


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
speedDiffNom Maximum permissible speed deviation in % Shut down –
for actual/nominal monitoring of speed values control
300315
(RESET)
Format: Numerical value
MP630, MP631
LEVEL3
Input: 0 to 20 [%] of the
(only evaluated in systems
current nominal speed
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: No value
FS).
(optional parameter)
timeToleranceSpeed Time window for permissible overshoot of the Shut down –
limit values for nominal/actual monitoring of control
300328
speed values (RESET)
MP632, MP633
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 60 [s]
with functional safety FS—
observe the Technical Default: 10
Manual for Functional Safety
FS).
(optional parameter)
speedLimitSom2 Axes: Limit value for "Safely limited speed— Shut down –
SLS" in operating mode 2 (SOM 2) control
300316
(RESET)
Format: Numerical value
MP590
LEVEL3
Input: 0 to 60 000 [mm/min] or [°/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2000
Manual for Functional Safety
FS).
(optional parameter)
speedLimitSom3 Axes: Limit value for "Safely limited speed— Shut down –
SLS" in operating mode 3 (SOM 3) control
300329
(RESET)
Format: Numerical value
MP540
LEVEL3
Input: 0 to 60 000 [mm/min] or [°/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2000
Manual for Functional Safety
FS).
(optional parameter)

862 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
speedLimitSom4 Axes: Limit value for "Safely limited speed— Shut down –
SLS" in operating mode 4 (SOM 4) control
300317
(RESET)
Format: Numerical value
MP552
LEVEL3
Input: 0 to 60 000 [mm/min] or [°/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2000
Manual for Functional Safety
FS).
(optional parameter)
rpmLimitSom2 Spindle: Limit value for "Safely limited Shut down –
speed—SLS" in operating mode 2 (SOM 2) control
300330
(RESET)
Format: Numerical value
MP591
LEVEL3
Input: 0 to 3 600 000 [1/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 500
Manual for Functional Safety
FS).
(optional parameter)
rpmLimitSom3 Spindle: Limit value for "Safely limited Shut down –
speed—SLS" in operating mode 3 (SOM 3) control
300331
(RESET)
Format: Numerical value
MP541
LEVEL3
Input: 0 to 3 600 000 [1/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 500
Manual for Functional Safety
FS).
(optional parameter)
rpmLimitSom4 Spindle: Limit value for "Safely limited Shut down –
speed—SLS" in operating mode 4 (SOM 4) control
300332
(RESET)
Format: Numerical value
MP551
LEVEL3
Input: 0 to 3 600 000 [1/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 500
Manual for Functional Safety
FS).
(optional parameter)

January 2015 4.11 List of machine parameters 863


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
absLimitPos Positive absolute position limit values relative Shut down –
to the machine datum control
300308
(RESET)
Format: Numerical value
MP650
LEVEL3
Input: –99 999.9999 to 99 999.9999
(only evaluated in systems
[mm] or [°]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 0
FS).
(optional parameter)
absLimitNeg Negative absolute position limit values Shut down –
relative to the machine datum control
300309
(RESET)
Format: Numerical value
MP670
LEVEL3
Input: –99 999.9999 to 99 999.9999
(only evaluated in systems
[mm] or [°]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 0
FS).
(optional parameter)
positionRangeVmin Axes: Limit value for standstill monitoring in Shut down –
SOS state control
300310
(RESET)
Format: Numerical value
MP545
LEVEL3
Input: 0.001 to 30 [mm] or [°]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 0.5
Manual for Functional Safety
FS).
(optional parameter)
distLimitJog Axis-specific limit value for "safely limited Shut down –
increment—SLI" control
300319
(RESET)
Format: Numerical value
MP547
LEVEL3
Input: 0.001 to 10 [mm] or [°]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2
Manual for Functional Safety
FS).
(optional parameter)

864 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
timeLimitStop1 Default time for bringing the axis/spindle to a Shut down –
standstill on an axis-specific basis along the control
300320
emergency braking ramp for SS1 reaction (RESET)
MP525, MP526
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 1 000 [s]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 1
FS).
timeLimitStop2 Default time for bringing axis/spindle to a Shut down –
controlled standstill on an axis-specific basis control
300321
for SS2 reaction (RESET)
MP527, MP528
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 1 000 [s]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 1
FS).
(optional parameter)
distLimitStop2 Axes: Axis-specific limit value for maximum Shut down –
permissible path upon SS2 reaction control
300322
(RESET)
Format: Numerical value
MP550
LEVEL3
Input: 0.001 to 1 000.0 [mm] or [°]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 0.5
Manual for Functional Safety
FS).
(optional parameter)
revLimitStop2Som2 Spindle: Maximum permissible path or Shut down –
revolutions of the spindle upon SS2 reaction in control
300335
SOM2 operating mode (RESET)
MP556
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 2
FS).
(optional parameter)

January 2015 4.11 List of machine parameters 865


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
revLimitStop2Som3 Spindle: Maximum permissible path or Shut down –
revolutions of the spindle upon SS2 reaction in control
300336
SOM3 operating mode (RESET)
MP557
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 5
FS).
(optional parameter)
revLimitStop2Som4 Spindle: Maximum permissible path or Shut down –
revolutions of the spindle upon SS2 reaction in control
300337
SOM4 operating mode (RESET)
MP558
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 5
FS).
(optional parameter)
timeToleranceDvDt Delay time for dv/dt monitoring Shut down –
control
300323 Format: Numerical value
(RESET)
MP530 Input: 0 to 10 [s]
LEVEL3
With max. 9 decimal places
(only evaluated in systems
with functional safety FS— Default: 0.03
observe the Technical
Manual for Functional Safety
FS).
(optional parameter)

866 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
encoderForSafety Optional selection of rotary encoders for Shut down –
functional safety control
300333
(RESET)
Defines whether the encoder system specified in
(only evaluated in systems
the axis configuration or only the motor encoder is LEVEL3
with functional safety FS—
to be used for functional safety.
observe the Technical 597110-06
Manual for Functional Safety Format: Selection menu
FS).
Input:
(optional parameter)
 speedAndPosEncoder
The encoder system specified in the axis
configuration is to be used
 speedEncoder
Only the motor encoder is used (safe rotary
encoder with EnDat 2.2 is required)
 posEncoder
Only the position encoder is used (safe position
encoder with EnDat 2.2 is required)
Default: speedAndPosEncoder
timeToBrakeTest Max. time until the test of the motor holding- Shut down –
brakes above holding torque control
300334
(RESET)
Format: Numerical value
MP620
LEVEL3
Input: 0 to 60 000 [min]
(only evaluated in systems
0: No time monitoring by 597110-06
with functional safety FS—
the SKERN
observe the Technical
Manual for Functional Safety Default: 480
FS).
(optional parameter)
CfgRollOver
Configuration of a rollover axis;
Rotary axes that are able to perform several—ideally any number of—revolutions are configured as
rollover axes.
Note: With CfgRollOver the parameters are only evaluated if the
CfgAxisPropKin/kindOfRotAxis parameter is set to "RollOver".

January 2015 4.11 List of machine parameters 867


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
shortestDistance Traverse path of rotary axis with modulo Allowed in 1024
counting mode strobe
300401
(SYNC)
If the parameter is set to on, the rotary axis
MP7682
approaches the target position on the shortest LEVEL1
(optional parameter) path (<= 180°) if programming is non-incremental.
Format: Selection menu
Input:
 on
Always approach target position on the shortest
path (<= 180°)
 off
Approach the target position without passing
over zero (same behavior as linear axis)
Default: off
startPosToModulo Rollover axis moves start angle into the range Program 1025
of 0..360° run is
300402
locked
The parameter is effective only if
(optional parameter) (RUN)
MP_shortestDistance = off is set.
LEVEL1
The parameter causes the position of the rotary
axis to be limited to the range from 0° to 360° at
the beginning of each positioning block.
Format: Selection menu
Input:
 on
Move the rotary axis into the 0 to 360° range at
the beginning of the positioning block.
 off
Do not move the rotary axis into the 0 to 360°
range.
Default: off
CfgMachDatumExtra
Definition of a fixed machine reference point
Datum for positioning blocks with M92, e.g. for tool-change position.
distFromMachDatum Position of the additional machine datum for Program 1974
M92 run is
300501
locked
Distance between the machine datum and this
MP950 (RUN)
additional machine datum.
LEVEL3
Format: Numerical value
597110-01
Input: –999 999 999 to +999 999 999
[mm] or [°]
With max. 9 decimal places
Default: 0

868 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgBrake (Optional parameter)
Specifies the settings for the brake. You define the name of the brake through the key name.
connection Controlling or wiring the brake Program 1546
run is
403301 Format: Numerical value
locked
MP830.x, MP831.x Input: (RUN)
(optional parameter)  -2 LEVEL3
Brake is controlled via the X344 output of the
inverter 597110-08
 -1
Brake control is via any PLC output
 0...n
Only relevant for systems with functional safety
FS. Please refer to the Technical Manual for
Functional Safety FS
Default: -2
testBrakeCurrent Test of motor brake: Factor for motor stall Program 1546
current run is
403302
locked
Format: Numerical value
MP2230.x (RUN)
Input: 0.1 to 30 [· motor stall current]
(optional parameter) LEVEL3
With max. 9 decimal places
Recommended: 1.3 · ML / M0 597110-05
Default: No value
testBrakeTolerance Test of motor brake: Maximum permissible Program 1547
path run is
403303
locked
Format: Numerical value
MP2232.x (RUN)
Input: 0 to 10 [mm] or [°]
(optional parameter) LEVEL3
Default: No value
597110-05
timeToBrakeTest Max. time until the test of the motor holding- Shut down 1547
brakes above holding torque control
403304
(RESET)
Format: Numerical value
MP620
LEVEL3
Input: 0 to 60 000 [min]
(only evaluated in systems
0: No time monitoring by 597110-06
with functional safety FS—
the SKERN
observe the Technical
Manual for Functional Safety Default: 480
FS).
(optional parameter)
CfgEndatInfo (Optional parameter)
Parameter for EnDat encoders. The TNC automatically defines the key names and uses the serial
numbers of the detected EnDat encoders for this purpose.

January 2015 4.11 List of machine parameters 869


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
endatMultiturnCtr EnDat multiturn counter Change at 1067
any time
403501 Caution: Usually automatically written by the
control. LEVEL3
(optional parameter)
Format: Numerical value 597110-09
Input: –2147483648 to 2147483647
Default: 0
endatOverflowPos Metric position of the last EnDat overrun Change at 1067
any time
403502 Caution: Usually automatically written by the
control. LEVEL3
(optional parameter)
Format: Numerical value 597110-09
Input: 0 to 360
9 decimal places
Default: 0
motName Name of motor from the motor table Change at 1067
any time
403503 Format: String
LEVEL3
(optional parameter) Input: 40 characters
597110-09
ParameterSets
Parameter sets for the axes
[Key name of the parameter set]
Any key name can be chosen for the parameter set. In the default configuration, the names are
preconfigured according to the following pattern: P.[axis designation], e.g. PX, PY, PZ, etc.
The parameter sets must be assigned to the respective axis in CfgAxis/parList.
CfgAxisHardware
Specifies the settings for the axis hardware;
e.g. wiring configuration, connection of the encoders, etc.
signCorrActualVal Reversal of the algebraic sign of the position Program 1080
encoder signal run is
400001
locked
Invert counting direction of the actual value.
MP1040 XOR MP210 (dual- (RUN)
encoder system), Format: Selection menu
LEVEL3
off with single-encoder
Input:
system 597110-01
 on
The algebraic sign of the position encoder is
inverted.
 off
No reversal of the algebraic sign of the position
encoder.
Default: off

870 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
signCorrNominalVal Sign reversal of the speed command signal Program 1080
run is
400002 Invert counting direction of the nominal speed
locked
value.
MP210 (RUN)
Format: Selection menu
LEVEL3
Input:
597110-01
 on
The algebraic sign of the nominal values for
position and speed and the actual values of the
position encoder are inverted.
 off
No reversal of the algebraic sign of the nominal
values for position and speed and the actual
value of the position encoder.
Default: off

January 2015 4.11 List of machine parameters 871


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderType Position measurement via position encoder or Program 1056
motor encoder run is
400003
locked
Specifies the type of position encoder.
(RUN)
Format: Selection menu
LEVEL3
Input:
597110-01
 MC_DISTANCE_CODED
Distance-coded position encoder on the MC
(X01 to X06 and X35 to X38)
 MC_NOT_DISTANCE_CODED
Not a distance-coded position encoder on the
MC (X01 to X06 and X35 to X38)
 MC_ENDAT
EnDat position encoder on the MC (X01 to X06
and X35 to X38)
 NO_ENCODER
No position measurement
 CC_MOTOR_ENCODER
Position measurement by speed encoder on the
CC (X15 to X20 and X80 to X83)
 CC_DISTANCE_CODED
Distance-coded position encoder on the CC
(X201 to X210)
 CC_NOT_DISTANCE_CODED
Not a distance-coded position encoder on the
CC (X201 to X210)
 CC_MOTOR_ENDAT
Position measurement by EnDat speed encoder
on the CC (X15 to X20 and X80 to X83)
 CC_EXTERN_ENDAT
External EnDat encoder on the CC (X201 to
X210)
 CC_MOTOR_ENDAT_INCR
HEIDENHAIN EnDat interface box (EIB) on the
CC (X201 to X210)
 CC_EXTERN_ENDAT_INCR
HEIDENHAIN EnDat interface box (EIB) on the
CC (X201 to X210)
 MC_NOT_DISTANCE_CODED_CC_ENDAT
Reserved, do not use!
 C_EXTERN_ENDAT_2_2
External EnDat 2.2 encoder on the CC (X201 to
X210)

872 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderType Position measurement via position encoder or Program 1057
motor encoder run is
400003
locked
Specifies the type of position encoder.
(RUN)
Format: Selection menu
LEVEL3
Input:
597110-01
 MC_DISTANCE_CODED
Distance-coded position encoder on the MC
(X01 to X04, X05 optional)
 MC_NOT_DISTANCE_CODED
Non-distance-coded position encoder on the
MC (X01 to X04, X05 optional)
 MC_ENDAT
Position encoder with EnDat interface on the
MC
(X01 to X04, X05 optional)
 NO_ENCODER
No position measurement
distPerMotorTurn Linear distance of one motor revolution Program 1058
run is
400004 For analog feedback control (no motor encoder):
locked
Set the value 1, the parameter has no effect.
MP1054 (RUN)
Format: Numerical value
Condition:
Input: 0.000 000 001 to 2000 REF
[mm] or [°]
LEVEL3
Default: 5
597110-01
distPerMotorTurnF Formula for the distance covered in one motor Program 1058
revolution run is
400020
locked
Instead of a fixed value, enter a formula for the
(optional parameter) (RUN)
transmission ratio.
If you enter a formula, MP_distPerMotorTurn LEVEL3
has no function.
597110-06
Entering a formula is only useful if a position
encoder is connected to the axis.
Format: String
Input: Formula (max. 300 characters)
For syntax, see page 567
Default: No value

January 2015 4.11 List of machine parameters 873


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderDist Distance for number of signal periods from Program 1064
MP_posEncoderIncr run is
400005
locked
Enter 360° for spindles.
MP331 (RUN)
For multiturn encoders with EnDat interface,
enter the distance traversed per encoder Condition:
revolution. REF
Format: Numerical value LEVEL3
Input: 0.000 000 001 to 99 999.9999 597110-01
[mm] or [°]
Default: 5
posEncoderIncr Number of signal periods for distance from Program 1065
MP_posEncoderDist run is
400006
locked
Number of increments of external encoder. For
MP332, MP3142 (RUN)
spindles, enter the line count of the encoder used.
For multiturn encoders with EnDat interface, Condition:
enter the increments per encoder revolution. REF
Format: Numerical value LEVEL3
Input: 1 to 16 777 215 [incr] 597110-01
Default: 2048 [incr]
genExtIntPolFactor External interpolation for encoder signals Program 1069
run is
400017 Only functional for the CC 61xx and CC 424
locked
controller units.
MP340 (RUN)
Format: Numerical value
(optional parameter) Condition:
Input: 0 to 99 REF
0, 1: No external interpolation
LEVEL3
Default: 0
597110-03
genExtIntPolFactor External interpolation for encoder signals Program –
run is
400017 Reserved. Only functional for the CC 61xx and
locked
CC 424 controller units.
MP340 (RUN)
(optional parameter) Condition:
REF
LEVEL3
597110-03

874 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderInput Assignment of a position encoder input to the Program 1073
axis run is
400008
locked
Format: Selection menu
MP110, MP111 (RUN)
Input:
Condition:
 none REF
No position encoder connected
LEVEL3
 X01 to X06
Position encoder inputs are X01 to X06 (on the 597110-01
MC 42x)
 X35 to X38
Position encoder inputs are X35 to X38 (on the
MC 42x)
 X201 to X210
Position encoder inputs are X201 to X210 (on
the CC)
Default: none
posEncoderInput Assignment of a position encoder input to the Program 1070
axis run is
400008
locked
Format: Selection menu
MP110, MP111 (RUN)
Input:
Condition:
 none REF
No position encoder connected
LEVEL3
 X01 to X06
Position encoder inputs are X01 to X06 (on the 597110-01
MC 128 or MC 32x)
 X35 to X38
Reserved
 X201 to X210
Reserved
Default: none
posEncoderSignal Signal amplitude at the position encoder input Program 1075
run is
400009 On the CC 61xx:
locked
Encoders with 11 µAPP signal are not supported!
MP115.0, MP116.0 (RUN)
Format: Selection menu
LEVEL3
Input:
597110-01
 1 Vpp
The input signal of the encoder is 1 VSS
Default: 1 Vpp

January 2015 4.11 List of machine parameters 875


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderSignal Signal amplitude at the position encoder input Program 1071
run is
400009 Format: Selection menu
locked
MP115.0, MP116.0 Input: (RUN)
 1 Vpp LEVEL3
The input signal of the encoder is 1 VSS
597110-01
 11 uA
The input signal of the encoder is 11 µA
Default: 1 Vpp
posEncoderFreq Input frequency of position encoder inputs Program 1075
run is
400010 Format: Selection menu
locked
MP115.2, MP116.2 Input: (RUN)
 fast LEVEL3
Input frequency is max. 400 kHz
597110-01
 slow
Input frequency is max. 27 kHz
Default: fast
posEncoderResistor Terminating resistor at position encoder input Program 1076
run is
400011 Format: Selection menu
locked
MP115.1, MP116.1 Input: (RUN)
 without LEVEL3
Without terminating resistor
597110-01
 120 Ohm
With resistor
Default: without
speedEncoderInput Assignment of a speed encoder input to the Program 1073
axis run is
400012
locked
Format: Selection menu
MP112 (RUN)
Input:
Condition:
 none REF
No speed encoder connected
LEVEL3
 X15 to X20
Speed encoder inputs are X15 to X20 597110-01
 X80 to X83
Speed encoder inputs are X80 to X83
 X301 to X306
Reserved
 Inverter
Reserved
Default: none

876 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
inverterInterface Assignment of the speed command output to Program 1073
the axis run is
400013
locked
Format: Selection menu
MP120, MP121 (RUN)
Input:
Condition:
 none REF
Not a PWM output, no power module
connected LEVEL3
 X51 to X56 597110-01
PWM outputs are X51 to X60
 X80 to X85
Only on UEC 11x: Motor connections are X80 to
X85
 X301.1 to X305.2
Reserved
Default: none
ctrlPerformance Controller performance of this axis on the CC Program 1658
run is
400018 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 SINGLE LEVEL3
Axis is a single-speed control loop with normal
computing power. 597110-03
 DOUBLE
Axis is a double-speed control loop with two-
fold computing power.
(software option 49)
Default: SINGLE
hsciCcIndex Index of the CC 61xx controller unit in the HSCI Program 1074
chain run is
400014
locked
Assign the index based on the position of the
(optional parameter) (RUN)
CC 61xx in the HSCI chain:
The first CC after the MC is assigned the number Condition:
0, the second one the number 1, etc. REF
Format: Numerical value LEVEL3
Input: 0 to 4 597110-03
Default: No value
driveOffGroup Assignment of the axis to the switch-off group Program 351
run is
400015 You can assign the axis to a maximum of 8 switch-
locked
off groups. To do so, insert one line each in the list
(optional parameter) (RUN)
and select the desired switch-off group in the
selection menu. LEVEL3
Format: List [0 to 7] 597110-03
Input: Name of the switch-off group
Group1 to Group8, or None

January 2015 4.11 List of machine parameters 877


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
brakes Assignment of brakes to an axis Program –
run is
400021 You can assign a maximum of 4 brakes to the axis.
locked
To do so, insert one line each in the list and select
(optional parameter) (RUN)
the name of the desired brake in the selection
menu. Key name from the CfgBrake configuration LEVEL3
object.
597110-08
Format: List [0 to 4]
Input: Name of the brake
CfgPosControl
Position control parameters
kvFactor Kv factor (proportional component of position Allowed in 1331
controller) strobe
400801
(SYNC)
Note:
MP1510, MP1810, MP3440
The unit of the kv factor of the TNC 640 differs LEVEL3
from that of the iTNC 530:
597110-01
Unit TNC 640: mm / (mm · s)
Unit of the iTNC 530: m / (mm · min)
Therefore:
iTNC kv factor · 16.66 = TNC 640 kv factor!
Format: Numerical value
Input: 0 to 1000 [1/s]
With max. 9 decimal places
Default: 0 [1/s]
servoLagMin1 Minimum for following-error monitoring Allowed in 1506
(clearable) strobe
400802
(SYNC)
Position monitoring during operation with
MP1410
feedforward. LEVEL3
This value applies for constant feed rates and 597110-01
clearable error messages.
Format: Numerical value
Input: 0 to 100 [mm] or [°]
With max. 9 decimal places
Default: 1

878 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
servoLagMax1 Maximum for following-error monitoring Allowed in 1506
(clearable) strobe
400803
(SYNC)
Position monitoring during operation with
MP1420
feedforward. LEVEL3
This value applies for changes in feed rate and 597110-01
clearable error messages.
Format: Numerical value
Input: 0 to 100 [mm] or [°]
With max. 9 decimal places
Default: 5
servoLagMin2 Minimum for following-error monitoring Allowed in 1507
(emergency stop) strobe
400804
(SYNC)
Position monitoring during operation with
feedforward. LEVEL3
This value applies for constant feed rates and the 597110-01
emergency-stop error message.
Format: Numerical value
Input: 0 to 100 [mm] or [°]
With max. 9 decimal places
Default: 1
servoLagMax2 Maximum for following-error monitoring Allowed in 1507
(emergency stop) strobe
400805
(SYNC)
Position monitoring during operation with
MP1420
feedforward. LEVEL3
This value applies for changes in feed rate and the 597110-01
emergency-stop error message.
Format: Numerical value
Input: 0 to 100 [mm] or [°]
With max. 9 decimal places
Default: 5
feedForwardFactor Factor for velocity feedforward control Allowed in 1329
strobe
400806 Configuration of velocity feedforward in all modes
(SYNC)
of operation.
MP1396, MP1391
LEVEL3
MP1392 Vout = Kv · following error + Vnom · fFF
597110-01
Format: Numerical value
Input: 0 to 1.5
With max. 9 decimal places
Default: 1

January 2015 4.11 List of machine parameters 879


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ctrlOutputLimit Controller output limit for the position Allowed in 1332
controller strobe
400807
(SYNC)
Used only during switch-on of position feedback
control without actual-to-nominal value transfer. LEVEL3
Format: Numerical value 597110-01
Input: 0 to 1666 [mm/min] or [°/min]
With max. 9 decimal places
Default: 0
servoLagGainFactor Multiplication factor for the kv factor Allowed in 1331
strobe
400811 Enter here an optional multiplication factor for the
(SYNC)
kv factor.
MP1820
LEVEL3
Format: Numerical value
(optional parameter)
597110-06
Input: 0 to 100 [%]
With max. 9 decimal places
Default: 50
servoLagKinkSpeed Characteristic curve kink point Allowed in –
strobe
400812 Characteristic curve kink point in % of rapid
(SYNC)
traverse
MP1830
LEVEL3
Format: Numerical value
(optional parameter)
597110-06
Input: 0 to 100 [%]
With max. 9 decimal places
Default: 20
CfgAxisAnalog (optional parameter)
Description of an analog axis or spindle
analogOutput Speed command output of axis or spindle Program 1091
run is
400101 Format: Selection menu
locked
MP120, Input: (RUN)
MP121
 none: LEVEL3
No analog output assigned
 analog Output 1...13:
Analog outputs 1 to 6 (connector X8 on MC 3xx
or MC 4xx)
Analog outputs 1 to 4 (CMA-H 04-04-00)
Analog outputs 7 to 13 (connector X9 on MC
4xx)
Default: analog Output 1

880 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
analogOffset Offset on analog axis Program 1408
run is
400102 Offset that is only effective for analog axes.
locked
MP1080 Format: Numerical value (RUN)
Input: –1.0 to 1.0 [V] LEVEL3
Default:´ 0.0 [V]
kvFactor2 Proportional component of position controller Program 1398
above MP_kvSpeedLimit run is
400103
locked
Parameter only for analog axes.
(optional parameter) (RUN)
Note:
LEVEL3
The unit of the kv factor of the TNC 640 differs
from that of the iTNC 530:
Unit TNC 640: mm / (mm · s)
Unit of the iTNC 530: m / (mm · min)
Therefore:
iTNC kv factor · 16.66 = TNC 640 kv factor
Format: Numerical value
Input: 0.000 to 1000.000 [1/s]
Default: 0.000 [1/s]
kvSpeedLimit Limit velocity for MP_kvFactor2 Program 1399
run is
400104 Parameter only for analog axes.
locked
(optional parameter) Format: Numerical value (RUN)
Input: 0 to 36 000 000 LEVEL3
[mm/min] or [°/min]
597110-01
Decimal
places: Max. 9
Default: 0
maxFeedAt9V Velocity at 9 volts Program 1092
run is
400105 Format: Numerical value
locked
Input: 0.000 000 006 (RUN)
to 36 000 000
LEVEL3
[mm/min] or [°/min]
597110-01
Default: 4999.9898
accForwardFactor Factor for acceleration feedforward control Program 1401
Parameter only for analog axes run is
400106
locked
Format: Numerical value
(optional parameter) (RUN)
Input: 0 to 0.01
LEVEL3
Decimal
597110-01
places: Max. 9
Default: 0

January 2015 4.11 List of machine parameters 881


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compStrength Strength of the compensation Program 1402
run is
400107 Compensation of reversal spikes for analog axes.
locked
(optional parameter) Specify the surface of the compensation curve (RUN)
that is superimposed on the nominal speed
LEVEL3
command during a reversal of the traverse
direction. 597110-01
Definition of algebraic sign:
 0:
No compensation
 positive:
Compensation works in the direction of
acceleration.
 negative:
Compensation works against the acceleration.
Format: Numerical value
Input: –999 999 999 to +999 999 999
[mm] or [°]
Decimal
places: max. 9
Default: 0
compWidth Duration of the compensation Program 1402
run is
400108 Compensation of reversal spikes for analog axes.
locked
(optional parameter) Specify the distance (with respect to (RUN)
MP_compTimeOffset = 0) to the reversal point
LEVEL3
within which the compensation curve is
superimposed on the nominal speed command. 597110-01
Format: Numerical value
Input: 0 to 999 999 999 [mm] or [°]
Decimal
places: max. 9
Default: 0.001

882 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compTimeOffset Time offset of the compensation Program 1403
run is
400109 Compensation of reversal spikes for analog axes.
locked
(optional parameter) Specify the velocity of the axis at which the (RUN)
compensation curve reaches its maximum.
LEVEL3
Definition of algebraic sign:
597110-01
 0:
The compensation curve reaches its maximum
at the time of direction reversal.
 positive:
The compensation curve is delayed and
therefore reaches its maximum after the
direction reversal.
 negative:
The compensation curve is output earlier and
therefore reaches its maximum before the
actual direction reversal.
Format: Numerical value
Input: –999 999 999 to 999 999 999
[mm/min] or [°/min]
Decimal
places: max. 9
Default: 0

January 2015 4.11 List of machine parameters 883


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compFFAdjust Acceleration compensation Program 1404
run is
400110 With this parameter, you can take into account
locked
that the required compensation strength depends
(optional parameter) (RUN)
on acceleration during direction reversal. The
value indicates by how much the compensation LEVEL3
strength defined in MP_compStrength is
597110-01
corrected during low acceleration.
Definition of algebraic sign:
 0:
The compensation strength is constant over all
acceleration values.
 positive:
The compensation strength is increased during
low acceleration.
 negative:
The compensation strength is decreased during
low acceleration.
Format: Numerical value
Input: –999 999 999 to 999 999 999
[mm] or [°]
Decimal
places: max. 9
Default: 0
compRefAcc Reference acceleration Program 1404
run is
400111 The value entered is required for acceleration
locked
compensation (MP_compFFAdjust). The
(optional parameter) (RUN)
compensation strength entered in
MP_compStrength is used for the given LEVEL3
acceleration.
597110-01
Format: Numerical value
Input: 0 to 999 999 999
[m/s2] or [°/s2]
Decimal
places: max. 9
Default: No value
compLimitFactor Limit of reversal-spike compensation Program 1405
run is
400114 Factor for raising or lowering the internal default
locked
software limit of 3 mm/s.
(optional parameter) (RUN)
Format: Numerical value
LEVEL3
Input: 0.5 to 5
597110-03
Decimal
places: max. 9
Default: 1

884 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
noOffsetAdjust Excludes the axis from automatic offset Program 1408
adjustment run is
400112
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL3
 TRUE:
Axis will be excluded from offset adjustment. 597110-01
 FALSE:
Offset of this axis is adjusted.
Default: No value
unipolar Algebraic sign with analog unipolar drives Program 1604
run is
400113 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 off LEVEL3
Not a unipolar drive.
597110-03
 always positive
A positive voltage is output for each direction of
rotation (M3, M4).
 always negative
A negative voltage is output for each direction
of rotation (M3, M4).
 clip positive
If the nominal voltage < 0, the output is 0. If it is
> 0, the nominal voltage is output.
 clip negative
If the nominal voltage > 0, the output is 0. If it is
< 0, the nominal voltage is output.
Default: off
CfgAxisHandwheel
Configuration of the handwheel for this axis
input Connection of the encoder handwheel Change at 2141
any time
400201 Format: Selection menu
(NOTHING)
Input: none or
LEVEL3
X01 to X06
X35 to X38 597110-01
X201 to X210
Default: none

January 2015 4.11 List of machine parameters 885


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
hsciCcIndex Index of the CC controller unit on the HSCI Change at 2141
chain any time
400210
(NOTHING)
If more than one CC controller unit is used on the
(optional parameter)
HSCI chain, enter the CC index for the position LEVEL3
encoder input to which the handwheel is
597110-03
connected. Only the CCs are counted, further
HSCI devices (e.g. PLs) are not relevant.
If only one CC is used, enter the value 0.
Format: Numerical value
Input: 0 to 4
Default: No value
countDir Axis-dependent counting direction of the Change at 2143
handwheel any time
400202
(NOTHING)
The parameter applies both for the handwheel at
the position input and for the serial handwheel LEVEL3
connected to X23.
597110-02
Format: Selection menu
Input:
 positive:
Counting direction is positive
 negative:
Counting direction is negative
Default: positive
distPerRevol Axis traverse per handwheel revolution Change at 2143
any time
400203 Applies for all connected handwheels (handwheel
(NOTHING)
at position input and at X23).
LEVEL3
The value is multiplied by MP_speedFactor
(CfgHandwheel). 597110-02
Format: Numerical value
Input: 0.000 000 001 to max. value
[mm] or [°]
Decimal
places: max. 9
Default: 1
incrPerRevol Increments per revolution of handwheel at Change at 2143
encoder input any time
400204
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 100 to 2 147 483 647 [incr.]
597110-01
Default: 1024

886 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
rasterPerRevol Detent steps per revolution of handwheel at Change at 2144
encoder input any time
400205
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL3
Input: Number of detent positions
0: Handwheel without detent 597110-01
0 to 2 147 483 647
Default: 0
encoderSignal Signal amplitude at position encoder input for Change at 2141
handwheel any time
400206
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-01
 1 VPP:
Input signal of the encoder is 1 VPP signal.
 11 µA:
Input signal of the encoder is 11 µA signal.
This setting is not supported by the CC 61xx
controller unit! If the value is set nevertheless,
the control outputs the
0400: 11 µA not supported error message.
 TTL:
Input signal of the encoder is TTL signal.
Default: 1 Vpp
encoderFreq Input frequency of position encoder input for Change at 2142
handwheel any time
400207
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-01
 fast:
Input frequency is 350 kHz
 slow:
Input frequency is 50 kHz
Default: fast
encoderResistor Terminating resistor of position-encoder input Change at 2142
for handwheel any time
400208
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-01
 without:
Without terminating resistor
 120 Ohm:
With terminating resistor
Default: without

January 2015 4.11 List of machine parameters 887


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
decToSoftLimit Braking ramp for handwheel movement to Change at 2145
software limit switch any time
400209
(NOTHING)
(MP_swLimitSwitchPos or
(optional parameter)
MP_swLimitSwitchNeg) LEVEL3
Format: Numerical value 597110-03
Input: Braking ramp [m/s2] or
[1000°/s2] for rotary axes
0 to max. value
Decimal
places: max. 9
Default: 0
CfgFeedLimits
Define the axis velocities and acceleration;
For rotary axes and spindles, the velocity is specified in [°/min] and the acceleration in
[1000°/s2].
minFeed Applies only to the main spindle: minimum Allowed in 1316
spindle speed strobe 1593
400301
(SYNC)
Note: The evaluation would also be made for
MP3240.1
linear axes and rotary axes [Key name of the axis LEVEL3
parameter set]. The default value (=0) should not
597110-01
be changed so as not to limit the minimum axis
feed rate.
Therefore, only useful for spindles.
Format: Numerical value
Input: 0 to 36 000 000 [°/min]
Decimal
places: max. 9
Default: 0
maxFeed Maximum axis feed rate (rapid traverse) or Allowed in 1316
maximum spindle speed strobe
400302
(SYNC)
Format: Numerical value
MP1010,
LEVEL3
MP3515 Input: 0.000 000 006 to 36 000 000
[mm/min] or [°/min] 597110-01
Decimal
places: max. 9
Default: 16 000.2

888 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
rapidFeed Rapid traverse in manual mode Allowed in 1316
strobe
400303 Maximum axis feed rate in manual mode, using
(SYNC)
the rapid traverse key. For rotary axes, the velocity
MP1010
is specified in [°/min]. The parameter is not LEVEL3
evaluated for spindles.
597110-01
Format: Numerical value
Input: 0.000 000 006 to 36 000 000
[mm/min] or [°/min]
Decimal
places: max. 9
Default: 4999.98
manualFeed Maximum manual feed rate Allowed in 1317
strobe
400304 In the El. Handwheel mode of operation, this feed
(SYNC)
rate is multiplied by CfgHandwheel/feedFactor.
MP1020
For rotary axes, the velocity is specified in LEVEL3
[°/min]. The parameter is not evaluated for
597110-01
spindles.
Format: Numerical value
Input: 0.000 000 006 to 36 000 000
[mm/min] or [°/min]
Decimal
places: max. 9
Default: 4999.98
maxAcceleration Max. permissible axis acceleration during Allowed in 1317
position control strobe
400305
(SYNC)
For rotary axes and spindles, the acceleration is
MP1060,
specified in [1/min/s] or [°/s2]. LEVEL3
MP3411
Format: Numerical value 597110-01
Input: 0.000 000 001 to 1000
[m/s2] or [1/min/s] or [°/s2]
Default: 3
maxAccSpeedCtrl Optional acceleration for the spindle with Allowed in 1579
shaft speed control strobe
400311
(SYNC)
This parameter is effective only with spindles. If 0
(optional parameter)
is entered or there is no parameter, the LEVEL3
acceleration from MP_maxAcceleration is used.
597110-03
Format: Numerical value
Input: Value in [1/min/s] or [°/s2]
Decimal
places: max. 9
Default: 0

January 2015 4.11 List of machine parameters 889


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxAccSpeedCtrl Optional acceleration for the spindle with Allowed in –
shaft speed control strobe
400311
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-03
maxDecSpeedCtrl Optional braking ramp for the spindle with Allowed in 1580
shaft speed control strobe
400312
(SYNC)
This parameter is effective only with spindles. If
(optional parameter)
the value 0 is entered or the parameter is not LEVEL3
available, the value from MP_maxAccSpeedCtrl
597110-03
will be used for the brake acceleration. If
MP_maxAccSpeedCtrl is also 0 or not present,
the value from MP_maxAcceleration will be
used.
Format: Numerical value
Input: Value in [1/min/s] or [°/s2]
Decimal
places: max. 9
Default: 0
maxDecSpeedCtrl Optional braking ramp for the spindle with Allowed in –
shaft speed control strobe
400312
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-03
limitSpeedAcc Limit speed for reduction of the acceleration Allowed in 1581
strobe
400313 Acceleration of the spindle with a "kink" in the
(SYNC)
acceleration curve:
(optional parameter)
The parameter sets the absolute limit speed LEVEL3
above which the acceleration is reduced.
597110-05
Format: Numerical value
Input: Value in [1/min] or [°/min]
With max. 9 decimal places
Default: 0
limitSpeedAcc Limit speed for reduction of the acceleration Allowed in –
strobe
400313 Reserved.
(SYNC)
(optional parameter)
LEVEL3
597110-05

890 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
limitSpeedDec Limit speed for reduction of the braking Allowed in 1581
deceleration strobe
400314
(SYNC)
Braking of the spindle with a "kink" in the
(optional parameter)
deceleration curve: LEVEL3
The parameter sets the absolute limit speed
597110-05
above which the braking deceleration is reduced.
Format: Numerical value
Input: Value in [1/min] or [°/min]
With max. 9 decimal places
Default: 0
limitSpeedDec Limit speed for reduction of the braking Allowed in –
deceleration strobe
400314
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-05
limitAccSpeedCtrl Absolute acceleration. Effective above Allowed in 1581
MP_limitSpeedAcc strobe
400315
(SYNC)
Acceleration of the spindle with a "kink" in the
(optional parameter)
acceleration curve: LEVEL3
Specifies the absolute acceleration of the spindle,
597110-05
which becomes effective above the speed
defined with MP_limitSpeedAcc.
Format: Numerical value
Input: Value in [1/min/s] or [°/s2]
With max. 9 decimal places
Default: 0
limitAccSpeedCtrlF Formula input for acceleration. Effective above Allowed in 1581
MP_limitSpeedAcc strobe
400317
(SYNC)
Acceleration of the spindle with a "kink" in the
(optional parameter)
acceleration curve. LEVEL3
For correct syntax for formula input, see page 597110-09
567.
Format: String
Input: Formula (max. 300 characters)
Default: 0
limitAccSpeedCtrl Absolute acceleration. Effective above Allowed in –
MP_limitSpeedAcc strobe
400315
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-05

January 2015 4.11 List of machine parameters 891


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
limitDecSpeedCtrl Absolute deceleration during braking. Allowed in 1582
Effective above MP_limitSpeedDec strobe
400316
(SYNC)
Braking of the spindle with a "kink" in the
(optional parameter)
deceleration curve: LEVEL3
Specifies the absolute deceleration during
597110-05
braking, which becomes effective above the
speed defined with MP_limitSpeedDec.
Format: Numerical value
Input: Value in [1/min/s] or [°/s2]
With max. 9 decimal places
Default: 0
limitDecSpeedCtrlF Formula input for delay during braking, Allowed in 1582
effective above MP_limitSpeedDec strobe
400318
(SYNC)
Braking of the spindle with a "kink" in the braking
(optional parameter)
curve. LEVEL3
For correct syntax for formula input, see page 597110-09
567.
Format: String
Input: Formula (max. 300 characters)
Default: 0
limitDecSpeedCtrl Absolute deceleration during braking. Allowed in –
Effective above MP_limitSpeedDec strobe
400316
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-05
M19MaxSpeed Maximum rotational speed limit for M19 Allowed in 1570
strobe
400307 Format: Numerical value
(SYNC)
MP3520.1 Input: 100 to 20 000 [1/min]
LEVEL3
Default: 1000
597110-01
M19NcSpeed Nominal speed for an oriented spindle stop Allowed in 1571
commanded by the NC strobe
400310
(SYNC)
Format: Numerical value
LEVEL3
Input: Shaft speed [1/min]
597110-03
Default: 8

892 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
nominalSpeed Rated speed for the gear range Allowed in 2405
strobe
400308 Enter the greatest programmable shaft speed at
(SYNC)
which this spindle parameter set is to be used. If
(optional parameter)
a shaft speed greater than the indicated one is LEVEL3
MP3510 programmed, the transmission switches to the
597110-02
next higher gear range.
Format: Numerical value
Input: Shaft speed [1/min]
Default: 0
restoreFeed Feed rate for returning to the contour Allowed in 1010
strobe
400309 Format: Numerical value
(SYNC)
Input: Feed rate [mm/min] or [°/min]
LEVEL3
With max. 9 decimal places
597110-02
Default: 1200 [mm/min]

January 2015 4.11 List of machine parameters 893


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgReferencing
Axis parameters for the reference run;
For rotary axes and spindles, the velocity is specified in [°/min].
 refAuxFunctions (optional parameter)
Additional settings for traversing the reference mark
refType Sequence for finding the reference mark Program 1273
run is
400401 The setting in MP_onTheFly defines whether the
locked
reference run can only be started with NC Start or
MP1350 (RUN)
also with the axis direction keys or, for the
spindle, with M3, M4. Condition:
REF
Format: Selection menu
LEVEL3
Input:
597110-06
 None
No evaluation of the reference mark.
If the reference run with the spindle is
performed via a trip dog, this value must be set.
 Mode 1
Encoder with one reference mark (rotational or
linear).
Sequence: Adopt reference point at any time;
if trip dog is traversed: reverse direction of
traverse
 Mode 2
Encoder with more than one reference mark
(not distance-coded, rotational or linear)
Sequence: Move quickly onto the dog, move
away slowly, then adopt the reference point
 Mode 3
Distance-coded encoder (rotational or linear)
Sequence: After crossing over 2 reference
marks, adopt the reference point; if trip dog is
traversed: reverse direction of traverse
 Mode 5
Encoder with EnDat interface; reference run is
not required
 Mode 10
Encoder with one or more reference marks (not
distance-coded, rotational or linear)
Sequence: Move quickly onto the dog, move
away quickly, move slowly onto dog, adopt the
reference point
 Mode 11
Reserved
Default: None

894 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
onTheFly Reference mark evaluation "on the fly" Program 1273
run is
400414 Format: Selection menu
locked
Input: (RUN)
 TRUE LEVEL3
Evaluate the reference mark with any movement
of the axis/spindle (e.g. movement via axis 597110-06
direction keys in Manual Operation mode).
 FALSE
Evaluate the reference mark only in the
"Traverse reference marks" mode
Default: TRUE
refPosition Position of the machine datum Program 1284
run is
400403 Position given with respect to scale reference
locked
point. For encoders with distance-coded
MP960, (RUN)
reference marks, with respect to the zero
MP3430
reference mark. Condition:
For EnDat encoders, relative to the absolute REF
encoder datum.
LEVEL3
Format: Numerical value
597110-01
Input: –100 000 to 100 000
[mm] or [°]
Decimal
places: max. 9
Default: 0
endatDiff Permissible difference of EnDat encoders Program 1508
during switch-on run is
400405
locked
Format: Numerical value
(RUN)
Input: –100 000 to 100 000 [mm] or [°]
Condition:
Decimal REF
places: Max. 9
LEVEL3
Default: 0
597110-01
refFeedLow Low speed when finding the reference mark Program 1274
run is
400406 Depending on MP_refType, this low speed is
locked
used for finding the reference mark.
MP1330 (RUN)
Format: Numerical value
Condition:
Input: 0 to 36 000 000 [mm/min] or [°/min] REF
Decimal LEVEL3
places: max. 9
597110-01
Default: 600

January 2015 4.11 List of machine parameters 895


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
refFeedHigh High velocity for traversing the reference mark Program 1274
Depending on MP_refType, this high speed is run is
400407
used for finding the reference mark. locked
MP1330 (RUN)
Format: Numerical value
Condition:
Input: 0 to 36 000 000 [mm/min] or [°/min]
REF
Decimal
LEVEL3
places: max. 9
597110-01
Default: 1200
refDirection Traversing direction for finding the reference mark Program 1274
run is
400408 Format: Selection menu
locked
MP1320 Input: (RUN)
 positive Condition:
Positive traverse direction REF
 negative
LEVEL3
Negative traverse direction
597110-01
Default: negative
posEncoderRefDist Nominal increment between two fixed Program 1065
reference marks run is
400416
locked
Number of signal periods between the reference
MP334 (RUN)
marks. The attribute is only relevant for encoders
with distance-coded reference marks. Condition:
REF
Format: Numerical value
LEVEL3
Input: –65 535 to 65 535 [incr.]
597110-01
Default: 100
moveAfterRef Activate movement after finding the reference Program 1285
mark run is
400409
locked
Format: Selection menu
(RUN)
Input:
Condition:
 on REF
Positioning after reference-mark traverse is active
LEVEL3
 off
No positioning after reference-mark traverse 597110-02
Default: off

896 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
moveAfterRefType Type of movement after finding the reference Program 1285
mark run is
400410
locked
Format: Selection menu
(RUN)
Input:
Condition:
 absolute REF
Absolute positioning. This function is mainly
intended for positioning rotary tables. Please LEVEL3
ensure that no collision occurs as a result of this 597110-02
positioning. The software limit switches are
already active.
 relative
Incremental positioning
 HirthRasterPos
Approach next Hirth grid position in positive
direction.
 HirthRasterNeg
Approach next Hirth grid position in negative
direction.
Default: absolute
moveAfterRefPos Position for positioning after traversing the Program 1285
reference mark run is
400411
locked
Format: Numerical value
(RUN)
Input: –100 000 to 100 000 [mm] or [°]
Condition:
Decimal REF
places: max. 9
LEVEL3
Default: 0
597110-01
moveAfterRefFeed Feed rate for positioning after traversing the Program 1285
reference mark run is
400412
locked
Format: Numerical value
(RUN)
Input: 0 to 36 000 000 [mm/min] or [°/min]
Condition:
Decimal REF
places: max. 9
LEVEL3
Default: 6000
597110-01
refSwitchLowActive (bit 0) Trip dog (reference end position) is low active Program 1281
run is
400415 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE Condition:
Trip dog (reference end position) is low active (0) REF
 FALSE
LEVEL3
Trip dog (reference end position) is high active (1)
597110-06
Default: FALSE

January 2015 4.11 List of machine parameters 897


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
endatSerial (bit 1) Connecting incremental encoders via the EIB Program 1058
run is 1281
400415 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE Condition:
An incremental encoder is connected to the REF
serial EnDat 2.2 interface via the EIB
LEVEL3
 FALSE
No EIB being used. 597110-04
Default: FALSE
moveOnAfterSwitch (bit 2) After trip dog, continue for half of distance Program 1281
from MP_distPerMotorTurn run is
400415
locked
Specifies whether the reference mark is not to be
(optional parameter) (RUN)
evaluated until the axis has moved on by half the
distance from MP_distPerMotorTurn after Condition:
reaching the trip dog. REF
Format: Selection menu LEVEL3
Input: 597110-06
 TRUE
Reference-mark evaluation is not activated until
the trip dog has been actuated and the axis has
subsequently moved on by half the distance
from MP_distPerMotorTurn
 FALSE
Reference-mark evaluation is activated
immediately after actuation of trip dog.
Default: FALSE
doubleRef (bit 3) Double referencing is active Program 1282
run is
400415 During the double reference run, the absolute
locked
position is first output via the EnDat interface of
MP1355 (RUN)
the speed encoder.
(optional parameter) If at a later time the reference mark of the position Condition:
encoder is traversed, the control continues to REF
work with this reference.
LEVEL3
Format: Selection menu
597110-06
Input:
 TRUE
Double referencing is active
 FALSE
No double reference run
Default: FALSE

898 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
doubleRefOffset (bit 4) Distance between speed encoder and position Program 1282
encoder run is
400415
locked
Is evaluated only if double referencing
MP1356 (RUN)
(MP_doubleRef = TRUE) is activated.
(optional parameter) Condition:
Format: Numerical value
REF
Input: –100 000 to 100 000 [mm] or [°]
LEVEL3
Decimal
597110-06
places: max. 9
Default: 0
externRefPulse (bit 5) Referencing with external reference signal Program 1282
run is 1575
400415 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 off Condition:
The reference signal of the connected motor REF
encoder or the position encoder is used.
LEVEL3
 spindleRef
In systems with HSCI, the control evaluates the 597110-04
reference signal at the –SP.REF+ and –SP.REF–
inputs at X9 of the external PL.
In systems with MC 320 or MC 42x, it
evaluates the reference signal at input X30.
Default: off
multiturnModulo Modulo axis with multiturn EnDat encoder Program 1067
run is
400415 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
For endlessly rotating axes (spindles) with gear
transmission and a motor encoder with 597110-08
multiturn EnDat interface, upon leaving the
multiturn range the control saves an axis
reference value in SRAM.
In this way the reference point can be
reestablished at any time when the control is
switched on.
 FALSE
No modulo axis with multiturn EnDat encoder.
Default: FALSE
CfgPositionLimits
Axis-specific setting of software limit switches;
The TNC 640 currently supports only one traverse range.

January 2015 4.11 List of machine parameters 899


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
swLimitSwitchPos Positive software limit switch Program 1130
run is
400501 If positive and negative software limit switches =
locked
0, monitoring is switched off.
MP910 (RUN)
Format: Numerical value
LEVEL3
Input: –100 000 to 100 000 [mm] or [°]
597110-01
Decimal
places: max. 9
Default: 0
swLimitSwitchNeg Negative software limit switch Program 1130
run is
400502 If positive and negative software limit switches =
locked
0, monitoring is switched off.
MP920 (RUN)
Format: Numerical value
LEVEL3
Input: –100 000 to 100 000 [mm] or [°]
597110-01
Decimal
places: max. 9
Default: 0
lubricationDist Path-dependent lubrication of axis Program 1131
run is
400503 Format: Numerical value
locked
MP4050 Input: 0 to 100 000 [mm] or [°] (RUN)
0: No output of lubrication pulse to
LEVEL3
PLC
597110-01
Decimal
places: max. 9
Default: 100
CfgControllerAuxil
General parameters for the position controller
driveOffLagMonitor Following-error monitoring with drive Program 1507
switched off run is
400601
locked
Specifically for hanging axes. The value from
(RUN)
MP_servoLagMax2 is monitored.
LEVEL3
Format: Selection menu
597110-01
Input:
 on
Monitoring of hanging axes is active
 off
Monitoring of hanging axes is not active
Default: off

900 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
checkPosStandstill Standstill monitoring Program 1513
run is
400602 (gross positioning error x D)
locked
MP1110 Format: Numerical value (RUN)
Input: 0 to 100 000 [mm] or [°] LEVEL3
0: Monitoring is switched off
597110-01
Decimal
places: max. 9
Default: 10 000
chkPosHoldFieldAdj Standstill monitoring during field-angle Program
adjustment run is
400610
locked
Format: Numerical value
MP1120 (RUN)
Input: 0 to 100 000 [mm] or [°]
LEVEL3
(Optional parameter) 0: Monitoring is switched off
597110-09
Decimal
places: max. 9
Default: 0
maxPosDiff Maximum position difference between Program 1509
position and shaft-speed measuring system run is
400605
locked
Format: Numerical value
MP1144 (RUN)
Input: 0 to 100 000 [mm] or [°]
(optional parameter) LEVEL3
Decimal
597110-03
places: max. 9
Default: 0
maxPosDiff Maximum position difference between Program –
position and shaft-speed measuring system run is
400605
locked
Reserved.
(optional parameter) (RUN)
LEVEL3
597110-03
maxSpeedDiff Max. velocity difference between position and Program 1509
speed measuring system run is
400609
locked
Format: Numerical value
(optional parameter) (RUN)
Input: 0 to 100 000
LEVEL3
[mm/min] or [°/min]
0: Monitoring is switched off 597110-06
Decimal
places: max. 9
Default: 0

January 2015 4.11 List of machine parameters 901


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxSpeedDiff Max. velocity difference between position and Program run –
speed measuring system is locked
400609
(RUN)
Reserved.
(optional parameter)
LEVEL3
597110-06
posDiffCountDir Counting direction of the motor encoder Program run 1510
is locked
400604 Format: Selection menu
(RUN)
(optional parameter) Input:
Condition:
 automatic REF
The motor encoder counts in positive or
negative direction (depending on the opposite LEVEL3
direction of movement ascertained) 597110-03
 positive
Motor encoder counts in positive direction
 negative
Motor encoder counts in negative direction
Default: automatic
reserve1 Parameter reserved, do not assign Program run –
is locked
400606
(RUN)
(optional parameter)
LEVEL3
reserve2 Parameter reserved, do not assign Program run –
is locked
400607
(RUN)
(optional parameter)
LEVEL3
reserve3 Parameter reserved, do not assign Program run –
is locked
400608
(RUN)
(optional parameter)
LEVEL3
CfgEncoderMonitor
Hardware monitoring functions for the position encoders
checkAbsolutPos Monitoring the absolute position for distance- Program 1084
coded position encoder run is
400701
locked
Format: Selection menu
MP20.0 (RUN)
Input:
LEVEL3
 on
Monitor the absolute position 597110-01
 off
No monitoring
Default: off

902 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
checkSignalLevel Monitoring the amplitude of the position- Program 1084
encoder signal run is
400702
locked
Format: Selection menu
MP20.1 (RUN)
Input:
LEVEL3
 on
Monitor the encoder amplitude. 597110-01
 off
No monitoring
Default: on
checkFrequency Monitoring the edge separation of the position Program 1084
encoder run is
400703
locked
Format: Selection menu
MP20.2 (RUN)
Input:
LEVEL3
 on
Monitor the encoder frequency. 597110-01
 off
No monitoring
Default: off
checkEncoderState Monitoring the encoder status signals (with Program 1087
EnDat 2.2 interface) run is
400707
locked
After MP_checkEncoderState has been
(optional parameter) (RUN)
activated, the following signals are monitored:
LEVEL3
 Position measurement
 CRC error during EnDat 2.2 transmission 597110-08
 Position measurement with EnDat 2.2
 Alarm 1 with EnDat 2.2
 Alarm 2 with EnDat 2.2
 Timeout during EnDat 2.2 transmission
Format: Selection menu
Input:
 on
Monitoring active
 off
No monitoring
Default: off

January 2015 4.11 List of machine parameters 903


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
checkRefDistance Monitoring the reference mark of the spindle Program 1577
speed encoder run is
400704
locked
Monitoring the datum-to-datum distance of the
MP2221 (RUN)
spindle
(optional parameter) LEVEL3
Input:
597110-01
 on
The reference mark of the speed encoder is
monitored.
 off
No monitoring
Default: off
movementThreshold Threshold above which the movement Program 1512
monitoring functions run is
400705
locked
Format: Numerical value
MP1140 (RUN)
Input: 0 to 36 000 000 [mm/min] or [°/min]
LEVEL3
0: Monitoring switched off
597110-01
Decimal
places: max. 9
Default: 199.98
thresholdDistance Tolerance at and above which the following Program 1512
error is included run is
400706
locked
Format: Numerical value
(optional parameter) (RUN)
Input: 0 to 36 000 000 [mm] or [°]
LEVEL3
Decimal
597110-01
places: max. 9
Default: 5
CfgSpindle
Machine parameters for configuring the spindle;
Only define for an axis that is configured as spindle.

904 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
fastInputType Treatment of the fast input for the spindle Program 1574
run is
401501 Format: Selection menu
locked
Input: (RUN)
 none: LEVEL3
Spindle does not have any trip dog for reference end
position (no signal) or the signal is not evaluated. 597110-01
 forStopping:
For M19 without rotary encoder, the spindle is
stopped at the trip dog upon receiving this input
signal.
 forReferencing:
The input signal is used as spindle reference
signal. The TNC 640 handles the signal of the
trip dog for reference end position as reference
pulse of the encoder.
Default: none
fastInput Number of the fast PLC input for the spindle Program 1574
reference run run is
401502
locked
Format: Numerical value
(optional parameter) (RUN)
Input: 0 to 32767
LEVEL3
Default: 0
597110-01
zeroPosEdge Evaluation of the edge Program 1575
run is
401503 Cam edge indicating the position of 0° for positive
locked
direction of spindle rotation.
(optional parameter) (RUN)
Format: Selection menu
LEVEL3
Input:
597110-01
 zeroOne
Zero-one transition
 oneZero
One-zero transition
Default: No value
stopOnSwitchSpeed Shaft speed for positioning to the trip dog Program 1575
run is
401504 If the value forStopping is entered in
locked
MP_fastInputType, the shaft speed for
(optional parameter) (RUN)
positioning to the trip dog must be entered here.
LEVEL3
Format: Numerical value
597110-03
Input: Shaft speed [1/min]
With max. 9 decimal places
Default: No value

January 2015 4.11 List of machine parameters 905


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
gearShiftSpeed Speed for gear shifting Program 2406
run is
401505 Format: Numerical value
locked
(optional parameter) Input: Shaft speed [1/min] (RUN)
Max. 9 decimal places
LEVEL3
Default: No value
597110-03
gearShiftVoltage Nominal voltage value output for gear shifting Program 2406
run is
401506 Format: Numerical value
locked
(optional parameter) Input: Voltage in volts [V] (RUN)
With max. 9 decimal places
LEVEL3
Default: No value
597110-03
changeTurnDir Rotational direction reversal with M3 and M4 Program 1082
run is
401509 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
Reversal of rotational direction is active with
M3/M4 597110-04
 FALSE
Reversal of rotational direction is not active with
M3/M4
Default: TRUE
kvFactorM19 kv factor for oriented spindle stop Program 1571
run is
401510 Only effective with active spindle orientation
locked
(M19); replaces the value in
(optional parameter) (RUN)
CfgPosControl/kvFactor.
LEVEL3
If the parameter is not defined or 0, the value in
CfgPosControl/kvFactor is used. 597110-05
Format: Numerical value
Input: 0 to 1000 [1/s]
With max. 9 decimal places
Default: 0
kvFactorTapping kv factor for tapping Program 1612
run is
401511 Only effective during thread cutting. Replaces the
locked
value in CfgPosControl/kvFactor.
(optional parameter) (RUN)
If the parameter is not defined or 0, the value in
LEVEL3
CfgPosControl/kvFactor is used.
597110-05
Format: Numerical value
Input: 0 to 1000 [1/s]
With max. 9 decimal places
Default: 0

906 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
kvFactorSync Kv factor for spindle synchronization Program 1606
run is
401512 Specification of a separate kv factor for spindle
locked
synchronization.
(optional parameter) (RUN)
Is effective with synchronization instead of the
value from CfgPosControl/kvFactor. If the LEVEL3
parameter is not defined or a value of 0 is entered,
597110-09
the value from CfgPosControl/kvFactor is
effective.
Format: Numerical value
Input: 0 to 999 999 999 [1/s]
With max. 9 decimal places
Default: 0
m19FilterTime Time of nominal position value filter with M19 Program 1572
from standstill run is
401515
locked
The nominal position values with M19 from a
(optional parameter) (RUN)
standstill are filtered with this time constant (jerk
limiting). LEVEL3
Format: Numerical value 597110-08
Input: 33 to 750 [ms]
With max. 9 decimal places
Default: 33
relSpeedTolerance Maximum permissible overshoot of the Program 1594
spindle speed for monitoring the spindle run is
401513
speed locked
MP3350 (RUN)
The value is indicated in percent of the nominal
(optional parameter) spindle speed. LEVEL3
Format: Numerical value 597110-06
Input: 0 to 100 [%]
With max. 9 decimal places
Default: 10
relSpeedTolerance Maximum permissible overshoot of the Program 1594
spindle speed for monitoring the spindle run is
401513
speed locked
MP3350 (RUN)
The value is indicated in percent of the nominal
(optional parameter) spindle speed. LEVEL3
Format: Numerical value 597110-06
Input: 0 to 100 [%]
With max. 9 decimal places
Default: 10

January 2015 4.11 List of machine parameters 907


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
absSpeedTolerance Entry of an absolute value for the permissible Program 1594
overshoot of the spindle speed run is
401514
locked
This value is only used if the absolute value that
MP3351 (RUN)
results from MP_relSpeedTolerance is less than
(optional parameter) the value defined here (at a low nominal spindle LEVEL3
speed).
597110-06
Format: Numerical value
Input: 0 to 100 000 [1/min]
With max. 9 decimal places
Default: 0
absSpeedTolerance Entry of an absolute value for the permissible Program 1594
overshoot of the spindle speed run is
401514
locked
This value is only used if the absolute value that
MP3351 (RUN)
results from MP_relSpeedTolerance is less than
(optional parameter) the value defined here (at a low nominal spindle LEVEL3
speed).
597110-06
Format: Numerical value
Input: 0 to 100 000 [1/min]
With max. 9 decimal places
Default: 0
incrPowForRoughing Increased spindle power for roughing Program 1597
run is
401516 Format: Selection menu
locked
MP3530, MP13530 Input: (RUN)
(optional parameter)  TRUE: LEVEL3
Increased spindle power for roughing active.
597110-09
 FALSE:
Function deactivated.
CfgPositionFilter (optional parameter)
Axis-specific configuration of the nominal position value filters;
Overwrites the default filters in CfgFilter.
 axisPosition:
Axis-specific configuration of the nominal position value filter for all linear axes
 axisCutterLoc:
Axis-specific configuration of the nominal position value filter for rotary axes with active
ToolCenterPointManagement (TCPM)

908 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
shape Shape of the nominal position value filter Allowed in 1304
strobe
401606, 401607 Format: Selection menu
(SYNC)
MP1200 Input:
LEVEL3
 Off
Filter is off 597110-05
 Average
Mean-value filter
 Triangle
Single filter
 HSC
HSC filter (High Speed Cutting)
(setting for "accuracy" criterion)
 Advanced HSC
Advanced HSC filter (High Speed Cutting)
(setting for "surface" criterion)
Default: Off
frequency Cutoff frequency of the nominal position value Allowed in 1305
filter strobe
401606, 401607
(SYNC)
Format: Numerical value
MP1210, MP1211,
LEVEL3
MP1212, MP1213 Input: 0 to 1000 [Hz]
Max. 9 decimal places 597110-05
Default: 20
hscMode Operating mode of the nominal position value Allowed in 1305
filter strobe
401606, 401607
(SYNC)
Format: Selection menu
LEVEL3
Input:
597110-05
 Smoothing
Mode for finishing operations
 Roughing
Mode for roughing operations
The machine operator can also select this mode
for Cycle 32.
Default: Smoothing
maxHscOrder Max. filter order for HSC and Allowed in 1305
AdvancedHSC filters strobe
401606, 401607
(SYNC)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 25 to 63
MP1262, MP1263
597110-06
Default: 63

January 2015 4.11 List of machine parameters 909


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
manualFilterOrder Axis-specific order of the mean-value filter for Allowed in 1306
the Manual operating modes. strobe
401605
(SYNC)
Overwrites the value in
(optional parameter)
CfgFilter/defaultManualOrder. LEVEL3
Only odd, integral input values are permitted. If 597110-05
you enter an even number, the TNC 640 displays
an error message.
Format: Numerical value
Input: 1 to 251
Default: 11
handwheelFiltOrder Axis-specific order of the mean-value filter in Allowed in 1306
the El. Handwheel operating mode strobe
401608
(SYNC)
Overwrites the value in MP_manualFilterOrder
(optional parameter)
or CfgFilter/defaultManualOrder. LEVEL3
Only odd, integral input values are permitted. If 597110-05
you enter an even number, the TNC 640 displays
an error message.
Format: Numerical value
Input: 1 to 251
Default: 11
CfgLaAxis
Axis-dependent parameters for look-ahead;
Please keep in mind that the axis jerk is added to the path jerk (which can act in the same direction).
MP_axFilterErrWeight is used to account for the behavior of rotary axes with a large effective radius.
axTransJerk Maximum axis jerk Allowed in 1318
strobe
401701 Max. permissible axis-specific jerk at corners or
(SYNC)
tangential transitions, e.g. from a straight line to a
MP1230, MP1231,
circular arc. LEVEL3
MP1232, MP1233,
MP1240, MP1241, Format: Numerical value 597110-01
MP1242, MP1243
Input: 0 to 1 000 000 [m/s3]
Decimal
places: max. 9
Default: 0.1 [m/s3]
axPathJerk Axis-specific maximum jerk on path contours Allowed in 1319
strobe 2296
401703 Format: Numerical value
(SYNC)
MP1085 Input: 0 to 1 000 000 [m/s3]
LEVEL3
(optional parameter) Decimal
597110-04
places: max. 9
Default: 5

910 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
axPathJerkHi Axis-specific maximum jerk during rapid Allowed in 1319
traverse strobe
401704
(SYNC)
Format: Numerical value
MP1086
LEVEL3
Input: 0 to 1 000 000 [m/s3]
(optional parameter)
Decimal
places: max. 9
Default: 5
axMeasJerk Axis-specific maximum jerk during Allowed in 1320
measurement strobe 2296
401705
(SYNC)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 0 to 1 000 000 [m/s3]
597110-06
Decimal
places: max. 9
Default: 5
axFilterErrWeight Factor for filter error (for rotary axes) Allowed in 1324
strobe
401702 Format: Numerical value
(SYNC)
Input: 0.01 to 100 [factor]
LEVEL3
Decimal
597110-01
places: max. 9
Default: 1 (for linear axes)
CfgAxisComp
Axis compensation parameters
active Switch on/off all axis compensations Program 1165
run is
401801 Format: Selection menu
locked
Input: (RUN)
 on LEVEL3
Backlash compensation, linear or nonlinear axis-
error compensation, reversal-error compensation 597110-01
and thermal compensation are all active
 off
Axis compensations are not active.
Default: off
backLash Backlash compensation; Program 1168
Backlash outside of the control loop run is
401802
locked
Format: Numerical value
MP710 (RUN)
Input: –1 to 1 [mm] or [°]
LEVEL3
With max. 9 decimal places
597110-01
Default: 0

January 2015 4.11 List of machine parameters 911


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
linearCompValue Linear axis error compensation Program 1172
run is
401803 Format: Numerical value
locked
MP720 Input: –1 to 1 [mm/m] (RUN)
With max. 9 decimal places
LEVEL3
Default: 0
597110-01
compType Selection of linear/nonlinear axis error Program 1172
compensation run is
401804
locked
Format: Selection menu
MP730 (RUN)
Input:
LEVEL3
 linear
Linear axis error compensation is active. 597110-01
 non-linear
Nonlinear axis error compensation is active.
Default: linear
filterTime Time constant for backlash compensation Program 1168
run is
401805 Format: Numerical value
locked
MP709 Input: 0 to 1000 [ms] (RUN)
With max. 9 decimal places
(optional parameter) LEVEL3
0: Compensation is output as a step
597110-03
Default: 60
posCtrlRevErr Backlash compensation (distance) Program 1170
run is
401806 Format: Numerical value
locked
MP750 Input: –1 to 1 [mm] or [°] (RUN)
With max. 9 decimal places
(optional parameter) LEVEL3
Default: No value
597110-03
posCtrlRevErrTime Backlash compensation (time) Program 1170
run is
401807 Format: Numerical value
locked
MP752 Input: 0 to 1000 [ms] (RUN)
With max. 9 decimal places
(optional parameter) LEVEL3
Default: No value
597110-03
backlashDistance Path for dynamic backlash compensation Program 1168
run is
401808 Applies only if MP_backlashTimeConst = 0
locked
MP708 Format: Numerical value (RUN)
(optional parameter) Input: 0 to 10 [mm] or [°] LEVEL3
With max. 9 decimal places
597110-06
0: Not active
Default: 0

912 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
backlashTimeConst Time for dynamic backlash compensation Program 1168
run is
401809 Format: Numerical value
locked
MP709 Input: 0 to 1 [s] (RUN)
With max. 9 decimal places
(optional parameter) LEVEL3
Default: 0
597110-06
CfgSpeedControl
Settings for the integrated digital speed controller
vCtrlPropGain Proportional factor of the speed controller Allowed in 1343
strobe
400901 Format: Numerical value
(SYNC)
MP2500.x, MP2501.x Input: 0 to 1 000 000 [As/rev.]
LEVEL 3
With max. 9 decimal places
597110-01
Default: 0
vCtrlIntGain Integral factor of the speed controller Allowed in 1343
strobe
400902 Format: Numerical value
(SYNC)
MP2510.x, MP2511.x Input: 0 to 1 000 000 000 [A/rev.]
LEVEL 3
With max. 9 decimal places
597110-01
Default: 0
vCtrlIntTime Limit of integral factor of the speed controller Allowed in 1362
strobe
400903 Format: Numerical value
(SYNC)
MP2512.x Input: 0 to 30 [s]
LEVEL 3
With max. 9 decimal places
597110-02
Default: 0
vCtrlDiffGain Differential factor of the speed controller Allowed in 1345
strobe
400904 Format: Numerical value
(SYNC)
MP2520.x, MP2521.x Input: 0 to 1 [As2/rev.]
LEVEL 3
With max. 9 decimal places
597110-01
Default: 0
vCtrlFiltLowPassT PT2 element of the speed controller (second- Allowed in 1346
order time delay element) strobe
400905
(SYNC)
Try compensation with low-pass filter first
MP2530.x, MP2531.x
(MP_vCtrlEncInputFilt). LEVEL 3
If the CC 61xx and UEC 11x controller units are
used, this parameter has no function.
Format: Numerical value
Input: 0 to 1 [s]
With max. 9 decimal places
Default: 0

January 2015 4.11 List of machine parameters 913


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlEncInputFilt Filter order of the FIR filter (low-pass filter) Allowed in 1351
strobe
400906 Format: Numerical value
(SYNC)
MP2560.x, MP2561.x Input: 0 to 19
LEVEL 3
0: No low-pass filter
1: 1st-order low-pass filter 597110-01
...
19: 19th-order low-pass filter
Default: 0
vCtrlFiltType1 Filter type for filter 1 Allowed in 1350
strobe
400907 Format: Numerical value
(SYNC)
MP2562.x Input: 0: Filter deactivated
LEVEL 3
1: PT2 low-pass filter (speed ctrlr.)
(optional parameter)
2: Band-rejection filter (speed ctrlr.)
3: Phase increase (speed ctrlr.)
4: Lead-lag filter 1st ord. (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Lead-lag filter 2nd ord. (speed ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: Lead-lag filter 1st ord. (pos. encdr.)
111: PT2 low-pass filter (pos. encoder)
112: Band-rejection filter (pos. encoder)
113: Phase increase (position encoder)
114: Lead-lag filter 2nd ord. (pos. encoder
Default: 0
vCtrlFiltFreq1 Center frequency of the band-rejection filter Allowed in 1350
for filter 1 strobe
400908
(SYNC)
Format: Numerical value
MP2550.x, MP2551.x,
LEVEL 3
MP2552.x Input: 0 to 10000 [Hz]
With max. 9 decimal places 597110-01
Default: 0
vCtrlFiltBandWidth1 Bandwidth of band-rejection filter for filter 1 Allowed in 1350
strobe
400909 Format: Numerical value
(SYNC)
MP2572.x Input: 0 to 30000 [Hz]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0

914 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltDamping1 Damping the band-rejection filter for filter 1 Allowed in 1350
strobe
400910 Format: Numerical value
(SYNC)
MP2540.x, MP2541.x Input: -90 to 90 [dB]
LEVEL 3
MP2542.x With max. 9 decimal places
597110-01
Default: 0
vCtrlFiltType2 Filter type for filter 2 Allowed in 1350
strobe
400911 Format: Numerical value
(SYNC)
MP2563.x Input: 0: Filter deactivated
LEVEL 3
1: PT2 low-pass filter (speed ctrlr.)
(optional parameter)
2: Band-rejection filter (speed ctrlr.)
3: Phase increase (speed ctrlr.)
4: Lead-lag filter 1st ord. (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.))
103: Phase increase (speed ctrlr.)
104: Lead-lag filter 2nd ord. speed ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (po. encoder)
13: Phase increase (position encoder)
14: Lead-lag filter 1st ord. (pos. encdr.)
111: PT2 low-pass filter (pos. encoder)
112: Band-rejection filter (pos. encoder)
113: Phase increase (position encoder)
114: Lead-lag filter 2nd ord. (pos. encdr.)
Default: 0
vCtrlFiltFreq2 Center frequency of the band-rejection filter Allowed in 1350
for filter 2 strobe
400912
(SYNC)
Format: Numerical value
MP2553.x
LEVEL 3
Input: 0 to 10000 [Hz]
(optional parameter)
With max. 9 decimal places 597110-01
Default: 0
vCtrlFiltBandWidth2 Bandwidth of band-rejection filter for filter 2 Allowed in 1350
strobe
400913 Format: Numerical value
(SYNC)
MP2573.x Input: 0 to 30000 [Hz]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0
vCtrlFiltDamping2 Damping the band-rejection filter for filter 2 Allowed in 1350
strobe
400914 Format: Numerical value
(SYNC)
MP2543.x Input: -90 to 90 [dB]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0

January 2015 4.11 List of machine parameters 915


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType3 Filter type for filter 3 Allowed in 1350
strobe
400915 Format: Numerical value
(SYNC)
MP2564.x Input: 0: Filter deactivated
LEVEL 3
1: PT2 low-pass filter (speed ctrlr.)
(optional parameter)
2: Band-rejection filter (speed ctrlr.)
3: Phase increase (speed ctrlr.)
4: Lead-lag filter 1st ord. (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Lead-lag filter 2nd ord. (speed ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (pos.encoder)
13: Phase increase (position encoder)
14: Lead-lag filter 1st ord. (pos. encdr.)
111: PT2 low-pass filter (pos. encoder)
112: Band-rejection filter (pos. encoder)
113: Phase increase (position encoder)
114: Lead-lag filter 2nd ord. (pos. encdr.)
Default: 0
vCtrlFiltFreq3 Center frequency of the band-rejection filter Allowed in 1350
for filter 3 strobe
400916
(SYNC)
Format: Numerical value
MP2554.x
LEVEL 3
Input: 0 to 10000 [Hz]
(optional parameter)
With max. 9 decimal places 597110-01
Default: 0
vCtrlFiltBandWidth3 Bandwidth of the band-rejection filter for filter 3 Allowed in 1350
strobe
400917 Format: Numerical value
(SYNC)
MP2574.x Input: 0 to 30000 [Hz]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0
vCtrlFiltDamping3 Damping the band-rejection filter for filter 3 Allowed in 1350
strobe
400918 Format: Numerical value
(SYNC)
MP2544.x Input: -90 to 90 [dB]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0

916 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType4 Filter type for filter 4 Allowed in 1350
strobe
400919 Format: Numerical value
(SYNC)
MP2565.x Input: 0: Filter deactivated
LEVEL 3
1: PT2 low-pass filter (speed ctrlr.)
(optional parameter)
2: Band-rejection filter (speed ctrlr.)
3: Phase increase (speed ctrlr.)
4: Lead-lag filter 1st ord. (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Lead-lag filter 2nd ord. (speed ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (pos. encoder)
13: Phase increase (position encoder)
14: Lead-lag filter 1st ord. (pos. encdr.)
111: PT2 low-pass filter (pos. encoder)
112: Band-rejection filter (posi. encoder)
113: Phase increase (position encoder)
114: Lead-lag filter 2nd ord. (pos. encdr.)
Default: 0
vCtrlFiltFreq4 Center frequency of the band-rejection filter Allowed in 1350
for filter 4 strobe
400920
(SYNC)
Format: Numerical value
MP2555.x
LEVEL 3
Input: 0 to 10000 [Hz]
(optional parameter)
With max. 9 decimal places 597110-01
Default: 0
vCtrFiltBandWidth4 Bandwidth of the band-rejection filter for filter 4 Allowed in 1350
strobe
400921 Format: Numerical value
(SYNC)
MP2575.x Input: 0 to 30000 [Hz]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0
vCtrlFiltDamping4 Damping the band-rejection filter for filter 4 Allowed in 1350
strobe
400922 Format: Numerical value
(SYNC)
MP2545.x Input: -90 to 90 [dB]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0

January 2015 4.11 List of machine parameters 917


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType5 Filter type for filter 5 Allowed in 1350
strobe
400923 Format: Numerical value
(SYNC)
MP2566.x Input: 0: Filter deactivated
LEVEL 3
1: PT2 low-pass filter (speed ctrlr.)
(optional parameter)
2: Band-rejection filter (speed ctrlr.)
3: Phase increase (speed ctrlr.)
4: Lead-lag filter 1st ord. (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Lead-lag filter 2nd ord. (speed ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (posi. encoder)
13: Phase increase (position encoder)
14: Lead-lag filter 1st ord. (pos. encdr.)
111: PT2 low-pass filter (pos. encoder)
112: Band-rejection filter (pos. encoder)
113: Phase increase (position encoder)
114: Lead-lag filter 2nd ord. (pos. encdr.)
Default: 0
vCtrlFiltFreq5 Center frequency of the band-rejection filter Allowed in 1350
for filter 5 strobe
400924
(SYNC)
Format: Numerical value
MP2556.x
LEVEL 3
Input: 0 to 10000 [Hz]
(optional parameter)
With max. 9 decimal places 597110-01
Default: 0
vCtrlFiltBandWidth5 Bandwidth of band-rejection filter for filter 5 Allowed in 1350
strobe
400925 Format: Numerical value
(SYNC)
MP2576.x Input: 0 to 30000 [Hz]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0
vCtrlFiltDamping5 Damping the band-rejection filter for filter 5 Allowed in 1350
strobe
400926 Format: Numerical value
(SYNC)
MP2546.x Input: -90 to 90 [dB]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0

918 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType6 Filter type for filter 6 Allowed in 1350
strobe
400934 Format: Numerical value
(SYNC)
MP2567.x Input: 0: Filter deactivated
LEVEL 3
1: PT2 low-pass filter (speed ctrlr.)
(optional parameter)
2: Band-rejection filter (speed ctrlr.) 597110-06
3: Phase increase (speed ctrlr.)
4: Lead-lag filter 1st ord. (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Lead-lag filter 2nd ord. (speed ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (pos. encoder)
13: Phase increase (position encoder)
14: Lead-lag filter 1st ord. (pos. encdr.)
111: PT2 low-pass filter (pos. encoder)
112: Band-rejection filter (pos. encoder)
113: Phase increase (position encoder)
114: Lead-lag filter 2nd ord. (pos. encdr.)
Default: 0
vCtrlFiltFreq6 Center frequency of band-rejection filter for Allowed in 1350
filter 6 strobe
400935
(SYNC)
Format: Numerical value
MP2557.x
LEVEL 3
Input: 0 to 10000 [Hz]
(optional parameter)
With max. 9 decimal places 597110-06
Default: 0
vCtrlFiltBandWidth6 Bandwidth of band-rejection filter for filter 6 Allowed in 1350
strobe
400936 Format: Numerical value
(SYNC)
MP2577.x Input: 0 to 30000 [Hz]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-06
Default: 0
vCtrlFiltDamping6 Damping of band-rejection filter for filter 6 Allowed in 1350
strobe
400937 Format: Numerical value
(SYNC)
MP2547.x Input: -90 to 90 [dB]
LEVEL 3
With max. 9 decimal places
(optional parameter)
597110-06
Default: 0

January 2015 4.11 List of machine parameters 919


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlSwitchOffDelay Time between the braking signal and switch- Allowed in 1540
off of the controller (overlap time) strobe
400927
(SYNC)
Time in seconds [s] between output of the braking
MP2308.x
signal (BRK) and switching off of the controller LEVEL 3
(optional parameter) (overlap time)
597110-01
Format: Numerical value
Input: 0.001 to 5 [s]
0: 0.200 s
Max. 9 decimal places
Default: 0
vCtrlSwitchOnDelay The time after switch on after which the Allowed in 1540
controller parameters are adapted for locked strobe
400929
brakes (brake overlap time). (SYNC)
MP2309.x
The time in seconds [s] after switch-on in which LEVEL 3
(optional parameter) the controller parameters are adapted for locked
597110-05
brakes. For the defined time, the parameters of
the control loop are reduced after the motor
switch-on in order to prevent oscillations.
Format: Numerical value
Input: 0 to 5 [s]
With max. 9 decimal places
0: Function not active
Default: 0
vCtrlTimeSwitchOff Pulse switch-off of the power modules Allowed in 1555
strobe
400928 Monitoring time for the braking process. If after the
(SYNC)
time has expired the axes are still in motion, the
MP2173.x
pulses of the power modules are switched off. LEVEL 3
The time must be greater than the maximum 597110-05
electrical braking time for the axis/spindle.
Format: Numerical value
Input: 0.1 to 100 [s]
With max. 9 decimal places
Default: 3 [s]

920 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlSpinSpeedTol Permissible spindle speed shortfall Allowed in 1596
strobe
400930 Permissible lower limit of the actual spindle speed
(SYNC)
multiplied by a percentage of the nominal speed. If
MP3540
the current spindle speed falls below the defined LEVEL 3
(optional parameter) value, the TNC 640 outputs an error message.
597110-05
Format: Numerical value
Input: 0 to 100 [%]
With max. 9 decimal places
0: Monitoring not active
Default: 0
vCtrlSpinMinSpeed Minimum spindle speed as of which the Allowed in 1596
monitoring in MP_vCrtrlSpinSpeedTol strobe
400931
becomes active (SYNC)
MP3542
Format: Numerical value LEVEL 3
(optional parameter)
Input: 0 to 166 666.5 [1/min] 597110-05
With max. 9 decimal places
0: Monitoring not active
Default: 0
delayEmStopSpin Delay of emergency-stop reaction of spindles Allowed in 1596
strobe
400933 Format: Numerical value
(SYNC)
MP3550 Input: 0 to 0.1 [s]
LEVEL 3
with max. 9 decimal places
(optional parameter)
0: Delay not active 597110-05
Default: 0
vCtrlEncInputFunc Maximum input frequency for motor encoders Allowed in 1651
(only as of CC 61xx) strobe
400932
Format: Bit-encoded value LEVEL 3
MP2561.x
Input: 597110-05
(optional parameter)
 Bit 0 = 0:
Maximum input frequency for motor encoders
= 400 kHz
 Bit 0 = 1:
Maximum input frequency for motor encoders
= 800 kHz
 Bit 1 to bit 32:
Reserved, assign 0
Default: 0

January 2015 4.11 List of machine parameters 921


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgCurrentControl
Settings for the integrated digital current controller
iCtrlPropGain Proportional component for digital current Allowed in 1380
controller strobe
401001
(SYNC)
Format: Numerical value
MP2420.x, MP2421.x
LEVEL 3
Input: 0 to 9999.99 [V/A]
With max. 9 decimal places 597110-01
Default: 0
iCtrlIntGain Integral-action component for digital current Allowed in 1380
controller strobe
401002
(SYNC)
Format: Numerical value
MP2430.x, MP2431.x
LEVEL 3
Input: 0 to 9 999 999 [V/As]
With max. 9 decimal places 597110-01
Default: 0
iCtrlPwmType Current controller cycle time Allowed in 1660
strobe
401003 The value from CfgPowerStage/ampPwmFreq is
(SYNC)
used as the PWM frequency fPWM.
MP2182.x
LEVEL 3
Format: Numerical value
(optional parameter)
597110-03
Input: 0: Cycle time = 1 / (2 · fPWM)
1: Cycle time = 1 / fPWM
2: Reserved
Default: 0
iCtrlMotVRedFact Factor for reducing the magnetizing current Allowed in 1357
during idle running (only CC 61xx/UEC 11x) strobe
401005
(SYNC)
Format: Numerical value
MP2210.x
LEVEL 3
Input: 0 to 60 [%]
(optional parameter)
With max. 9 decimal places 597110-01
0: Function not active
Default: 0
iCtrlMotVRedSpeed Reserved, do not assign Allowed in –
strobe
401006 Format: Numerical value
(SYNC)
MP2211.x Input: Reserved, do not assign
LEVEL 3
(optional parameter) Default: 0

922 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
iCtrlDiffFreqFF Only CC 61xx/UEC 11x: Allowed in 1383
Cutoff frequency of the feedforward current strobe
401007
controller (SYNC)
MP2440.x
Format: Numerical value LEVEL 3
(optional parameter)
Input: 0 Hz to fg 597110-03
0: Current controller feedforward
deactivated
The cutoff frequency fg depends on the PWM
frequency (for table, see page 1381).
Default: 0
iCtrlAddInfo Only CC 61xx/UEC 11x: Dead-time compensation Allowed in 1383
strobe
401008 Format: Bit-encoded value
(SYNC)
MP2450.x Input:
LEVEL 3
(optional parameter)  Bit 0 = 0:
Compensation switched off 597110-03
 Bit 0 = 1:
Compensation switched on
Default: 0
CfgControllerTol
Position and speed tolerances in the servo control
posTolerance Positioning window Allowed in 1515
strobe
401101 Control window for message IN POSITION.
(SYNC)
MP1030.x, MP3420 Format: Numerical value
LEVEL 3
Input: 0.000 000 001 to 100
597110-01
[mm] or [°]
with max. 9 decimal places
Default: 0.005
timePosOK Hysteresis time for "positioning window Allowed in 1515
reached" strobe
401102
(SYNC)
Format: Numerical value
LEVEL 3
Input: 0.006 to 10 [s]
With max. 9 decimal places 597110-01
Default: 0.01
speedTolerance Rotational speed (feed rate) window Allowed in 1593
strobe
401103 Control window for message RPM ATTAINED.
(SYNC)
Format: Numerical value
LEVEL 3
Input: 0.000 000 01 to 100 [%]
597110-01
With max. 9 decimal places
Default: 10

January 2015 4.11 List of machine parameters 923


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
timeSpeedOK Hysteresis time for monitoring the speed Allowed in 1593
deviation strobe
401104
(SYNC)
Format: Numerical value
LEVEL 3
Input: 0.006 to 10 [s]
With max. 9 decimal places 597110-01
Default: 0.01
syncTolerance Angle tolerance for spindle synchronization Allowed in 1606
strobe
401105 Format: Numerical value
(SYNC)
(optional parameter) Input: 0.0000000001 to 100 [°]
LEVEL 3
With max. 9 decimal places
597110-09
Default: 0.01
timeSyncOK Hysteresis time for spindle synchronization Allowed in 1606
strobe
401106 Format: Numerical value
(SYNC)
(optional parameter) Input: 0.006 to 10 [s]
LEVEL 3
With max. 9 decimal places
597110-09
Default: 0.01 [s]
CfgPowerStage
Settings for the power module of the axis
ampName Type of axis/spindle power module Program 1691
run is
401201 Format: Selection menu
locked
MP2100.x Input: Name of the power module from (RUN)
the inverter.inv power module table
LEVEL3
(is entered by the TNC 640)
Condition:
REF
597110-01
ampPowerSupplyType Power module with or without energy Program 1707
recovery run is
401202
locked
Define the parameter only if no power module
MP2191 (RUN)
table is defined through CfgSupplyModule and
(optional parameter) MP_motSupply for the axis/spindle. LEVEL3
Format: Selection menu Condition:
REF
Input:
597110-03
 without power recovery:
Power module without energy recovery
 with power recovery:
Power module with energy recovery
Default: without power recovery

924 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ampBusVoltage DC-link voltage Uz Program 1706
run is
401203 If a supply-module table is defined
locked
(CfgSupplyModule, MP_motSupply), the
MP2190.x (RUN)
parameter does not need to be configured.
(optional parameter) However, you can overwrite the value from the LEVEL3
supply-module table through
597110-03
MP_ampBusVoltage.
Format: Numerical value
Input: DC-link voltage [V]
(0 to 3000 [V] with up to 9 decimal
places)
Regenerative inverter: 650 [V]
Non-regenerative inverter:
565 [V]
Default: 650 [V]
ampVoltProtection Field weakening for synchronous motors Program 1419
run is
401205 A voltage-protection module (e.g. SM 1xx)
locked
protects the motor and inverter when the power
MP2160.x (RUN)
supply is interrupted. It may be required for
synchronous motors during operation with field LEVEL3
weakening.
597110-05
Format: Selection menu
Input:
 not installed—mode 1:
(cf. iTNC 530: MP2160.x = 0)
Mode 1: There is no voltage-protection module
(SM). No field weakening possible.
 installed—mode 2:
(cf. iTNC 530: MP2160.x = 1)
Mode 2: Voltage-protection module (SM) exists.
Field weakening without speed limitation is
possible. Use this mode e.g. for synchronous
spindles and torque motors.
 not installed—mode 3:
(cf. iTNC 530: MP2160.x = 2)
Mode 3: There is no voltage-protection module
(SM). Field weakening with speed limitation is
possible. Use this mode for EcoDyn motors, for
example.
 installed—mode 4:
(cf. iTNC 530: MP2160.x = 9)
Mode 4: Like mode 2, but with minimized total
current.
 not installed—mode 5:
(cf. iTNC 530: MP2160.x = 10)
Mode 5: Like mode 3 but with minimized total
current.
Default: not installed—mode 1

January 2015 4.11 List of machine parameters 925


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ampReadyWaitTime Waiting time between the switch-on of the Program 1374
drive and the drive’s standby signal run is
401206
locked
Format: Numerical value
MP2170 (RUN)
Input: 0 to 4.999 [s]
LEVEL3
with max. 9 decimal places
0: Waiting time of 2 [s] 597110-01
Default: 0
ampFactorI2t Reference value for I2t monitoring of the Program 1527
power module run is
401208
locked
Format: Numerical value
MP2304.x (RUN)
Input: 0 to 1000
(optional parameter) LEVEL3
[· rated current of power module]
With max. 9 decimal places 597110-01
0: Monitoring is switched off
1: Rated current of power module
is
reference value
Default: 1

926 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
powStatusCheckOff Suppress error messages of the HEIDENHAIN Program 1538
supply units run is
401209
locked
Format: Bit-encoded value (32 bits)
MP2195 (RUN)
Input:
(optional parameter) LEVEL3
 Bit 0—Status signals that are already active
during control power-up. 597110-01
0: Missing signals are ignored
1: Missing signals are evaluated
 Bit 1—ERR.UZ.GR signal
0: Error message is not suppressed
1: Error message is suppressed
 Bit 2—ERR.TMP signal
0: Error message is not suppressed
1: Error message is suppressed
 Bit 3—Reserved
 Bit 4—ERR.IZ.GR signal
0: Error message is not suppressed
1: Error message is suppressed
 Bit 5—RDY.PS signal
0: Error message is not suppressed
1: Error message is suppressed
 Bit 6—ERR.ILEAK signal
0: Error message is not suppressed
1: Error message is suppressed
 Bit 7—PF.PS.AC signal
(only on CC 61xx/UEC 11x)
0: Error message is not suppressed
1: Error message is suppressed
 Bit 8—PF.PS.DC signal
(only on CC 61xx/UEC 11x)
0: Error message is not suppressed
1: Error message is suppressed
 Bit 9—Monitoring of DC-link voltage Uz or
LIFTOFF function
(only on CC 61xx/UEC 11x)
0: Uz monitoring and LIFTOFF function are
active
1: Uz monitoring and LIFTOFF function are not
active
 Bit 10—Spindle power is reduced if maximum
power is exceeded when supplied by the same
UV
0: Reduction of power not active
1: Power is reduced if maximum power is
exceeded (function active)
Default: All bits = 0

January 2015 4.11 List of machine parameters 927


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ampAdditionalInfo Configure the switch position of the current sensor Program 1692
(column S of the inverter.inv power module table). run is
401210
locked
Is required for the D series of HEIDENHAIN
(optional parameter) (RUN)
inverters (UM 1xx D) in order to use the higher
currents at the lower PWM frequencies. LEVEL3
Format: Bit-encoded value (32 bits) 597110-04
Input:
 Bit 0—Configure the switch position of the
current sensor in HEIDENHAIN inverters of the
"D" series (UM 1xx D):
0: Column S in inverter.inv table = 0
1: Column S in inverter.inv table = 1
 Bit 1—Reserved
 Bit 2—Reserved
 Bit 3—Inverter manufacturer:
0: Non-HEIDENHAIN inverter
1: HEIDENHAIN inverter
 Bit 4 to bit 31—Reserved
Default: No value
plugAndPlay Evaluation of the electronic ID labels Program 1669
run is
117201 With each new start, the TNC 640 checks whether
locked
the connected inverter has been modified and
MP7690, bit 0 (RUN)
detects this automatically (global configuration via
(optional parameter) CfgHardware/plugAndPlay). The evaluation of the LEVEL3
electronic ID label can be deactivated with this
597110-09
parameter for individual inverters.
 Inactive
Evaluation of the electronic ID label for this
inverter is deactivated.
 Global setting
Setting from CfgHardware/plugAndPlay is active.
Default: Active
CfgServoMotor
Specifies the settings for the motor
motName Name of the motor Program 1667
run is
401301 Format: Selection menu
locked
MP2200.x Input: Select the name of the motor from the (RUN)
motor table. When making an entry in
Condition:
MP_motName, the motor table
REF
currently active for the TNC 640 is
opened. Select the name of the motor. LEVEL3
Default: – 597110-01

928 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
starDelta Motor with wye/delta switchover Program 1421
run is
401302 Format: Selection menu
locked
Input: (RUN)
 star-connection: LEVEL3
Wye connection
597110-01
 delta-connection:
Delta connection
Default: star-connection
motEncCheckOff Monitoring functions Program
run is
401303 Format: Bit-encoded value (32 bits)
locked
MP2220, MP2221 Input: (RUN)
 Bit 0—Monitoring the reference mark: LEVEL3
0: Monitoring active 1576
1: Monitoring inactive 597110-01
 Bit 1—Monitoring the direction of rotation
0: Monitoring active 1576
1: Monitoring inactive
 Bit 2—Power limit of spindle with ERR.IZ.GR
(only for HEIDENHAIN inverters, except UE
2xx): 1390
0: Power limit active
1: Power limit inactive
 Bit 3—Switching off the controller when the
motor brakes are activated: 1539
0: Suppress oscillations
1: Oscillations are allowed
 Bit 4—Monitoring for excessive motor
temperature: 1562
0: Monitoring active
1: Monitoring inactive
 Bit 5—Monitoring for too low a motor
temperature 1562
0: Monitoring active
1: Monitoring inactive
 Bit 7—Monitoring the input frequency of the
speed encoder 1562
0: Monitoring active
1: Monitoring inactive
 Bit 8—Adjust mechanical offset by gradually
increasing the kV factor 1562
0: Function active
1: Function inactive
 Bit 9 to bit 31—Reserved
Default: All bits = 0

January 2015 4.11 List of machine parameters 929


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motFactorI2t Reference value for I2t monitoring of motor Program 1527
run is
401304 Format: Numerical value
locked
MP2302.x Input: 0 to 1000 (RUN)
[· rated or
LEVEL3
stall current] with max. 9
decimal places 597110-01
0: Monitoring is switched off
1: Rated current of motor as
reference value
Default: 1
motSlipTimeConstant Delay of friction compensation during braking Program –
run is
401305 Format: Numerical value
locked
Input: 0 to 100 [s] (RUN)
with max. 9 decimal places
LEVEL3
0: No friction compensation
Typical: 0.015 [s]
Default: 0
motEmergencyStopRamp Braking ramp in an emergency stop Program 1385
run is
401306 Format: Numerical value
locked
MP2590.x Input: 0 to 999.9 (RUN)
[m/s2] or [°/s2] or [1/min/s]
LEVEL3
With max. 9 decimal places
0: Brakes at the limit of current 597110-02
Default: 0
motPbrMax Maximum braking power Program 1390
run is
401307 Format: Numerical value
locked
MP2391.x Input: 0 to 3000 [kW] (RUN)
with max. 9 decimal places
LEVEL3
0: Braking power is not
limited 597110-01
Default: 0
motPMax Power limiting of motor Program 1390
run is
401308 Format: Numerical value
locked
MP2392.x Input: 0 to 3000 [kW] (RUN)
with max. 9 decimal places
LEVEL3
0: No power limiting
597110-01
Default: 0

930 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motPMax2 Max. motor power after PLC request Program 1390
run is
401325 Format: Numerical value
locked
MP2393.x Input: 0 to 3000 [kW] (RUN)
With max. 9 decimal places
LEVEL3
Default: 0
597110-06
motPbrMaxAcFail Maximum brake power for power failure Program 1390
run is
401309 Format: Numerical value
locked
MP2394.x Input: 0 to 3000 [kW] (RUN)
with max. 9 decimal places
LEVEL3
0: Braking power is not
limited 597110-01
Default: 0
motMMax Maximum torque Program 1391
run is
401310 Format: Numerical value
locked
MP2396.x Input: 0 to 30 000 [Nm] (RUN)
with max. 9 decimal places
LEVEL3
0: No torque limiting
597110-01
Default: 0
motSupply Key name of the motor's power supply module Program 1688
run is
401321 Enter the key name of the power supply module
locked
that drives this motor. All power-supply-module
(optional parameter) (RUN)
key names defined under CfgSupplyModule are
available for selection. LEVEL3
Format: Selection menu 597110-05
Input: Key name from CfgSupplyModule
Default: –

January 2015 4.11 List of machine parameters 931


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motEncType Overwrite the type of speed encoder from the Program 1667
motor table run is
401311
locked
Format: Selection menu
MP2206.x (RUN)
Input:
(optional parameter) Condition:
 From Table REF
The encoder type entered in the motor table is
valid LEVEL3
 ROTATING_WITH_Z1 597110-01
Incremental rotary encoder with Z1 track
 ROTATING_ENDAT_ADJUSTED
Aligned absolute rotary encoder
 LINEAR_ENDAT
Absolute linear encoder
 LINEAR_INCREMENTAL
Incremental linear encoder
 ROTATING_ENDAT_NOT_ADJUSTED
Unaligned absolute rotary encoder
 ROTATING_WITHOUT_Z1
Incremental rotary encoder without Z1 track
 ROT_DIST_CODED_NOT_ADJUSTED
Unaligned incremental rotary encoder with
distance-coded reference marks
 LIN_DIST_CODED_NOT_ADJUSTED
Unaligned linear encoder with distance-coded
reference marks
 DIG_ENDAT_2_2_ADJUSTED
Purely digital and aligned EnDat 2.2 rotary
encoder
 DIG_ENDAT_2_2_NOT_ADJUSTED
Purely digital and unaligned EnDat 2.2 rotary
encoder
 LIN_ENDAT_2_2
Purely digital EnDat 2.2 linear encoder
Default: From Table
motDir Overwrite the counting direction of the motor Program 1668
encoder from the motor table run is
401312
locked
Format: Selection menu
MP2204.x (RUN)
Input:
(optional parameter) Condition:
 Off: REF
The counting direction entered in the motor
table is valid. LEVEL3
 Positive: 597110-02
Positive counting direction.
 Negative:
Negative counting direction.
Default: Off

932 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motStr Overwrite the line count of the motor encoder Program 1668
from the motor table run is
401313
locked
Format: Numerical value
MP2202.x (RUN)
Input: 0 to 999 999
(optional parameter) Condition:
0: Value from the motor table is active
REF
>0: Line count of the motor encoder
LEVEL3
Default: 0
597110-02
motTypeOfFieldAdjust Rough determination of the field angle Program 1679
without motor motion run is
401314
locked
If a precise value is available for the field-angle
MP2250 (RUN)
orientation, the rough value is used until the axis
(optional parameter) has been referenced. LEVEL3
Format: Selection menu 597110-02
Input:
 mode 0:
Recommended for all motors. Do not use for
hanging axes!
 mode 1:
Reserved, do not use!
 mode 2:
Field angle determination with brake applied. A
"minimum" movement of the motor must be
possible when the brakes are applied.
 mode 3:
Like "mode 2" with the difference that the brake
is opened. Not suitable for hanging axes!
 mode 4:
Reserved. Use only in consultation with
HEIDENHAIN.
(For very noisy encoder signals.)
Default: mode 0

January 2015 4.11 List of machine parameters 933


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motFieldAdjustMove Field-angle adjustment mode Program 1675
run is
401315 Format: Selection menu
locked
MP2254.x Input: (RUN)
(optional parameter)  mode 0: LEVEL3
Rough determination of the field angle during
operation 597110-05
(soft key has no function)
Field angle is determined for a motor at
standstill. No plausibility tests. Use parameter
MP_motTypeOfFieldAdjust to specify the
method for rough determination of the field
angle.
 mode 1:
Only on CC 422.
Precise determination of the field angle via soft
key. Use only for spindles or motors without
limit switches!
Do not use for hanging axes! The field angle is
determined for a motor during motion.
 mode 2:
Only with CC 424, CC 6xx.
Precise determination of the field angle via soft
key. The field angle is determined for a motor
during motion.
Caution: No position monitoring (following error
or software limit switch)! Recommended for
horizontal axes or hanging axes with full weight
compensation.
 mode 3:
Like mode 2. However, the drive does not have
to be enabled via the PLC.
Default: mode 0
motFieldAdjustInfo Field-angle determination (reserved) Program –
run is
401322 Only for the CC 61xx.
locked
MP2252.x Additional parameters for field-angle adjustment (RUN)
with plausibility check.
(optional parameter) LEVEL3
Format: Numerical value
Input: Reserved
Default: 0

934 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motPhiRef Field angle determined (is entered by the TNC Program 1684
640 after it has been determined) run is
401316
locked
Format: Numerical value
MP2256.x (RUN)
Input: 0 to 2 147 483 647
(optional parameter) LEVEL3
Is entered by the TNC 640
0: Field angle must not be determined 597110-01
or has not yet been determined

Default: 0
motEncSerialNumber Control or encoder identification for the field Program 1684
angle from MP_motPhiRef run is
401317
locked
Format: Numerical value
MP2257.x (RUN)
Input: Is entered by the TNC 640
(optional parameter) LEVEL3
0: Field angle must not be determined
or was not yet 597110-01
determined
Default: 0
motAdditionalInfo Reserved, do not assign Program 1692
run is
401318 Format: Numerical value
locked
(optional parameter) Input: Reserved (RUN)
Default: 0 LEVEL3
motSpeedSwitchOver Shaft speed for PWM switchover Program 1425
run is
401319 Only for the CC 61xx/UEC 11x and CC 424.
locked
MP2186.x Specifies the shaft speed at which the PWM (RUN)
frequency is switched to twice the PWM
(optional parameter) LEVEL3
frequency. Use only in combination with
HEIDENHAIN power modules! 597110-03
Format: Numerical value
Input: 0 to 100 000 [rpm]
With max. 9 decimal places
Default: 0
motSpeedSwitchBack Shaft speed for PWM switchover Program 1425
run is
401320 Only for the CC 61xx/UEC 11x and CC 424.
locked
MP2188.x Specifies the shaft speed at which the factor 2 (RUN)
PWM frequency is switched to a factor 1. Use
(optional parameter) LEVEL3
only in combination with HEIDENHAIN power
modules! 597110-03
Format: Numerical value
Input: 0 to 100 000 [rpm]
With max. 9 decimal places
Default: 0

January 2015 4.11 List of machine parameters 935


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motSeriesInduct Overwrite the inductance of the series reactor Program 1701
run is
401328 Overwrites the L value from the motor table.
locked
MP2208.x Format: Numerical value (RUN)
(optional parameter) Input: Inductance of series reactor LEVEL3
0 to 30 000 [µH]
597110-06
with max. 9 decimal places
Default: No value, input from the motor
table active
motInertia Overwrite the mass moment of inertia of the Program 1694
motor run is
401329
locked
Overwrites the J value from the motor table. This
MP2209.x (RUN)
makes it possible to react to additional, rigidly
(optional parameter) coupled inertia. LEVEL3
Format: Numerical value 597110-06
Input: 0 to 1 [kgm2]
With max. 9 decimal places
Default: No value, input from the motor
table active
maxSpeedBrakeOpen Reserved, do not assign Program –
run is
401326 Format: Numerical value
locked
MP2236.x Input: Reserved (RUN)
(optional parameter) Default: 0 LEVEL3
597110-06
spindleAxisMode Reserved, do not assign Program –
run is
401327 Format: Selection menu
locked
(optional parameter) Input: Reserved (RUN)
Default: No value LEVEL3
597110-06

936 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
plugAndPlay Evaluation of the electronic ID labels Program 1669
run is
117201 With each new start, the TNC 640 checks
locked
whether the connected motor has been modified
MP7690, bit 1 (RUN)
and detects this automatically (global
(optional parameter) configuration via CfgHardware/plugAndPlay). The LEVEL3
evaluation of the electronic ID label can be
597110-08
deactivated with this parameter for individual
motors.
 Inactive
Evaluation of the electronic ID label for this
motor is deactivated.
 Global setting
Setting from CfgHardware/plugAndPlay is
active.
Default: Active
CfgControllerComp
Specifies compensation settings in the controller unit
compFriction0 Friction compensation at low speed Allowed in 1184
strobe
401401 Format: Numerical value
(SYNC)
MP2610.x Input: 0 to 30 [A]
LEVEL3
with max. 9 decimal places
(optional parameter)
0: No friction compensation 597110-01
Default: 0
compFrictionT1 Distance before the reversal point for reducing Allowed in 1184
the current from MP_compFriction0 strobe
401402
(SYNC)
The following units of measure apply:
MP2612.x
MP_compFrictionT1 = [s] if LEVEL3
(optional parameter) MP_compFrictionT2 = 0
597110-01
(same behavior as CC 422)
MP_compFrictionT1 = [mm] if
MP_compFrictionT2 > 0
Format: Numerical value
Input: 0 to 1 [mm] or [°]
With max. 9 decimal places
0: No friction compensation
Default: 0
compFrictionT2 Distance after the reversal point for current Allowed in 1184
from MP_compFriction0 strobe
401403
(SYNC)
Format: Numerical value
MP2614.x
LEVEL3
Input: 0 to 100 [mm] or [°]
(optional parameter)
With max. 9 decimal places 597110-01
0: No friction compensation
Default: 0

January 2015 4.11 List of machine parameters 937


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compFrictionNS Friction compensation at rated speed Allowed in –
strobe
401404 Format: Numerical value
(SYNC)
MP2620.x Input: 0 to 30 [A]
LEVEL3
with max. 9 decimal places
(optional parameter)
0: No friction compensation
(or analog axis)
Default: 0
compCurrentOffset Holding current of vertical axis (weight Allowed in 1367
compensation) strobe
401405
(SYNC)
Format: Numerical value
MP2630.x
LEVEL3
Input: –30 to 30 [A]
(optional parameter)
With max. 9 decimal places 597110-01
Default: 0
compAcc Acceleration feedforward control Allowed in 1361
strobe
401406 Format: Numerical value
(SYNC)
MP2600.x Input: 0 to 100 [As2/1]
LEVEL3
With max. 9 decimal places
(optional parameter)
597110-01
Default: 0
compIpcT1 IPC time constant T1 Allowed in 1363
strobe
401407 Format: Numerical value
(SYNC)
MP2602.x Input: 0 to 1 [s]
LEVEL3
With max. 9 decimal places
(optional parameter)
0: IPC inactive 597110-01
Default: 0
compIpcT2 IPC time constant T2 Allowed in 1363
strobe
401408 Format: Numerical value
(SYNC)
MP2604.x Input: 0 to 1 [s]
LEVEL3
With max. 9 decimal places
(optional parameter)
0: IPC inactive 597110-01
Default: 0
compIpcJerkFact Following error in the jerk phase Allowed in 1365
strobe
401409 Format: Numerical value
(SYNC)
MP2606.x Input: 0 to 10
LEVEL3
With max. 9 decimal places
(optional parameter)
597110-02
Default: No value

938 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compActDampFact Factor for active damping of low-frequency Allowed in 1358
oscillations strobe
401410
(SYNC)
Format: Numerical value
MP2607.x
LEVEL3
Input: 0 to 30
(optional parameter)
with max. 9 decimal places 597110-02
0: No damping
1.5: Typical damping factor
Default: No value
compActDampTime Time constant for active damping of low-freq. Allowed in 1358
oscillations strobe
401411
(SYNC)
Format: Numerical value
MP2608.x
LEVEL3
Input: 0 to 0.999 999 999 [s]
(optional parameter)
0: No damping 597110-02
0.005 to 0.02 [s]: Typical
damping time constant
Default: No value
compActDampFreq Separation frequency for Crossover Position Allowed in 1434
Filter (CPF) strobe
401416
(SYNC)
For passive damping of machine resonances.
MP2609.x
Useable for drives with speed and position LEVEL3
(optional parameter) encoders (dual-encoder systems)
597110-06
Format: Numerical value
Input: 0 to 300 [Hz]
with max. 9 decimal places
0: CPF not active
20 to 80 [Hz]: Typical values
Default: No value
compTorqueRipple Name of the file for "torque ripple Allowed in 1431
compensation" (TRC) strobe
401412
(SYNC)
Is entered by TNCopt during TRC adjustment
MP2260.x
LEVEL3
Format: String
(optional parameter)
597110-03
Input: File name generated in TNCopt
xx_<MotorNamefromMotorTable>.TRC
compTorsionFact Torsion compensation between position Allowed in 1433
encoder and speed encoder strobe
401413
(SYNC)
Format: Numerical value
MP2640.x
LEVEL3
Input: 0.001 to 30 [µm/A]
(optional parameter)
with max. 9 decimal places 597110-03
0: Compensation not active
Default: No value

January 2015 4.11 List of machine parameters 939


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compTimeLimit Limitation of values for backlash, stiction and Allowed in 1169
hysteresis strobe
401417
(SYNC)
Format: Numerical value
MP2690.x
LEVEL3
Input: 0 to 1 [s]
(optional parameter)
With max. 9 decimal places 597110-06
0: Not active
Default: 0
compSwitchOff Switch-off of compensation in speed ctrlr or Allowed in 1431
current ctrlr strobe
401414
(SYNC)
Format: Bit-encoded value (32 bits)
MP2261.x
LEVEL3
Input:
(optional parameter)
 Bit0 - Torque ripple compensation
0: Torque ripple compensation is switched on
1: Torque ripple compensation is switched off
 Bit1 - Kinematic compensation
0: Kinematic compensation switched on
1: Kinematic compensation switched off
 Bit2 - Position-dependent torsion
compensation
0: Position-dependent torsion compensation
switched on
1: Position-dependent torsion compensation
switched off
 Bit 3 to bit 31: reserved
Default: All bits = 0

940 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
enhancedComp Axis-specific activation of adaptive control Allowed in 1463
functions strobe
401415
(SYNC)
Format: Bit-encoded value (32 bits)
MP2700.x
LEVEL3
Input:
(optional parameter)
597110-06
 Bit 0—Cross talk compensation (CTC)
option 141
0: Not active
1: Active
 Bit 1—Position adaptive control (PAC)
option 142
0: Not active
1: Active
 Bit 2—Load adaptive control (LAC)
option 143
0: Not active
1: Active
 Bit 3—Motion adaptive control (MAC)
option 144
0: Not active
1: Active
 Bit 4—Active chatter control (ACC)
option 145
0: Not active
1: Active
 Bit 5—Active vibration damping (AVD) 597110-08
option 146
0: Not active
1: Active
 Bit 6 to bit 31 – Reserved
Default: All bits = 0

January 2015 4.11 List of machine parameters 941


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compAccMode ACC mode: Selection of principle of function of Allowed in 1480
automatic mode strobe
401418
(SYNC)
Only valid if bit 4 is set in MP_enhancedComp.
MP2710.x
LEVEL3
Format: Numerical value
(optional parameter)
597110-06
Input:
 0 = Robust standard mode with an average
application of a damping signal (recommended
setting)
 1 = Chatter damping is increased for the
selected axis. This can sometimes be advisable
for one axis or two axes (e.g. vertical axes) and
results in slightly reduced control accuracy
(following error increases slightly)
 2 = Chatter damping is significantly increased
for the selected axis. This is usually advisable
for no more than one axis, but leads to reduced
control accuracy (increased following error)
Default: No value
avdFileName Name of the file for AVD (SW option 146— Allowed in 1483
Active Vibration Damping) strobe
401419
(SYNC)
Assigning indices for AVD compensation files
MP2720.x
LEVEL3
Format: Selection menu
(optional parameter)
597110-08
Input:
 AVD_xx.cmp
 AVD_P1_xx.cmp
 AVD_P2_xx.cmp
 ...
 AVD_P9_xx.cmp
 Where xx = axis index from CfgAxes/axisList
Default: No value

942 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgAxisCoupling (optional parameter)
Specifies the settings for the coupling of axes, e.g. for gantry axes or axes in master-slave-torque
control
masterAxis Assign a master axis to the slave axis. Program 1244
run is 1258
402301 Format: Selection menu
locked
MP850.x Input: Key name of the master axis from (RUN)
CfgAxes/axisList
LEVEL3
Default: 0
597110-04
mode Mode of the coupling Program 1244
run is
402302 Format: Selection menu
locked
Input: (RUN)
 None: LEVEL3
Axis has no coupling
597110-04
 Position:
Axis coupled via gantry (position coupling)
 Torque:
Torque coupling
Default: None
type Type of coupling Program 1244
run is
402303 Format: Selection menu
locked
Input: (RUN)
 Static: LEVEL3
Static coupling—is automatically closed in the
start-up phase without PLC involvement. 597110-04
 Dynamic:
Dynamic coupling – is closed only by PLC
command.
Default: Static

January 2015 4.11 List of machine parameters 943


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
typeOfOffset Specifies how the position offset between Program 1244
master and slave axis is handled. run is
402304
locked
Format: Selection menu
MP860.x, bit 0 (RUN)
Input:
LEVEL3
 None / Actual:
The offset when a coupling is closed is retained 597110-04
as static offset. There is no compensating
movement on stationary axes.
 Parameter:
After the reference run, the value of the
MP_posOffset parameter is taken as the
absolute position offset. When the coupling
closes, there is an immediate compensating
movement.
Default: None
posOffset Value of the position offset with closed Program 1244
coupling run is
402305
locked
Format: Numerical value
MP855.x (RUN)
Input:
LEVEL3
Position offset in millimeters [mm] or degrees [°]
that is compensated and maintained if 597110-04
MP_typeOfOffset = Parameter is set
Decimal
places: max. 9
Default: 0
offsetFeed The velocity with which an offset between the Program 1244
master axis and the slave axis is compensated run is
402306
for locked
MP1330.x (RUN)
Format: Numerical value
LEVEL3
Input: Velocity
[mm/min] or [°/min] 597110-04
with max. 9 decimal places
Default: 999.996
maxPosDiff Synchronization monitoring – deletable Program 1244
emergency stop message run is
402307
locked
Format: Numerical value
MP855.x (RUN)
Input: Permissible offset in [mm] or [°]
LEVEL3
With max. 9 decimal places
597110-04
Default: 0

944 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ultimatePosDiff Synchronization monitoring – non-deletable Program 1244
emergency stop message run is
402308
locked
Format: Numerical value
(RUN)
Input: Max. permissible offset in [mm] or [°]
LEVEL3
With max. 9 decimal places
597110-04
Default: 0
scalingFactor Scaling factor for calculating the slave position Program 1244
run is
402309 Format: Numerical value
locked
Input: (RUN)
Any values, even negative values
LEVEL3
(on modulo axes only ±1 is can be entered)
597110-04
Default: 1
accFilterTime Time constant for filtering the acceleration Program 1244
curve run is
402315
locked
Format: Numerical value
(RUN)
Input: 0 to 200 [ms]
LEVEL3
Default: 30
597110-04
torqueBias Tensioning torque between master and slave Program 1262
for master-slave torque control (entry for the run is
402310
slave axis) locked
MP2900.x (RUN)
Format: Numerical value
LEVEL3
Input: –1000 to 1000 [Nm]
With max. 9 decimal places 597110-04
Default: 0
propGain P factor of the torque controller for master- Program 1262
slave torque control (entry for the slave axis) run is
402311
locked
Format: Numerical value
MP2910.x (RUN)
Input: 0.001 to 1666.6665 [1/(Nm · min)]
LEVEL3
With max. 9 decimal places
597110-04
Default: 0.001
compOnlySlave Configuration of master-slave torque control Program 1251
run is
402317 Format: Numerical value
locked
MP2912.x Input: (RUN)
(optional parameter)  0 = Distribute speed compensation value to LEVEL3
master/slave
597110-06
 1 = Send speed compensation value only to
the slave
Default: No value

January 2015 4.11 List of machine parameters 945


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
inverseVelocity Reversal of the algebraic sign of the nominal Program 1262
speed value run is
402314
locked
Format: Selection menu
MP1040 (RUN)
Input:
LEVEL3
 FALSE:
Algebraic sign reversal inactive 597110-04
 TRUE:
Algebraic sign reversal active
Default: FALSE
autoBrakeTest Motor brake test for synchronized axes Program 1265
run is
402316 Format: Selection menu
locked
MP860, bit 2 Input: (RUN)
(optional parameter)  off: LEVEL3
The brake is tested separately for this axis.
597110-05
 with Master:
The brake for this axis is tested at the same
time as the master axis.
Default: off

946 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgRTCoupling (optional parameter)
Specifies settings for the real-time coupling (RTC) of axes or spindles
function Description of function for RTC Program 1153
run is
403401 Defines the coupling function in a formula.
locked
(optional parameter) Format: String (RUN)
Input: Formula (max. 256 characters) LEVEL3
For the syntax, see page 1150
597110-08
Default: No value
typeOfOffset Treatment of the position offset with RTC Program 1153
run is
403402 Format: Selection menu
locked
Input: (RUN)
 None LEVEL3
When a coupling is opened or closed, any
existing offset is compensated using the value 597110-08
from MP_offsetFeed.
 Keep
When a coupling is opened or closed, any
existing offset remains in effect, which means
that a coupling can be closed anywhere you like,
without a compensating movement being
performed.
Default: None
offsetFeed Velocity when moving into the offset Program 1154
run is
403403 Format: Numerical value
locked
Input: 0 to 9960 [mm/min] (RUN)
With max. 9 decimal places
LEVEL3
Default: 960
597110-08
maxFeed Maximum permissible velocity for RTC Program 1154
run is
403404 Percentage of CfgFeedLimits/maxFeed
locked
(optional parameter) Format: Numerical value (RUN)
Input: 0 to 100 [%] LEVEL3
With max. 9 decimal places
597110-08
Default: 0 (= value from CfgFeedLimits/
maxFeed used to
100%)

January 2015 4.11 List of machine parameters 947


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxAcc Maximum permissible acceleration for RTC Program 1154
run is
403405 Percentage of CfgFeedLimits/
locked
maxAcceleration
(optional parameter) (RUN)
Format: Numerical value
LEVEL3
Input: 0 to 100 [%]
597110-08
With max. 9 decimal places
Default: 0 (= value from CfgFeedLimits/
maxAcceleration used to
100%)
filterTime Mean value filter for the formula result Program 1154
run is
403407 Time constant of the mean value filter for the
locked
formula result.
(optional parameter) (RUN)
Format: Numerical value
LEVEL3
Input: 0 to 1 [s]
597110-09
With max. 9 decimal places
Default: 0 (=Filter is off)
testMode Activate the test mode for RTC Program 1154
run is
403406 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
Test mode is active.
The calculation result of the formula is output 597110-09
only in the integrated oscilloscope (RTC
channel) and is not added to the axis.
 FALSE
Test mode is inactive.
Default: FALSE
CfgCCAuxil (optional parameter)
Extended settings for the CC controller unit (optional);
Use only in consultation with HEIDENHAIN.
miscCtrlFunct0 Special controller functions Change at 1422
any time
402201 Format: Bit-encoded value (16 bits)
(NOTHING)
MP2222.x Input:
LEVEL3
(optional parameter)  Bit 11—Special procedure for wye/delta
switchover on asynchronous motors:
0 = Not active (recommended)
1 = The motor is actively demagnetized when
the drive is switched off before
wye/delta switchover.
Default: No value

948 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
miscCtrlFunct1 Special controller functions Change at 1391
any time
402202 Format: Bit-encoded value (16 bits) 1422
(NOTHING)
MP2223.x Input: 1617
LEVEL3
(optional parameter)  Bit 1—If a torque is specified via PLC Modules
9128 and 9158 and MP_miscCtrlFunct1 Bit1=1
is set, the NC automatically considers the
holding current in MP_compCurrentOffset
when limiting the current. This makes it
possible to use the PLC modules to set a limit
value that is below the holding torque.
0 =Not active
1 =Active
 Bit 7—Wait for the readiness of the current
controller when the drive is switched back on
after wye/delta switchover:
0 =Wait for readiness of current controller
1 = Do not wait for the readiness of the current
controller (recommended)
 Bit 9—Support common position encoder for
two axes:
0 = Function is not supported
1 = Function is supported

CfgAxParSafety (optional parameter)


Axis-specific settings for functional safety (FS);
Define the axis-dependent parameters for machines with integrated functional safety (FS) here.
axisGroup Assignment to an axis group Shut down –
control
403105 Assign the axis to an axis group. The axis groups
(RESET)
are specified under CfgAxGroupSafety.
MP600, MP601
LEVEL3
Format: Numerical value
(only evaluated in systems
with functional safety FS— Input: –1 to 7
observe the Technical –1: Axis is not safe
Manual for Functional Safety
Default: 0
FS).
positionDiffRef Maximum position deviation between MC and Shut down –
CC when traversing the reference marks; control
403106
(RESET)
Maximum position deviation to the marking when
MP642
testing the axes LEVEL3
(only evaluated in systems
Format: Numerical value
with functional safety FS—
observe the Technical Input: 0 to 30 [mm] or [°]
Manual for Functional Safety With max. 9 decimal places
FS).
Default: 1
(optional parameter)

January 2015 4.11 List of machine parameters 949


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
positionMatch Position at which the operator can test the Shut down –
agreement of the actual position with the control
403107
position values used internally (RESET)
MP646
(position of mark) LEVEL3
(only evaluated in systems
Format: Numerical value
with functional safety FS—
observe the Technical Input: –99 999.9999 to 99 999.9999
Manual for Functional Safety [mm] or [°]
FS). With max. 9 decimal places
(optional parameter) Default: 0
positionDiffNom Maximum permissible position deviation for Shut down –
actual/nominal monitoring with position control
403108
values (RESET)
MP641
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 30 [mm] or [°]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 1
FS).
(optional parameter)
speedDiffNom Maximum permissible speed deviation in % Shut down –
for actual/nominal monitoring of speed values control
403109
(RESET)
Format: Numerical value
MP630, MP631
LEVEL3
Input: 0 to 20 [%] of the
(only evaluated in systems
current nominal speed
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: No value
FS).
(optional parameter)
timeToleranceSpeed Time window for permissible overshoot of the Shut down –
limit values for nominal/actual monitoring of control
403110
speed values (RESET)
MP632, MP633
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 60 [s]
with functional safety FS—
observe the Technical Default: 10
Manual for Functional Safety
FS).
(optional parameter)

950 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
speedLimitSom2 Axes: Limit value for "Safely limited speed— Shut down –
SLS" in operating mode 2 (SOM 2) control
403111
(RESET)
Format: Numerical value
MP590
LEVEL3
Input: 0 to 60 000 [mm/min] or [°/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2000
Manual for Functional Safety
FS).
(optional parameter)
speedLimitSom3 Axes: Limit value for "Safely limited speed— Shut down –
SLS" in operating mode 3 (SOM 3) control
403112
(RESET)
Format: Numerical value
MP540
LEVEL3
Input: 0 to 60 000 [mm/min] or [°/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2000
Manual for Functional Safety
FS).
(optional parameter)
speedLimitSom4 Axes: Limit value for "Safely limited speed— Shut down –
SLS" in operating mode 4 (SOM 4) control
403113
(RESET)
Format: Numerical value
MP552
LEVEL3
Input: 0 to 60 000 [mm/min] or [°/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2000
Manual for Functional Safety
FS).
(optional parameter)
rpmLimitSom2 Spindle: Limit value for "Safely limited Shut down –
speed—SLS" in operating mode 2 (SOM 2) control
403114
(RESET)
Format: Numerical value
MP591
LEVEL3
Input: 0 to 3 600 000 [1/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 500
Manual for Functional Safety
FS).
(optional parameter)

January 2015 4.11 List of machine parameters 951


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
rpmLimitSom3 Spindle: Limit value for "Safely limited Shut down –
speed—SLS" in operating mode 3 (SOM 3) control
403115
(RESET)
Format: Numerical value
MP541
LEVEL3
Input: 0 to 3 600 000 [1/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 500
Manual for Functional Safety
FS).
(optional parameter)
rpmLimitSom4 Spindle: Limit value for "Safely limited Shut down –
speed—SLS" in operating mode 4 (SOM 4) control
403116
(RESET)
Format: Numerical value
MP551
LEVEL3
Input: 0 to 3 600 000 [1/min]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 500
Manual for Functional Safety
FS).
(optional parameter)
absLimitPos Positive absolute position limit values relative Shut down –
to the machine datum control
403117
(RESET)
Format: Numerical value
MP650
LEVEL3
Input: –99 999.9999 to 99 999.9999
(only evaluated in systems
[mm] or [°]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 0
FS).
(optional parameter)
absLimitNeg Negative absolute position limit values Shut down –
relative to the machine datum control
403118
(RESET)
Format: Numerical value
MP670
LEVEL3
Input: –99 999.9999 to 99 999.9999
(only evaluated in systems
[mm] or [°]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 0
FS).
(optional parameter)

952 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
positionRangeVmin Axes: Limit value for standstill monitoring in Shut down –
SOS state control
403119
(RESET)
Format: Numerical value
MP545
LEVEL3
Input: 0.001 to 30 [mm] or [°]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 0.5
Manual for Functional Safety
FS).
(optional parameter)
distLimitJog Axis-specific limit value for "safely limited Shut down –
increment—SLI" control
403120
(RESET)
Format: Numerical value
MP547
LEVEL3
Input: 0.001 to 10 [mm] or [°]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 2
Manual for Functional Safety
FS).
(optional parameter)
timeLimitStop1 Default time for bringing the axis/spindle to a Shut down –
standstill on an axis-specific basis along the control
403121
emergency braking ramp for SS1 reaction (RESET)
MP525, MP526
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 1 000 [s]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 1
FS).
timeLimitStop2 Default time for bringing axis/spindle to a Shut down –
controlled standstill on an axis-specific basis control
403122
for SS2 reaction (RESET)
MP527, MP528
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 1 000 [s]
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 1
FS).
(optional parameter)

January 2015 4.11 List of machine parameters 953


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
distLimitStop2 Axes: Axis-specific limit value for maximum Shut down –
permissible path upon SS2 reaction control
403123
(RESET)
Format: Numerical value
MP550
LEVEL3
Input: 0.001 to 1 000.0 [mm] or [°]
(only evaluated in systems
With max. 9 decimal places
with functional safety FS—
observe the Technical Default: 0.5
Manual for Functional Safety
FS).
(optional parameter)
revLimitStop2Som2 Spindle: Maximum permissible path or Shut down –
revolutions of the spindle upon SS2 reaction in control
403124
SOM2 operating mode (RESET)
MP556
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 2
FS).
(optional parameter)
revLimitStop2Som3 Spindle: Maximum permissible path or Shut down –
revolutions of the spindle upon SS2 reaction in control
403125
SOM3 operating mode (RESET)
MP557
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 5
FS).
(optional parameter)
revLimitStop2Som4 Spindle: Maximum permissible path or Shut down –
revolutions of the spindle upon SS2 reaction in control
403126
SOM4 operating mode (RESET)
MP558
Format: Numerical value LEVEL3
(only evaluated in systems
Input: 0 to 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical
Manual for Functional Safety Default: 5
FS).
(optional parameter)

954 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
timeToleranceDvDt Delay time for dv/dt monitoring Shut down –
control
403127 Format: Numerical value
(RESET)
MP530 Input: 0 to 10 [s]
LEVEL3
With max. 9 decimal places
(only evaluated in systems
with functional safety FS— Default: 0.03
observe the Technical
Manual for Functional Safety
FS).
(optional parameter)
encoderForSafety Optional selection of rotary encoders for Shut down –
functional safety control
403128
(RESET)
Defines whether the encoder system specified in
(only evaluated in systems
the axis configuration or only the motor encoder is LEVEL3
with functional safety FS—
to be used for functional safety.
observe the Technical 597110-06
Manual for Functional Safety Format: Selection menu
FS).
Input:
(optional parameter)
 speedAndPosEncoder
The encoder system specified in the axis
configuration is to be used
 speedEncoder
Only the motor encoder is used (safe rotary
encoder with EnDat 2.2 is required)
 posEncoder
Only the position encoder is used (safe position
encoder with EnDat 2.2 is required)
Default: speedAndPosEncoder
CfgMotParSafety (optional parameter)
Motor-specific settings for functional safety (FS);
Define the axis-dependent parameters for machines with integrated functional safety (FS) here.
machineID Name of the machine model Shut down –
control
403201 Enter a designation that unambiguously identifies
(RESET)
the machine series or the machine itself.
(optional parameter)
LEVEL3
Parameter reserved, do not assign.
(reserved parameter)
Format: String
(only evaluated in systems
with functional safety FS— Input: Max. 40 characters
observe the Technical
Default: No value
Manual for Functional Safety
FS).

January 2015 4.11 List of machine parameters 955


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
dataSetID Unique designation of the data record Shut down –
control
403202 Enter a number that uniquely identifies the data
(RESET)
record.
(optional parameter)
The number must not recur in any data records LEVEL3
(reserved parameter) that are effective system-wide or for a parameter
(only evaluated in systems set.
with functional safety FS— Parameter reserved, do not assign.
observe the Technical
Format: Numerical value
Manual for Functional Safety
FS). Input: 0 to 999
Default: 0
dataSetAccepted Checked and accepted data record Shut down –
control
403203 The data record is marked as accepted by the
(RESET)
system by entering the correct code number.
(optional parameter)
LEVEL3
Parameter reserved, do not assign.
(reserved parameter)
Format: Selection menu
(only evaluated in systems
with functional safety FS— Input:
observe the Technical
 accepted
Manual for Functional Safety Data record accepted
FS).
 not accepted
Data record not accepted
Default: not accepted
dataSetCrc Checksum of the data record Shut down –
control
403204 The checksum is calculated and entered by the
(RESET)
system during the acceptance of the data record.
(optional parameter)
LEVEL3
Parameter reserved, do not assign.
(reserved parameter)
Format: Numerical value
(only evaluated in systems
with functional safety FS— Input: 0 to 4 294 967 295
observe the Technical
Default: 0
Manual for Functional Safety
FS).

956 HEIDENHAIN Technical Manual TNC 640


4.11.4 KeySynonym
Definition of synonym names

Parameter Function and input Reaction/ Page


MP number Access
iTNC MP number
CfgKeySynonym
Definition of a synonym name;
If parameter objects with the same content but different key names are needed, you can define a
synonym name—comparable with a link.
Examples:
 Parameter objects for the simulation channel (CH_NC)—Test Run mode of operation
 Further parameter sets for axes
[Key name = Synonym name]
Example: CH_SIM for the simulation channel
relatedTo Reference to key name RESET 628
109501 The synonym name refers to the key name LEVEL3
specified here.
The data of the parameter object with the key name
are used for the parameter object with the
synonym name.
Format: String
Input: Key name, max. 18 characters
excludeList List with configuration objects to be excluded RESET 628
109502 For the configuration objects shown in the list, LEVEL3
cancel the reference under
CfgKeySynonym/relatedTo.
Format: List [0 to 50]
Input: Key names to be excluded

January 2015 4.11 List of machine parameters 957


4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers

Attention

Some of the machine parameters of the iTNC 530 have different units of
measurement than the TNC 640! It is absolutely essential that you check
the units of measurement before using the parameters. You must also
convert the parameter values, if necessary.

Note

The machine parameters available depend on the control model, the scope
of function and the NC software. Some of the machine parameters listed
below may not be available on your control.

Note

Not all machine parameters available on the TNC 640 are also available on
the iTNC 530. The following overview only contains those machine
parameters that are available on both controls.

4.12.1 Measuring systems and machine axes

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
MP10, MP12 axisMode 300105 1027
Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
MP20.0 checkAbsolutPos 400701 1084
MP20.1 checkSignalLevel 400702 1084
MP20.2 checkFrequency 400703 1084
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP110.x, MP111.x posEncoderInput 400008 1073
MP112.x, MP113.x speedEncoderInput 400012 1078
MP115.0, MP116.0 posEncoderSignal 400009 1075
MP115.1, MP116.1 posEncoderResistor 400011 1076
MP115.2, MP116.2 posEncoderFreq 400010 1075
MP120.x, MP121.x inverterInterface 400013 1073
MP210 signCorrActualVal 400001 1080
MP331.x posEncoderDist 400005 1064
MP332.x posEncoderIncr 400006 1065

958 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP334.x posEncoderRefDist 400416 1065
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP340.x genExtIntPolFactor 400017 1069
System
CfgKeyboard
MP410.3 axisKeyIV 101804 –
MP410.4 axisKeyV 101805 –
Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
MP420 isHirth 300103 1162
Axes
PhysicalAxis
[Key name of the axis]
CfgAxisSafety
MP525, MP526 timeLimitStop1 300320 –
MP527, MP528 timeLimitStop2 300321 –
MP530 timeToleranceDvDt 300323 –
MP540 speedLimitSom3 300329 –
MP541 rpmLimitSom3 300331 –
MP545 positionRangeVmin 300310 –
MP547 distLimitJog 300319 –
MP550 distLimitStop2 300322 –
MP551 rpmLimitSom4 300332 –
MP552 speedLimitSom4 300317 –
MP556 revLimitStop2Som2 300335 –
MP557 revLimitStop2Som3 300336 –
MP558 revLimitStop2Som4 300337 –
MP590 speedLimitSom2 300316 –
MP591 rpmLimitSom2 300330 –
MP600, MP601 axisGroup 300311 –
MP620 timeToBrakeTest 300334 –
MP630, MP631 speedDiffNom 300315 –
MP632, MP633 timeToleranceSpeed 300328 –
MP641 positionDiffNom 300314 –
MP642 positionDiffRef 300305 –
MP646 positionMatch 300306 –
MP650 absLimitPos 300308 –
MP670 absLimitNeg 300309 –

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 959
iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisComp
MP708 backlashDistance 401808 1168
MP709 backlashTimeConst 401809 1168
MP709.x filterTime 401805 1168
MP710.x backLash 401802 1168
MP720.x linearCompValue 401803 1172
MP730 compType 401804 1172
MP750.x posCtrlRevErr 401806 1170
MP752.x posCtrlRevErrTime 401807 1170
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
MP850.x masterAxis 402301 1249
MP855.x posOffset 402305 1250
MP855.x maxPosDiff 402307 1251
MP860.x, bit 0 typeOfOffset 402304 1250
MP860.x, bit 2 autoBrakeTest 402316
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
MP910.x swLimitSwitchPos 400501 1130
MP920.x swLimitSwitchNeg 400502 1130
Axes
PhysicalAxis
[Key name of the axis]
CfgMachDatumExtra
MP950.x distFromMachDatum 300501 1974
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP960.x refPosition 400403 1284

960 HEIDENHAIN Technical Manual TNC 640


4.12.2 Positioning and feedback control

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
MP1010.x maxFeed 400302 1316
MP1010.x rapidFeed 400303 1316
MP1020.x manualFeed 400304 1317
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerTol
MP1030.x posTolerance 401101 1515
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP1040 signCorrNominalVal 400002 1080
MP1054.x distPerMotorTurn 400004 1058
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
MP1060.x maxAcceleration 400305 1317
Channels
ChannelSettings
[Key name of the channel]
CfgLaPath
MP1070 maxTransAcc 201514 1314
MP1070 maxTransAccHi 201515 1314
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisAnalog
MP1080.x analogOffset 400102 –
Axes
ParameterSets
[Key name of the parameter set]
CfgLaAxis
MP1085.x axPathJerk 401703 1319
MP1086.x axPathJerkHi 401704 1319
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerAuxil
MP1110.x checkPosStandstill 400602 1513

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 961
iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerAuxil
MP1120.x chkPosHoldFieldAdj 400610 –
Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
MP1140.x movementThreshold 400705 1512
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerAuxil
MP1144.x maxPosDiff 400705 1509
System
CfgFilter
defaultPosition
MP1200 shape 100405 1304
defaultCutterLoc
shape 100406 1304
Channels
ChannelSettings
[Key name of the channel]
CfgLaPath
MP1202.0 pathTolerance 201506 1310
MP1202.1 pathToleranceHi 201507 1310
MP1205 reduceCornerFeed 201516 1321
System
CfgFilter
defaultPosition 100405
MP1210, MP1211, frequency 1305
MP1212, MP1213 defaultCutterLoc 100406
frequency 1305
Axes
MP1230.x, MP1231.x ParameterSets
MP1232.x, MP1233.x [Key name of the parameter set]
MP1240.x, MP1241.x CfgLaAxis
MP1242.x, MP1243.x axTransJerk 401701 1318
System
CfgFilter
defaultPosition 100405
MP1262, MP1263 maxHscOrder 1305
defaultCutterLoc 100406
maxHscOrder 1305

962 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionFilter
MP1262, MP1263 axisPosition
maxHscOrder 401606 1305
axisCutterLoc
maxHscOrder 401607 1305
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP1320 refDirection 400408 1274
MP1330.x refFeedLow 400406 1274
MP1330.x refFeedHigh 400407 1274
MP1350.x refType 400401 1273
Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
MP1391, ..92, ..96 feedForwardFactor 400806 1329
MP1410.x servoLagMin1 400802 1506
MP1420.x servoLagMax1 400803 1506
MP1510.x, MP1810.x kvFactor 400801 1331
Channels
ChannelSettings
[Key name of the channel]
CfgLaPath
MP1522 filterFeedTime 201513 1294
Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
MP1820 servoLagGainFactor 400811 1331
MP1830 servoLagKinkSpeed 400812 –

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 963
4.12.3 PWM interface (DSP)

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
CfgHardware
MP2050 I32driveEnabling 100105 –
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
MP2100.x ampName 401201 1691
MP2150 ampAcFailSelection 401207 –
MP2160.x ampVoltProtection 401205 1419
MP2170 ampReadyWaitTime 401206 1374
MP2180.x ampPwmFreq 401204 1659
System
CfgCycleTimes
MP2172 watchdogTime 100303 1552
Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
MP2173.x vCtrlTimeSwitchOff 400928 1555
Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
MP2182.x iCtrlPwmType 401206 1660
MP2184.x iCtrlPwmInfo 401204 –
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2186.x motSpeedSwitchOver 401319 1425
MP2188.x motSpeedSwitchBack 401320 1425
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
MP2190 ampBusVoltage 401203 1706
MP2191 ampPowerSupplyType 401202 1707
MP2192 limitOfDcVoltage 401211 –
MP2195 powStatusCheckOff 401209 1538
System
CfgSupplyModule
[Key name of supply module]
MP2198 name 117201 1691

964 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2200.x motName 401301 1667
MP2202.x motStr 401313 1668
MP2204.x motDir 401312 1668
MP2206.x motEncType 401311 1667
MP2208.x motSeriesInduct 401328 1701
MP2209.x motInertia 401329 1694
Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
MP2210.x iCtrlMotVRedFact 401005 1357
MP2211.x iCtrlMotVRedSpeed 401006 –
Axes
ParameterSets 1390,
[Key name of the parameter set] 1539,
CfgServoMotor 1562,
MP2220.x, (MP2221.x) motEncCheckOff 401303 1576
MP2221.x Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
checkRefDistance 400704 1577
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2230.x testBrakeCurrent 401323 1546
MP2232.x testBrakeTolerance 401324 1547
MP2236.x maxSpeedBrakeOpen 401326 –

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 965
iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2250.x motTypeOfFieldAdjust 401314 1679
MP2254.x motFieldAdjustMove 401315 1675
MP2256.x motPhiRef 401316 1684
MP2257.x motEncSerialNumber 401317 1684
CfgControllerComp
MP2260.x compTorqueRipple 401412 1431
CfgServoMotor
MP2302.x motFactorI2T 401304 1527
CfgPowerStage
MP2304.x ampFactorI2T 401208 1527
CfgSpeedControl
MP2308.x vCtrlSwitchOffDelay 400927 1540
MP2309.x vCtrlSwitchOnDelay 400929 1540
CfgServoMotor
MP2391.x motPbrMax 401307 1390
MP2392.x motPMax 401308 1390
MP2393.x motPMax2 401325 1390
MP2394.x motPbrMaxAcFail 401309 1390
MP2396.x motMMax 401310 1391
Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
MP2420.x iCtrlPropGain 401001 1380
MP2430.x iCtrlIntGain 401002 1380
MP2440.x iCtrlDiffFreqFF 401007 1383
MP2450.x iCtrlAddInfo, bit 0 401008

966 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
MP2500.x vCtrlPropGain 400901 1343
MP2510.x vCtrlIntGain 400902 1343
MP2512.x vCtrlIntTime 400903 1362
MP2520.x vCtrlDiffGain 400904 1345
MP2530.x vCtrlFiltLowPassT 400905 –
MP2540.x, MP2542.x vCtrlFiltDamping1 400910 1350
MP2543.x vCtrlFiltDamping2 400914 1350
MP2544.x vCtrlFiltDamping3 400918 1350
MP2545.x vCtrlFiltDamping4 400922 1350
MP2546.x vCtrlFiltDamping5 400926 1350
MP2547.x vCtrlFiltDamping6 400937 1350
MP2550.x, MP2552.x vCtrlFiltFreq1 400908 1350
MP2553.x vCtrlFiltFreq2 400912 1350
MP2554.x vCtrlFiltFreq3 400916 1350
MP2555.x vCtrlFiltFreq4 400920 1350
MP2556.x vCtrlFiltFreq5 400924 1350
MP2557.x vCtrlFiltFreq6 400935 1350
MP2560.x vCtrlEncInputFilt 400906 1351
MP2561.x vCtrlEncInputFunc 400932 1651
MP2562.x vCtrlFiltType1 400907 1350
MP2563.x vCtrlFiltType2 400911 1350
MP2564.x vCtrlFiltType3 400915 1350
MP2565.x vCtrlFiltType4 400919 1350
MP2566.x vCtrlFiltType5 400923 1350
MP2567.x vCtrlFiltType6 400934 1350
MP2572.x vCtrlFiltBandWidth1 400909 1350
MP2573.x vCtrlFiltBandWidth2 400913 1350
MP2574.x vCtrlFiltBandWidth3 400917 1350
MP2575.x vCtrlFiltBandWidth4 400921 1350
MP2576.x vCtrlFiltBandWidth5 400925 1350
MP2577.x vCtrlFiltBandWidth6 400936 1350
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2590.x motEmergencyStopRamp 401306 1385

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 967
iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
MP2600.x compAcc 401406 1361
MP2602.x compIpcT1 401407 1363
MP2604.x compIpcT2 401408 1363
MP2606.x compIpcJerkFact 401409 1363
MP2607.x compActDampFact 401410 1359
MP2608.x compActDampTime 401411 1359
MP2609.x compActDampFreq 401416 1436
MP2610.x compFriction0 401401 1184
MP2612.x compFrictionT1 401402 1184
MP2614.x compFrictionT2 401403 1184
MP2620.x compFrictionNS 401404 –
MP2630.x compCurrentOffset 401405 1367
MP2640.x compTorsionFact 401413 1433
MP2690.x compTimeLimit 401417
MP2700.x enhancedComp 401415 1463
MP2710.x compAccMode 401418 1480
MP2720.x avdFileName 401419 1483
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
MP2900.x torqueBias 402310 1262
MP2910.x propGain 402311 1262
MP2912.x compOnlySlave 402317 1251

968 HEIDENHAIN Technical Manual TNC 640


4.12.4 Spindle control (1st spindle)

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of spindle parameter set]
CfgAxisHardware
MP3130 signCorrNominalVal 400002 1080
MP3140 signCorrActualVal 400001 1080
MP3142 posEncoderIncr 400006 1065
Axes
ParameterSets
[Key name of spindle parameter set]
CfgFeedLimits
MP3240.1 minFeed 400301 1316
1593
Axes
ParameterSets
[Key name of spindle parameter set]
CfgSpindle
MP3350 relSpeedTolerance 401513 1595
MP3351 absSpeedTolerance 401514 1595
Axes
ParameterSets
[Key name of spindle parameter set]
CfgFeedLimits
MP3411.x maxAcceleration 400305 1317
Axes
ParameterSets
[Key name of spindle parameter set]
CfgControllerTol
MP3420 posTolerance 401101 1515
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP3430 refPosition 400403 1284
Axes
ParameterSets
[Key name of spindle parameter set]
CfgPosControl
MP3440.x kvFactor 400801 1331
Axes
ParameterSets
[Key name of spindle parameter set]
CfgFeedLimits
MP3510.7 nominalSpeed 400308 2405
MP3515.x maxFeed 400302 1316
MP3520.1 M19MaxSpeed 400307 1570

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 969
iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of spindle parameter set]
CfgSpindle
MP3530, MP13530 incrPowForRoughing 401516 1597
Axes
ParameterSets
[Key name of spindle parameter set]
CfgSpeedControl
MP3540 vCtrlSpinSpeedTol 400930 1596
MP3542 vCtrlSpinMinSpeed 400931 1596
MP3550 delayEmStopSpin 400933 1596

970 HEIDENHAIN Technical Manual TNC 640


4.12.5 Integrated PLC

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
PLC
CfgPlcPeriphery
MP4020 pt100Discrete 103404 –
MP4030.0 plNumber 103401 –
System
DisplaySettings
CfgShutDown
MP4040 shutdownOnConfig 101601 2075
MP4040 shutdownOnError 101602 2075
MP4040 shutdownOnUser 101603 2076
MP4040 shutdownOnOem 101604 2076
MP4041 powerOffPort 101606 2078
MP4042 powerOffDelay 101607 2078
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
MP4050.x lubricationDist 400503 1131
System
PLC
CfgPlcPeriphery
MP4070 tempCompensation 103405 1180
System
PLC
CfgPlcTimer
[Key name of the timers]
MP4110.x, MP4120.x value 103502 2353
System
PLC
CfgPlcFastInput
MP4130.x number 103701 2357
MP4131.x significance 103702 2358

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 971
4.12.6 Serial interface

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
Network
Serial
CfgSerialInterface
[Key name of the
MP5020.3, bit 0 c 106703 2735
MP5020.3, bit 1 o 106708 2739
MP5020.3, bit 2 + bit 3 n 106706 2738
MP5020.3, bit 4 + bit 5 f 106704 2735
MP5020.3, bit 6 + bit 7 i 106705 2736
MP5020.3, bit 8 g 106709 2740
MP5030.1 u 106702 2734
MP5040.0 r 106701 2734
a
t
i
o
n
]
dataBits
bccAvoiCtrlChar
flowControl
parity
stopBits
rtsLow
protocol
baudRate

4.12.7 Touch probe

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
ProbeSettings
CfgTS
[Key name of spindle]
MP6160 mStrobeUTurn 122501 2281
MP6161 mStrobePos 122502 2281

972 HEIDENHAIN Technical Manual TNC 640


4.12.8 Tool touch probe for tool measurement

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
ProbeSettings
CfgTT
[Key name of the TT]
MP6500, bit 0 stylusType 122703 2286
MP6500, bit 4 spindleSpeedCalc 122711 2292
MP6500, bit 5 stopOnCheck 122717 2295
MP6500, bit 6 stopOnMeasurement 122718 2295
MP6500, bit 8 probingRoutine 122705 2290
MP6500, bit 11 adaptToolTable 122719 2295
MP6505.x probingDirRadial 122706 2287
MP6507 probingFeedCalc 122710 2293
MP6510.0 measureTolerance1 122715 2294
MP6510.1 measureTolerance2 122716 2294
MP6520 probingFeed 122709 2293
MP6530.x offsetToolAxis 122707 2287
CfgTTRoundStylus
MP6531.x stylusDimension 114202 2289
MP6540.0 safetyDistToolAx 114203 2288
MP6540.1 safetyDistStylus 114204 2288
CfgTT
MP6550 [Key name of the TT] 122708 2288
MP6560 rapidFeed 122704 2287
MP6570 spindleOrientMode 122712 –
MP6572 maxPeriphSpeedMeas 122714 2293
maxSpeed
MP6580.x, MP6581.x, CfgTTRoundStylus 114201 2290
MP6582.x centerPos

4.12.9 KinematicsOpt

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
Channels
ChannelSettings
[Key name of the channel]
CfgKinematicsOpt
MP6600 maxModification 204801 1228
MP6601 maxDevCalBall 204802 1228
MP6602 mStrobeRotAxPos 204803 1228

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 973
4.12.10 Tapping

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
Channels
ChannelSettings
[Key name of the channel]
CfgThreadSpindle
MP7120.0 thrdWaitingTime 113601 1614
MP7120.1 thrdPreSwitchTime 113602 1614
MP7160, bit 1 limitSpindleSpeed 113604 1612

4.12.11 Display and programming

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
CfgMachineSimul
MP7210 simMode 100201 1891
System
EditorSettings
CfgEditorSettings
MP7220 blockIncrement 105409
System
EditorSettings
CfgEditorSettings
MP7229.x maxLineGeoSearch 105408 1878
System
DisplaySettings
CfgDisplayLanguage
MP7230.0 ncLanguage 101301 1869
MP7230.1 plcDialogLanguage 101302 1869
MP7230.2 plcErrorLanguage 101303 1870
MP7230.3 helpLanguage 101304 1870
System
CfgPlcOperTimes
MP7237.0 displayPlcTimes 105001 2184
MP7237.1 resetPlcTimes 105002 2184
MP7237.2 resetNcTimes 105003 2184
MP7238.x textNumber 105004 2184
System
EditorSettings
CfgEditorSettings
MP7246, bit 1 warningAtDel 105407 1878
MP7246, bit 0 enableStraightCut 105411

974 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
ToolSettings
CfgToolUsage
MP7246, bit 2 createUsageFile 118701 2227
System
CfgAfc
MP7246, bit 3 enable 120001 1455
System
DisplaySettings
CfgDisplayData
MP7270 axisFeedDisplay 100806 1038
MP7280 decimalCharacter 100805 1038
System
EditorSettings
CfgEditorSettings
MP7281.x lineBreak 105404 1876
System
DisplaySettings
CfgPosDisplayPace
MP7290.x displayPace 101001 1039
MP7290.x displayPaceInch 101002 1039
System
CfgKeyboard
MP7296 presetWithAxisKey 101806 1976
System
DisplaySettings
CfgStatusAndQPar
MP7300 clearMode 100901 1862
System
DisplaySettings
CfgOsciColor
MP7365.0 background 101401 1791
MP7365.1 grid 101410 1793
MP7365.2 cursorText 101411 1793
MP7365.3 select 101409 1793
MP7365.4 channel1 101402 1792
MP7365.5 channel2 101403 1792
MP7365.6 channel3 101404 1792
MP7365.7 channel4 101405 1792
MP7365.8 channel5 101406 1792
MP7365.9 channel6 101407 1793

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 975
4.12.12 Machining and program run

iTNC 530 TNC 640 TNC 640 Page


Machine parameter Machine parameter: MP number
Name and position in the tree structure
Channels
ChannelSettings
[Key name of the channel]
CfgGeoCycle
MP7420, bit 4 posAfterContPocket 201007 1980
MP7430 pocketOverlap 201001 1980
CfgGeoTolerance
MP7431 circleDeviation 200901 1904
CfgGeoCycle
MP7441, bit 0 displaySpindleErr 201002 1981
MP7441, bit 2 displayDepthErr 201003 1981
MP7442 mStrobeOrient 201005 1982
Channels
ChannelSettings
[Key name of the channel]
CfgTCPM
MP7471 maxCompFeed 201303 1905
System
ToolSettings
CfgToolUsage
MP7483 allowToolDefCall 118705 2212
MP7484 magazineSeekList 118707 2213
MP7485 usageFactor 118704 2228
Channels
ChannelSettings
[Key name of the channel]
CfgRotWorkPlane
MP7500, bit 0 rotateWorkPlane 201201 1234
MP7500, bit 1 planeOrientation 201202 1235
MP7500, bit 2 autoMoveAxes 201204 1235
Channels
ChannelSettings
[Key name of the channel]
CfgPresetSettings
MP7500, bit 5 chkTiltingAxes 204601 1978
Channels
ChannelSettings
[Key name of the channel]
CfgRotWorkPlane
MP7500, bit 6 rotPreference 201206 1236

976 HEIDENHAIN Technical Manual TNC 640


4.12.13 Hardware

iTNC 530 TNC 640 TNC 640


Machine parameter Machine parameter: MP number
Name and position in the tree structure
System
CfgCycleTimes
MP7600.0 ipoCycle 100301 1327
MP7600.2, MP7602 plcCount 100302 2299
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP7610 ctrlPerformance 400018 1658
System
CfgHandwheel
MP7640 type 100601 2134
MP7641, bit 2 plcPlusMinus 100612 2156
MP7641, bit 3 plcStartStop 100613 2156
Channels
ChannelSettings
[Key name of the channel]
CfgRotWorkPlane
MP7641, bit 4 enableVTaxis 201208 –
System
CfgHandwheel
MP7641, bit 5 plcInputs 100611 2155,
2152
MP7641, bit 7 plcTeachIn 100614 2157
MP7641, bit 8 plcCtrlKey 100615 2157
MP7641, bit 9 lockPlcSoftkeys 100616 2157
MP7650 countDir 100605 2143
MP7660 sensitivity 100606 2136
MP7670.1, MP7670.2, speedFactor 100607 2136
MP7670.3
Channels
ChannelSettings
[Key name of the channel]
CfgTCPM
MP7680, bit 6 toolRefPoint 201302 1905
CfgGeoCycle
MP7680, bit 12 apprDepCylWall 201004 1980
Axes
PhysicalAxis
CfgRollOver
MP7682 shortestDistance 300401 1024
System
CfgAutoStart
MP7683 autoStartEnabled 100701 1909
System
CfgHardware
MP7690 plugAndPlay 100109 1669

January 2015 4.12 Overview: iTNC 530 MP numbers <–> TNC 640 MP numbers 977
iTNC 530 TNC 640 TNC 640
Machine parameter Machine parameter: MP number
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
MP7690, bit 0 plugAndPlay 401212 1669
CfgServoMotor
MP7690, bit 1 plugAndPlay 401330 1669
System
CfgSupplyModule
MP7690, bit2 plugAndPlay 117200 1669

978 HEIDENHAIN Technical Manual TNC 640


5 Modules and PLC operands

5.1 Overview of modules

Module Function SW version Page


9000/ Copy in the marker or word range 597110-01 2672
9001
9006 Set and start PLC timer 597110-01 2355
9010/ Read in the word range 597110-01 2673
9011/
9012
9019 Size of the processing stack 597110-01 2587
9020/ Write in the word range 597110-01 2674
9021/
9022
9025 Write as BCD code 597110-01 –
9030 Read machine parameter for Hirth coupling 597110-01 –
9034 Load a machine parameter subfile 597110-01 638

January 2015 5.1 Overview of modules 979


Module Function SW version Page
9035 Read NC status information 597110-01 1863,
2149,
 Function 0: Editor main operating mode
2181,
 Function 2: Editor mode in background 1098
 Function 5: Selected file in Editor or Test Run mode
 Function 7: Selected axis in Editor mode (for actual-
position capture)
 Function 8: Selected axis in Machine mode (for actual-
position capture)
 Function 9: Handwheel axis
 Function 10: Handwheel axes bit-encoded
 Functions 11 to 15:
Handwheel subdivision factor
 Function 19: Active line in the CMA file
 Function 20: Global handwheel feed rates
 Function 21: Control model
 Function 22: Tool center point management (M128,
TCPM) active
 Function 23: Handwheel superimposition (M118) active
 Function 26: Read jog increment
 Functions 31 to 39: Handwheel subdivision factor
 Function 50: Look-ahead of tool-change sequence
number
 Function 51: Look-ahead of pocket number for reserve
 Function 52: Look-ahead of magazine number for reserve
 Function 53: Look-ahead of pocket number for insertion
 Function 54: Look-ahead of magazine number for
insertion
 Function 55: Look-ahead of tool number T1 strobe
 Function 56: Look-ahead of tool number T0 strobe
 Function 100: Number of the tool axis
 Function 110: Simulation ID
 Function 500: Interpolator cycle time
 Function 501: PLC cycle time
 Function 502: Current utilization
 Function 503: Maximum utilization
 Function 1001: Active line of the pallet
 Function 1002: Status of pallet machining

980 HEIDENHAIN Technical Manual TNC 640


Module Function SW version Page
9036 Write NC status information 597110-01 2147,
2180
 Functions 0 to 5: Handwheel subdivision
 Function 6: Select handwheel axis
 Function 7: Set handwheel transmission ratio
 Function 10: Limit value for jog increment
 Functions 11 to 19: Handwheel subdivision
 Function 8: Specify handwheel speed as fraction of the 597110-08
max. value (in 0.01 %)
 Function 22: Enable handwheel operation for operating
mode group 0..
 Function 23: Disable handwheel operation for operating
mode group 0..
 Function 24: Handwheel mode depends on the machine
mode for operating mode group 0..
 Function 25: Disable configured encoder handwheel of
axis 0..
 Function 26: Re-enable configured encoder handwheel of
axis 0..
9037 Read the safety-oriented status 597110-01 –
9038 Read the status information of axes 597110-01 1093
 Status information 0 to 5 and 7 to 9
 Status information 10 597110-08
 Status information 6 Reserved
9040 Read the axis coordinates (format 0.001) 597110-02 1096
9041 Read the axis coordinates (format 0.0001) 597110-01 1097
9045 Read the data from 3-D ROT 597110-04 1238
9046 Configuration of CC data channels 597110-06 1354
9047 Initialization of CC algorithms 597110-06 1475
9048 Interrogate the operating states of axes 597110-05 1110
9049 Read position value and speed value of an axis 597110-03 1095
9050 Conversion from binary –> decimal 597110-01 2675
9051 Conversion from binary –> decimal (format) 597110-01 2676
9052 Convert decimal string to decimal number with an exponent 597110-01 2677
9053 Conversion binary –> ASCII/hexadecimal 597110-01 2677
9054 Conversion ASCII/hexadecimal –> binary 597110-01 2678
9060 M function status 597110-01 2392
9061 Status of non-modal M functions 597110-01 2393
9063 Activate/deactivate collision monitoring 597110-06 2122
9064 Status information about collision monitoring 597110-06 2123
9065 Status of the commissioning function 597110-05 1682
9066 Status of HEIDENHAIN hardware 597110-04 1535
9067 Status of HEIDENHAIN software 597110-04 1536
9070 Copy a number from a string 597110-01 2649
9071 Find the string length 597110-01 2650
9072 Copy a byte block into a string 597110-01 2650

January 2015 5.1 Overview of modules 981


Module Function SW version Page
9073 Copy a string into a byte block 597110-01 2651
9074 Load texts from error/dialog files into a PLC string 597110-09 2651
9075 Write to symbolic PLC operand 597110-09 2343
9076 Read symbolic PLC operand 597110-09 2344
9080 Clear the small PLC window 597110-01 2052
9082 Display a string in the small PLC window 597110-01 2053
9083 Display a moving-bar diagram in the small PLC window 597110-01 2055
9084 Display PLC error messages with additional data 597110-01 1946
9085 Display PLC error message 597110-01 1947
9086 Clear PLC error message 597110-01 1948
9087 Status of PLC error message 597110-01 1949
9088 Display the M functions in the status display 597110-01 2393
9090 Select a line in the pallet table 597110-01 2128
9091 Find the line number of a tool in the tool table 597110-01 2214
9092 Search for an entry in the tables selected for execution (.T/ 597110-01 2195
.D/.TCH)
9093 Read data from tables selected for program run (.T/.D/.TCH) 597110-01 2197
9094 Write data into a tool and datum table 597110-01 2202
9095 Activate axis-error compensation 597110-01 1178
9096 Delete a line from the tool table 597110-01 2203
9097 Activate kinematics configuration 597110-04 1211
9098 Find active kinematics configuration 597110-04 1212
9100 Assign data interface 597110-01 2754
9101 Release data interface 597110-01 2755
9102 Status of data interface 597110-01 2755
9103 Transmit string through data interface 597110-01 2756
9104 Receive string through data interface 597110-01 2757
9105 Transmit binary data through data interface 597110-01 2758
9106 Receive binary data through data interface 597110-01 2759
9107 Binary data from receive buffer 597110-01 2760
9110 Transmit a message via LSV2 597110-01
9111 Receive a message via LSV2 597110-01 2761
9112 Transmit ASCII characters via data interface 597110-01 2762
9113 Receive ASCII characters via data interface 597110-01 2763
9117 Reset a BIS C-6002 BALLUFF identification system 597110-04 –
9118 Read and convert data from a BIS C-6002 BALLUFF 597110-04 –
identification system
9119 BIS C-6002 BALLUFF processor unit: Write tool data to a 597110-04 –
data carrier
9120 Position PLC axis 597110-01 1132
9121 Stop PLC axis 597110-01 1134
9122 Status of PLC axis 597110-01 1135
9123 Traverse the reference marks of PLC axes 597110-01 1136

982 HEIDENHAIN Technical Manual TNC 640


Module Function SW version Page
9124 Feed rate override for PLC axis 597110-01 1138
9125 Stop PLC axis at next Hirth grid position 597110-01 1163
9126 Configure axis coupling 597110-04 1252
9127 Request status of an axis coupling 597110-04 1253
9128 Torque limiting by the PLC (in mA or %) 597110-04 1391
9129 Status of torque limiting by the PLC 597110-04 1392
9132 Assignment of operating panels (selection of override 597110-06 273
potentiometer)
9133 Download the internal ADCs 597110-01 1518
9142 Position preset for programmed axis 597110-04 1020
9143 Activate motor brake test 597110-05 1547
9144 Configuration of the emergency stop test 597110-04 1560
9145 Actual-to-nominal value transfer 597110-01 1340
9146 Save and reestablish actual position values 597110-04 1618
9147 Set a reference value 597110-02 1269
9149 Read or set the commutation angle of an axis 597110-05 1687
9155 Switch axes from closed-loop to open-loop condition 597110-04 1108
9156 Switch axes from open-loop to closed-loop condition 597110-04 1109
9157 Transfer the status of the drive controller 597110-01 1376
9158 Torque limiting by the PLC (in mA) 597110-04 1393
9159 200 ms early warning for standstill of the drives 597110-01 1376
9160 Interrogate the status of temperature and I2t monitoring 597110-01 1527
9161 Enable the drive controller (current controller) 597110-01 1377
9162 Interrogate the status of the drive controllers (speed 597110-01 1377
controllers)
9163 Switch between wye/delta 597110-01 1601
9164 Read the actual speed value of a motor 597110-01 1343
9165 Sample the current motor temperature 597110-01 1519
9166 Read momentary utilization of drive motor 597110-01 1534
9167 Monitoring of DC-link voltage 597110-01 1706
9168 Read the commissioning status 597110-05 1711
9171 Spindle orientation (when using the symbolic API, use 597110-01 1590
Module 9414)
9173 Activate speed-dependent monitoring of the wye/delta 597110-01 1421
switchover
9174 Read momentary spindle status in reference to the wye/ 597110-01 1422
delta switchover
9180 Keystroke simulation 597110-01 2082
9181 Disable NC key by PLC 597110-01 2082
9182 Re-enable NC key by PLC 597110-01 2083
9183 Disable NC key groups by PLC 597110-01 2083
9184 Re-enable locked NC key groups by PLC 597110-01 2084
9186 Call a soft-key function 597110-01 2085
9187 Status request of a soft-key call 597110-01 2086

January 2015 5.1 Overview of modules 983


Module Function SW version Page
9189 Shut down the control 597110-01 2079
9190 Start the PLC operating hours counter 597110-01 2185
9191 Stop the PLC operating hours counter 597110-01 2185
9192 Transfer the operating hours counter 597110-01 2186
9193 Set the operating hours counter 597110-01 2186
9194 Alarm when operating time exceeded 597110-01 2187
9196 Find the PLC cycle time 597110-01 2299
9197 Start cyclic timers 597110-01 2356
9203 Activate PLC soft-key menu 597110-02 2061
9204 Refresh the soft-key menu 597110-02 2063
9208 Interrogate the status information of PLC soft keys 597110-02 2063
9216 Pop-up window with tool selection list 597110-05 2217
9217 Display pop-up window for messages 597110-05 1956
9220 Traverse the reference mark 597110-01 1271
9221 Start a PLC positioning movement 597110-01 1140
9222 Status request of a PLC positioning movement 597110-01 1142
9223 Free rotation (not for NC axes during program run) 597110-01 1859
9224 Stop PLC positioning movements 597110-01 1143
9226 Set the status for an axis 597110-03 1106
9227 Position auxiliary axes and NC axes 597110-04 1144
9228 Coupling function of auxiliary axes 597110-08 1156
9229 Status of coupling function of auxiliary axes 597110-08 1158
9231 Compensation of thermal expansion 597110-01 1181
9240 Open a file 597110-01 2466
9241 Close a file 597110-01 2467
9242 Position in a file 597110-01 2468
9243 Read from a file line by line 597110-01 2469
9244 Write to a file line by line 597110-01 2470
9245 Read a field from a table 597110-01 2471
9246 Write to a field in a table 597110-01 2472
9247 Search for a condition in a table 597110-01 2473
9248 Copy, rename or delete a file 597110-01 –
9249 Transfer BS variable "errno" 597110-01 2474
9250 Start the table editor by PLC 597110-05 2478
9251 Stop the table editor by PLC 597110-05 2480
9252 Position the cursor in the table editor 597110-05 2481
9255 Read a field from a table 597110-01 2475
9256 Write to a field in a table 597110-01 2476
9260 Receive events and wait for events 597110-01 2658
9261 Send events 597110-01 2660
9262 Context change between spawn processes 597110-01 2661
9263 Interrupt a spawn process for a defined time 597110-01 2661

984 HEIDENHAIN Technical Manual TNC 640


Module Function SW version Page
9264 Wait for a condition 597110-01 2662
9270 Read an entry from the CfgOemString configuration object 597110-02 2556
9271 Write an entry to the CfgOemString configuration object 597110-02 2557
9275 Write ASCII data into the log 597110-01 1952
9276 Write operand contents into the log 597110-01 1953
9277 Write data into the OEM log 597110-01 1934
9279 Shutdown by PLC 597110-01 2080
9280 Start the NC macro (Run pallet entry) 597110-04 2131
9281 Select a line in the pallet table 597110-01 2129
9282 Run a tool usage test for a pallet table 597110-05 2228
9283 Generate a tool usage file 597110-09 2231
9285 Set OEM access rights 597110-04 1896
9286 Select the VNC participant and control the focus 597110-06 2704
assignment if there are several operator terminals
9287 General status requests regarding VNC clients 597110-06 2705
9288 Status requests regarding an individual VNC client 597110-06 2708
9290 Select the NC main program 597110-03 1911
9291 Start an NC macro 597110-02 2567
9300 Lock and release the pocket table 597110-02 2204
2223
9301 Determine line number in pocket table 597110-02 2224
9302 Search for a vacant pocket in the tool magazine 597110-02 2225
9304 Copy OEM values from the pocket table 597110-02 2205
9305 Move tools in the pocket table 597110-02 2206
9306 Move tools between magazines 597110-02 2207
9311 Friction compensation 597110-05 1185
9320 Status of the NC program end 597110-02 –
9321 Find the current block number 597110-01 1915
9322 Query information of the NC program 597110-02 1915
9330 Read the status of an OEM application 597110-01 –
9331 Send data to the OEM application 597110-01 –
9332 Receive data from the OEM application 597110-01 –
9340 Search for a pocket depending on magazine rules 597110-02 2220
9341 Clear, reserve and assign magazine pockets 597110-02 2221
9342 Find magazine and pocket numbers 597110-02 2222
9343 Compile and activate magazine rules 597110-02 2223
9350 Read data from the tool table 597110-04 2199
9351 Write data to tool table 597110-04 2201
9355 Interrogate tool life 597110-05 2211
9360 Monitor the temperature of the power modules 597110-01 1521
9363 Activate brake test for an axis by selecting the axis brake(s) 597110-08 1549
9367 I2t monitoring 597110-01 1528

January 2015 5.1 Overview of modules 985


Module Function SW version Page
9370 Register a data structure for data exchange between the 597110-04 –
PLC and client
9371 Register a data structure for data exchange with the PLC 597110-04 –
9372 Structure status request (9370) for data exchange 597110-04 –
9373 Transfer data structure described by the clients to the PLC 597110-04 –
data (read)
9374 Transfer data structure from the PLC data to the client 597110-04 –
(write)
9382 Profibus: Read data from a DPV1 data block of analog 597110-01 –
SIEMENS AS-i slaves (to Module 9385)
9383 Profibus: Set data for a DPV1 data block of analog SIEMENS 597110-01 –
AS-i slaves (from Module 9386)
9385 Profibus: Read DPV1 data 597110-01 –
9386 Profibus: Send DPV1 data 597110-01 –
9390 Open the online help window with the control's browser 597110-04 1957
9391 Display an error message with additional offset 597110-04 1957
9392 Display an error message with additional offset and further 597110-04 –
parameters
9393 Read PLC column from PET table 597110-09 1950
9403 Set a Q parameter (channel-specific) 597110-01 2520
9404 Beginning of a movement within an active strobe (channel- 597110-01 1920
specific)
9405 Conversion of symbolic operands 597110-01 2345
9406 Read symbolic operands 597110-01 –
9407 Give default tool number for an NC channel 597110-02 –
9409 Set status information of an operating mode group 597110-03 1898
9410 Read spindle status 597110-01 1586
9411 Read spindle position / speed 597110-01 1099
9412 Stop the spindle 597110-01 1587
9413 Move the spindle 597110-01 1588
9414 Position the spindle 597110-01 1598
9415 Synchronize spindles 597110-09 1607
9416 Select gear range and assigned settings for spindle 597110-02 2403
9417 Set default shaft speed for spindle 597110-02 1589
9418 Set status for spindle 597110-02 1107
9419 Specify status for spindle (parameters can be specified in 597110-08 1622
addition to status)
9420 Measure PLC axes 597110-01 2273
9421 Interrogate the probing position 597110-01 2274
9422 Request information about current probing cycle 597110-03 2275
9425 Select a pallet file or an NC program as main program for an 597110-04 1899
operating-mode group
9427 Execute NC program as cycle (macro) 597110-04 2565
9429 Interrogate the status of the executed NC program 597110-04 1917

986 HEIDENHAIN Technical Manual TNC 640


Module Function SW version Page
9430 Temporarily change the numeric value of a machine 597110-01 648
parameter
9431 Read the numeric value of a machine parameter 597110-01 650
9432 Temporarily change the string value of a machine parameter 597110-01 651
9433 Read the string value of a machine parameter 597110-01 652
9434 Select parameter set 597110-01 665
9435 Determine the active parameter set 597110-01 666
9436 Change the numeric value of a machine parameter 597110-05 653
persistently
9438 Change the string value of a machine parameter 597110-05 654
persistently
9440 SQL: Open a transaction 597110-01 2497
9441 SQL: Save changes and end the transaction 597110-01 2498
9442 SQL: Find a record in the result set 597110-01 2499
9443 SQL: Get a record from the result set 597110-01 2500
9444 SQL: Change a record in the result set 597110-01 2501
9445 SQL: Read a single value in a table 597110-01 2502
9447 SQL: Delete record from result set 597110-01 2503
9448 SQL: Load column description 597110-01 2504
9449 SQL: Extract a value from a comma-separated list 597110-01 2505
9450 Execute SQL command 597110-01 2506
9451 SQL: Reject changes and end transaction 597110-01 2507
9452 SQL: Find next record in the result set of a query 597110-01 2508
9453 SQL: Pull binary data from the query result 597110-01 2509
9454 SQL: Update binary data in the result set of a query 597110-01 2510
9455 SQL: Read a single numeric value in a table 597110-01 2511
9458 SQL: Unload column description 597110-01 2512
9459 SQL: Change or insert a value in a list separated by comma 597110-01 2513
9470 Status request of special operating modes and special 597110-05 1683
functions of an axis
9490 Select TT tool touch probe 597110-06 2285
9491 Assign input for TS touch probe 597110-06 2278
9492 Switch the touch probe on/off 597110-06 2268
9493 Read status information of TS/TT probes 597110-06 2269

January 2015 5.1 Overview of modules 987


5.2 Overview of the PLC operands

5.2.1 Groups of PLC operands

Group Type of structure Structure definitions


General data (page 988) ApiGen PlcApiGeneral
Operating modes (page 990) ApiOmg PlcApiOmg[OMG_COUNT]
Machining channels (page 991) ApiChn PlcApiChannel[CHANNEL_COUNT]
Axes (page 994) ApiAxis PlcApiAxis[AXIS_COUNT]
Spindles (page 996) ApiSpin PlcApiSpindle[SPINDLE_COUNT]

5.2.2 PLC operands of the General Data group

Operand Description SW Page


version
General – Control configuration
D NN_GenOmgCount Number of configured operating mode 597110-01 –
groups
D NN_GenChnCount Number of configured machining channels 597110-01 1000
D NN_GenAxCount Number of configured logical axes 597110-01 1001
(including spindles)
D NN_GenSpiCount Number of configured spindles 597110-01 1566
General – Control status
D NN_GenOmgManual Selected operating mode group for manual 597110-01 1893
control
D NN_GenChnManual Selected machining channel for manual 597110-01 1922
control
D NN_GenSpiManual Selected spindle for manual control 597110-01 1922
M NN_GenCycleAfterPowerOn 1st PLC scan after switch-on 597110-01 2068
(M4172)
M NN_GenCycleAfterPlcStop 1st PLC scan after PLC interruption 597110-01 2068
(M4173)
M NN_GenCycleAfterReConfig 1st PLC scan after modification of 597110-01 2068
configuration data
(M4174)
M NN_GenNcInitialized Control is being initialized (after start-up 597110-01 2068
cycles)
(M4184)
M NN_GenNcEmergencyStop Control in external emergency stop state 597110-01 1553
(M4178)
M NN_GenCtrlVoltageOnRequest Request for machine control voltage ON 597110-06 –
(M4192)
M NP_GenShutdownRequest Soft key for control shutdown was pressed 597110-06 –
(M4195)

988 HEIDENHAIN Technical Manual TNC 640


Operand Description SW Page
version
M NP_GenShutdownActive Control is being shut down 597110-06 –
(M4179)
General – Error handling
M NN_GenApiModuleError An error occurred while using an API 597110-01 –
module
(M4203)
D NN_GenApiModuleError Code of the error that appeared while using 597110-01 –
Code an API module
(W1022)
D NN_GenApiModuleNumber Number of the last called module that 597110-08 –
reported an error
M PP_GenReactApiModuleError Perform the configured reaction to errors in 597110-01 –
an API module: The reaction defined in
CfgPlcOptions apiErrorReaction is only
performed if this marker is set
General – Key information
D NP_GenKeyCode Code of the depressed key 597110-01 2081
(W274)
D NP_GenModCode Code of the code number last entered 597110-01 1887
(D276)
M PP_GenHandwheelLocked Disable handwheel motion 597110-01 2139
(M4576)
General – Touch probe
M NN_GenTchProbeReady Touch probe: Ready (hardware signal) 597110-01 2276
(M4050)
M NN_GenTchProbeDeflected Touch probe: Stylus deflected (hardware 597110-01 2276
signal)
(M4052)
M NN_GenTchProbeBatteryLow Touch probe: Weak battery (hardware 597110-01 2276
signal)
(M4054)
M NN_GenTchProbeX13 Touch probe: X13 active (if 0, then X12 597110-01 –
active)
(M4060)
M NN_GenTchProbeTT Touch probe: X13 active (if 0, then X12 597110-06 –
active)
(M4060)
M NN_GenTchProbeMonitoring Touch probe monitoring active 597110-06 –
General – Safety self-test / Emergency stop test
M NN_GenSafetySelftest Control performs a self-test 597110-01 1556
(M4282)
General – Table editor
M NN_GenTableEditEnd PLC editor: END key or soft key pressed 597110-01 2477
(M4159)

January 2015 5.2 Overview of the PLC operands 989


5.2.3 PLC operands of the Operating Mode Group group

Operand Description SW Page


version
OMG – Configuration
D NN_OmgChnCount Number of machining channels of this 597110-01 –
operating mode group
D NN_OmgChn Array of machining channels for this 597110-01 –
operating mode group
OMG – Operating modes
M NN_OmgManual Manual Operation operating mode 597110-01 1893
(M4150)
M NN_OmgHandwheel Electronic Handwheel operating mode 597110-01 1893
(M4151)
M NN_OmgMdi Positioning with Manual Data Input 597110-01 1893
operating mode
(M4152)
M NN_OmgProgramSingle Program Run, Single Block operating mode 597110-01 1893
(M4153)
M NN_OmgProgramRun Program Run, Full Sequence operating 597110-01 1893
mode
(M4154)
M NN_OmgReference Reference operating mode 597110-01 1893
(M4155)
M NN_OmgJogIncrement Incremental Jog operating mode 597110-01 1893
(M4579)
D NN_OmgAuxiliaryMode Product-specific code for special modes and 597110-01 1893
submodes
M PP_OmgHandwheelNot Reserved for advanced handwheel functions 597110-04 –
Allowed (disable activation of the HR 420 and
HR 5xx handwheels for this operating mode
group)
M NN_OmgHandwheelControl Reserved for expanded handwheel 597110-04 –
functions (operation of HR 420 and HR 5xx
handwheels for this operating mode group)
OMG – Program run
M PP_OmgNcStart NC start for all machining channels of this 597110-01 1897
operating mode group
M PP_OmgNCStop NC stop for all machining channels of this 597110-01 1897
operating mode group

990 HEIDENHAIN Technical Manual TNC 640


5.2.4 PLC operands of the Machining Channels group

Operand Description SW Page


version
Channel – Configuration
D NN_ChnAxisCount Number of axes of this machining channel 597110-01 1004
D NN_ChnAxis Array D[8] of the axes of this machining 597110-01 1004
channel
D NN_ChnSpindleCount Number of spindles of this machining 597110-08 1004
channel
D NN_ChnSpindle Array D[1] of spindles of this machining 597110-08 1004
channel
Channel – Error handling
M NN_ChnErrorWarning Error or warning occurred 597110-01 1921
M NN_ChnErrorFStop Feed stopped because of an error 597110-01 1921
(M4220)
M NN_ChnErrorNCStop NC stop because of an error 597110-01 1921
(M4221)
M NN_ChnErrorCancel Program canceled because of an error 597110-01 1921
(M4223)
M NN_ChnErrorEmergency Emergency stop because of an error 597110-01 1921
Stop
(M4222)
M NN_ChnErrorReset Reset because of an error 597110-01 1921
M NN_ChnErrorReact NC stop at block end triggered by an error 597110-09 1921
M NN_ChnErrorLiftOff NC stop, lift-off and emergency stop after a 597110-09 1921
standstill triggered by an error
Channel – Program run
M PP_ChnNcStart NC start or cycle on 597110-01 1906
(M4564)
M PP_ChnNCStop NC stop or cycle off 597110-01 1912
(M4560)
M NN_ChnNcStartExtern External request for an NC start 597110-01 1906
Request
M NN_ChnNcStopExtern NC stop or cycle off 597110-01 1913
M NN_ChnControlInOperation Control is in operation 597110-01 1919
(M4176)
M NN_ChnProgStoppedAsync Asynchronous NC program interruption 597110-01 1913
M NN_ChnProgStopped NC program interruption 597110-01 1913
M NN_ChnProgCancel NC program cancelation 597110-01 1914
M NN_ChnProgEnd End of NC program reached 597110-01 1912
D NN_ChnMachiningMode Active technology of the machine: 597110-05 –
0: Operating mode permanently or
temporarily undefined, 1: Milling, 2: Turning

January 2015 5.2 Overview of the PLC operands 991


Operand Description SW Page
version
M NN_ChnAutostart Autostart function: Request for program 597110-01 1910
start
(M4182)
M NN_ChnAutostartTime Autostart function – request for program 597110-01 1910
Expired start
M PN_ChnAutostartEnable Enable the autostart function 597110-01 1910
(M4586)
M NP_ChnProgSelected NC program selected 597110-04 1880
(M4181)
M NN_ChnBlockScan Mid-program startup (or block scan) active 597110-01 1914
(M4158)
M NN_ChnBlockScanStrobe Restore status at block scan (M/S/T/Q 597110-01 1914
Transfer transfer)
(M4161)
M NN_ChnProgManTraverse Manual traverse of the axes active (for 597110-01 1913
lathes: inspection operation)
(M4156)
M NN_ChnProgReturnContour Return to contour active (after manual 597110-01 1913
traverse or block scan)
(M4157)
Channel – touch probe
M NN_ChnTchProbeCycle Touch probe: Touch probe cycle active 597110-01 2276
(M4053) (FN17: ID990 NR2)
M PP_ChnTchProbeMonitor Touch probe: Enable the probing process; 597110-01 2276
NC stop in all operating modes if stylus is
(M4056)
deflected
M PP_ChnTchProbeMonitorOff Disable touch probe monitoring temporarily 597110-06 2276
Channel – Feed rate
D NN_ChnProgFeedMinute Programmed feed rate per minute [mm/min] 597110-01 1335
(D360)
D NN_ChnProgFeedRevolution Programmed feed rate per revolution [mm/ 597110-01 1335
rev]
D NN_ChnProgFeedThread Programmed feed rate per thread [mm/rev] 597110-01 1335
M NN_ChnFeedMinuteActive Feed rate per minute active 597110-01 1335
M NN_ChnFeedRevolution Feed per revolution is active 597110-01 1335
Active
M NN_ChnFeedThreadActive Feed rate per thread active 597110-01 1335
M NN_ChnFeedRapidTraverse Rapid traverse active (FMAX) 597110-04 1335
Active
(M4180)
D NN_ChnContourFeed Current contouring feed rate [mm/min] 597110-01 1335
(D388)
D PP_ChnContourFeedMax Max. feed rate from PLC [mm/min] 597110-01 1335
(D596)

992 HEIDENHAIN Technical Manual TNC 640


Operand Description SW Page
version
D NN_ChnFeedOverrideInput Feed-rate override set [%] 597110-01 2176
(W494)
D PP_ChnFeedOverride Feed-rate override entered by the PLC [%] 597110-01 2176
(W766)
D NN_ChnRapidFeedOverride Rapid traverse override set [%] 597110-01 2177
Input
(W496)
D PP_ChnRapidFeedOverride Rapid traverse override entered by the PLC 597110-01 2177
[%]
(W752)
D PP_ChnConfigOverride Configurable override (e.g. rapid traverse) 597110-01 –
M PP_ChnFeedEnable Feed-rate enable for all axes 597110-01 1341
M PP_ChnWorkFeedEnable Enabling of machining feed rate: if this 597110-01 1341
marker is not set, only rapid-traverse
movements are permitted.
Channel – Status
M NN_ChnToolLifeExpired Tool life 1 expired 597110-01 2210
(M4543)
M PP_ChnRapidTraverseKey Rapid-traverse key 597110-01 –
(M4561)
Channel – AFC Adaptive Feed Control
D NN_ChnAfcSpindleLoad Filtered value in tenths of percent of rated 597110-06 1438
spindle load
(W330)
D NN_ChnAfcOverrideOutput Override factor for interpolator (= AFC 597110-06
output value)
(W332)
D NN_ChnAfcCuttingState Cutting state of AFC (value 0 to 5) 597110-06
(W334)
D NN_ChnAfcSoftkey Setting of the AFC soft key 597110-06
(W336)
D NN_ChnAfcIdleLoad Idle load determined by AFC 597110-06
(W340)
D NN_ChnAfcPlcValTab Values from column PLC in table AFC.TAB 597110-06
(W342)
D NN_ChnAfcMode Current AFC status (0=inactive, 1=learn, 597110-06
2=control)
(W348)

January 2015 5.2 Overview of the PLC operands 993


Operand Description SW Page
version
D NP_ChnAfcError Error from AFC that led to NC stop 597110-06 1438
(W350)
M NP_ChnAfcToolWearLimit Tool-wear limit exceeded 597110-06
(M4510)
D PP_ChnAfcIntFact Setting of I factor 597110-06
(W626)
D PP_ChnAfcTimeConstant Time constant of IIR filter for AFC 597110-06
(W628)
D PP_ChnAfcPlcControl Alternative control input variable for AFC 597110-06
(W632)

5.2.5 PLC operands of the Axis group

Operand Description SW Page


version
Axis – Configuration
D NN_AxLogNumber Logical axis number (identical to the axis 597110-01 1001
number from "Axes of the machining
channel")
–1: Axis is deactivated
–2: Axis is a spindle
D NN_AxChannel Index of the NC channel to which the axis is 597110-08 1001
currently assigned
–1: Axis is a PLC axis
Axis – Drive
M NN_AxDriveReady Axis drive is ready 597110-01 1337
M PP_AxDriveOnRequest Switch axis drive on 597110-01 1337
(CM9161)
M NN_AxDriveOn Axis drive is switched on (and is at least 597110-01 1337
speed-controlled)
(CM9162)
M PP_AxPosControlRequest Position-control the axis 597110-01 1337
(W1040)
M NN_AxPosControl Axis is position-controlled 597110-01 1337
(W1024)
M PP_AxValueActToNominal Actual-to-nominal value transfer 597110-01 1340
M NN_AxCorrectingLagError Eliminate following error active 597110-01 1332
M PP_AxClampModeRequest Prepare to open the position control loop 597110-01 1339
(W1038)

994 HEIDENHAIN Technical Manual TNC 640


Operand Description SW Page
version
Axis – Control
M NN_AxReferenceAvailable 0: Reference mark not traversed 597110-01 1283
(W1032) 1: Reference mark traversed
M PP_AxReferenceEndPosition 0: Trip dog not triggered 597110-01 1283
(W1054) 1: Trip dog triggered
D PP_AxManualFeedMax Maximum axis feed rate in all operating 597110-01 1336
D PP_AxFeedMax modes [mm/rev] 597110-06 1336
(PP_AxManualFeedMax renamed to
PP_AxFeedMax as of version
597110-06 )
M PP_AxFeedEnable Axis-specific feed-rate enable 597110-01 1341
(W1060)
M NN_AxMotionRequest Axis movement by the interpolator 597110-02 1516

M NN_AxMotionNegativeDir Drive with unipolar motor: 597110-06 1603


0: Nominal value output for positive
traverse direction
1: Nominal value output for negative
traverse direction
M NN_AxInMotion Axes in motion 597110-01 1516
(W1028)
M NN_AxInPosition Axes in position 597110-01 1515
(W1026)
M NN_AxStopExtern Axis motion is stopped and canceled by run- 597110-05 –
time system (e.g. upon demand by
functional safety (FS))
M PP_AxTraversePos Manual traverse in positive direction 597110-01 1336
(W1046)
M PP_AxTraverseNeg Manual traverse in negative direction 597110-01 1336
(W1048)
M PP_AxHandwheelLocked Disable handwheel motion for specific axes 597110-01 2139
(W1062)
M PP_AxDeactivateMonitoring Deactivate monitoring functions 597110-01 1504
(W1042)
M NN_AxLubricationPulse Lubrication pulse: Value in MP_lubricationDist 597110-01 1131
exceeded. Remains set until the path is reset
(W1056)
by PP_AxLubricationDistReset
M PP_AxLubricationDistReset Reset the accumulated distance for 597110-01 1131
lubrication
(W1058)
D NN_AxBrakeReleaseRequest Request to release the axis brakes. Bit- 597110-08 1545
coded axis 1 to axis n corresponds to bit
(M4031)
0...n

January 2015 5.2 Overview of the PLC operands 995


5.2.6 PLC operands of the Spindle group

Operand Description SW Page


version
Spindle – Configuration
D NN_SpiLogNumber Logical axis number of the spindle 597110-01 1566
D NN_SpiChannel Index of the NC channel to which the 597110-08 1566
spindle is currently assigned
–1: Spindle is free (unassigned)
Spindle – Drive
M NN_SpiDriveReady Spindle drive is ready 597110-01 1584
M PP_SpiDriveOnRequest Switch spindle drive on 597110-01 1584
(CM9161)
M NN_SpiDriveOn Spindle drive is switched on (and is at least 597110-01 1584
speed-controlled)
(CM9162)
Spindle – Control
M NN_SpiReferenceAvailable Reference position found 597110-01 1568
(M4018)
M PP_SpiReferenceMarkSignal Trip dog 597110-01 1568
D PP_SpiSpeedMax Maximum spindle speed 597110-01 1585
(D604)
M PP_SpiEnable Spindle enabling 597110-01 1585
(M4008)
M NN_SpiMotionRequest Spindle movement by interpolator 597110-01 1516
(M4000)
M NN_SpiInMotion Spindle in motion 597110-01 1585
(M4002)
M NN_SpiSpeedOK Spindle speed reached 597110-01 1593
(M4001)
M NN_SpiControl Spindle is in position control loop 597110-01 1599
M NN_SpiControlInPos Spindle in position 597110-01 1599
(M4000)
M NN_SpiStopExtern Spindle motion is stopped and canceled by 597110-05 –
run-time system (e.g. upon demand by
functional safety (FS))
M NN_SpiSyncSpeed Rotational speed synchronism active 597110-01 –
M NN_SpiSyncAngle Angle synchronism active 597110-01 –
M NN_SpiSyncReached Synchronism attained 597110-01 –
D NN_SpiOverrideInput Speed override set [%] 597110-01 2174
(W492)
D PP_SpiOverride Speed override entered by the PLC [%] 597110-01 2174
(W764)

996 HEIDENHAIN Technical Manual TNC 640


Operand Description SW Page
version
M NN_SpiTapping Tapping active 597110-01 1599
(M4030)
M NN_SpiRigidTapping Tapping with spindle interpolated with Z 597110-01 1599
axis active
(M4031)
D NN_SpiBrakeReleaseRequest Request to release the axis brake(s) 597110-08 1545
(M4031)

January 2015 5.2 Overview of the PLC operands 997


998 HEIDENHAIN Technical Manual TNC 640
6 Configuring the axes and spindle

6.1 Machine structure

6.1.1 TNC 640 of the machine, adapting

Legend:
 OMG: Operating mode group (OperatingModeGroup)
 CH: Machining channel (NC channel)
 Axis: Axis or spindle
Use the following organizational structure to configure the machine structure
in the TNC 640:
 The machine consists of operating mode groups (OMGs).
 Every operating mode group manages machining channels.
 Every machining channel manages axes.
The operating mode groups of a machine as well as the machining channels
of an operating mode group operate independently of each other.
All machines have this organizational structure – even if a simple machine
requires only one OMG and one channel.
A structure for simulation corresponding to the physical structure of the
machine must be configured. As a rule, the machine structure and the
structure for simulation have the same configuration.

January 2015 6.1 Machine structure 999


6.1.2 Definition of axes

Settings in the configuration editor MP number


System
CfgAxes
axisList 100001
specCoordSysList 100003

PLC operand / Description Type

NN_GenChnCount D
Number of configured machining channels

Defining the logical Within the geometry and interpolator processing, a unique identifier (=logical
axes axis number) must be assigned to each axis. The identifier corresponds to the
index in MP_axisList. Logical axes are defined by sequential numbering
starting from the index [0].
The definition of the logical axes is independent of their assignment to the
machining channels.
 Enter the axes of all channels of the machine, including spindles and PLC
axes.

MP_axisList
Key names for all axes on the machine
Available from NCK software version: 597110-01.
Format: Selection menu
Options: List with all axes of the machine
Max. 24 entries allowed
Index = logical axis number
[0]: Key name from Axes/PhysicalAxis for logical axis 0
[1]: Key name from Axes/PhysicalAxis for logical axis 1
[2]: Key name from Axes/PhysicalAxis for logical axis 2
[3]: Key name from Axes/PhysicalAxis for logical axis 3
.
.
.
[23]: Key name from Axes/PhysicalAxis for logical axis 23
Default: –
Access: LEVEL3
Reaction: RESET
The PLC indicates the number of configured logical axes in NN_GenAxCount.
The logical axis number is listed in NN_AxLogNumber; it is needed as axis
number in different PLC modules, for example (e.g. 9165). NN_AxChannel
contains the index of the NC channel to which this axis is momentarily
assigned.

1000 HEIDENHAIN Technical Manual TNC 640


NN_AxLogNumber changes its value if you deactivate an axis with Modules
9226 or 9418. NN_AxLogNumber is set to the value –1 for deactivated axes.
NN_AxLogNumber shows the current operating status of the axis and
therefore does not change immediately when the module is called, but rather
a little later.

Note

Please note that activating a deactivated axis can take up to half a second.

The logical axis number corresponds to the index from NN_ChnAxis (See
"Configuring a machining channel" on page 1003).

PLC operand / Description Type

NN_GenAxCount D
Number of configured logical axes (including spindles)
NN_AxLogNumber D
Logical axis number (identical to the axis number of
"axes of the machining channel")
–1: The axis is deactivated (e.g. via Module 9226 or the
machine configuration)
–2: Axis is a spindle
NN_AxChannel D
Index of the NC channel to which the axis is currently
assigned
–1: Axis is a PLC axis

January 2015 6.1 Machine structure 1001


Spindles In the control software, spindles and axes are treated in largely the same way.
Spindles are considered a special kind of axis and are defined as a logical axis.
For parameters, PLC operands and spindle functions, See "Spindles" on page
1565.

Special kinematics Axes that are used in the kinematic model but are not contained in CfgAxes/
axes axisList are defined in MP_specCoordSysList.
 In MP_specCoordList, enter the axes for which one of the following
attributes is defined in
CfgAxisPropKin/specKinCoordSys (See "Kinematic properties of axes" on
page 1040):
• FixedTransAxis
• DefPointTrans
• DefPointRot
The special kinematics axes are indicated by sequential numbering starting
with the index [0].

MP_specCoordSysList
Key names of special axes for the kinematics description
Available from NCK software version: 597110-01.
Format: Array [0 to 23]
Input: Selection menu
Default: –
Access: LEVEL3
Reaction: RESET

1002 HEIDENHAIN Technical Manual TNC 640


6.2 Configuration of machining channels

6.2.1 Configuring a machining channel

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgChannelAxes
progAxis 200301
restoreAxis 200305
deactFastClamping 200307
CfgKinList
kinCompositeModels 203001
CfgNcErrorReaction
warningLevel 200601
onKinemReset 200602
CfgNcPgmParState
persistent 200701
currentSet 200702
CfgNcPgmBehaviour
operatingTimeReset 200801

Two NC channels are permanently defined in the TNC 640. The name of the
channel is also its key name in the system. The parameters below it are
uniquely assigned via the key name.
 CH_NC
Machining channel
 CH_SIM
Simulation channel (Test Run operating mode)
This setting cannot be changed.

Axes of machining In the parameter object CfgChannelAxes, you specify the axes of the
channel machining channel (NC channel) and define the behavior of the axes during
reference run.
In MP_progAxis, enter the axes which can be used within the NC program.
Axes that are not included are, for example, slave axes in master-slave
operation or axes that are for display only.

MP_progAxis
Programmable axes
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Programmable axis names and axis names for the position
display in the workpiece system. The key names of the axes are
taken from the System/CfgAxes/axisList parameter and
automatically shown as a selection menu.
Default: –
Access: LEVEL3
Reaction: RESET

January 2015 6.2 Configuration of machining channels 1003


Deactivating "fast" There is an accelerated procedure for clamping axes: the unclamping
clamping command for an axis is already sent to the PLC before the nominal position
value filter. A clamping command is not sent to the PLC until after the nominal
position value filter.

Note

This procedure cannot be used for a central drive, since the clamping and
unclamping commands refer to the same axis for a central drive.

MP_deactFastClamping
Deactivation of "fast" clamping
Available from NCK software version: 597110-03.
Format: Selection menu
Options: TRUE
Deactivate fast clamping
FALSE
Axis works with fast clamping
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

In NN_ChnAxisCount, the NC informs the PLC of the number of axes


assigned to this machining channel. The axes assigned to this machining
channel are indicated in the array NN_ChnAxis. The number of spindles
assigned for the machining channel can be determined with
NN_ChnSpindleCount. With a TNC 640 only the returned value 0 or 1 is
currently possible. The spindles of the machining channel are specified in the
array NN_ChnSpindle.

PLC operand / Description Type

NN_ChnAxisCount D
Number of axes of this machining channel
NN_ChnAxis D
Only the axes (and not the spindles) are entered. The
order of the entries has no meaning.
NN_ChnSpindleCount D
Number of spindles momentarily assigned to the NC
channel (only 0 or 1 currently possible with TNC 640)
NN_ChnSpindle D
Index of spindles momentarily assigned to the NC
channel.

1004 HEIDENHAIN Technical Manual TNC 640


Kinematics of Enter the key names of the kinematics models defined for this machining
machining channel channel in the CfgKinList/MP_kinCompositeModels parameter. After control
start-up, the last active kinematics description will be used.

Error behavior of The parameter MP_warningLevel specifies the behavior when FN14 errors
machining channel occur.
Errors are triggered only if according to the PET table the warning level of the
error is maximally as high as the warning level set here. Note that errors with
warning level 0 are always triggered and errors with warning level 5 are never
triggered.

MP_warningLevel
Warning level of channel
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 4
0: FN14 errors with warning level = 0 are triggered
1: FN14 errors with warning level </= 1 are triggered
2: FN14 errors with warning level </= 2 are triggered
3: FN14 errors with warning level </= 3 are triggered
4: FN14 errors with warning level </= 4 are triggered
Default: 0
Access: LEVEL2
Reaction: RUN

January 2015 6.2 Configuration of machining channels 1005


Reaction with The MP_onKinemReset parameter specifies the behavior of the TNC 640
resetting of data with the resetting of internal NC data (e.g. geometry conditions) due to
with kinematic kinematic modifications. It can for example be specified whether a
modification corresponding message is displayed to the machine operator or whether an
NC start is required for continuing the NC program.

MP_onKinemReset
Reaction upon resetting of data due to kinematic modification
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Stop
Display message and stop NC program.
NC start is required to continue the program.
Warning
Display message; do not stop program.
Continue
Do not display message; do not stop program.
Default: Warning (optional parameter)
Access: LEVEL1
Reaction: RUN

Saving Q/QS In the parameter object CfgNcPgmParState, you specify whether and where
parameters Q/QS parameters are to be stored in non-volatile memory.
If MP_currentSet is not defined, the name of the machining channel is used
as name for the Q/QS parameter set. However, you can also specify any other
key name as the name of the Q/QS parameter set. This way you can, for
example, save and later restore the Q/QS state with an OEM cycle.

MP_persistent
Defines the storage of Q/QS parameters
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Q/QS parameters are saved persistently in the current
parameter set at the end of the program, see MP_currentSet.
FALSE
Q/QS parameters are not stored
Default: FALSE
Access: LEVEL2
Reaction: RUN

1006 HEIDENHAIN Technical Manual TNC 640


MP_currentSet
Name of Q/QS parameter set
Available from NCK software version: 597110-01.
Format: String
Input: Max. 18 characters
Name of active Q/QS parameter set
If no name is indicated, the key name of the machining channel
is used for storage
Default: –
Access: LEVEL2
Reaction: RUN

Totaling the Use the CfgNcPgmBehaviour/MP_operatingTimeReset parameter to specify


program machining whether the machining time is to be totaled, or whether it is reset at each
time program start.

MP_operatingTimeReset
Reset the machining time when program starts
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
The machining time is reset at each program start.
FALSE
The machining time is totaled.
Default: FALSE
Access: LEVEL2
Reaction: RESET

January 2015 6.2 Configuration of machining channels 1007


6.2.2 Traversing the reference marks

Settings in the configuration editor MP number


System
CfgAxes
refAxis 100004
refAllAxes 100005

In MP_refAllAxes, you specify whether all axes are to be referenced in the


sequence defined in MP_refAxis, or whether the reference point in these
axes is to be traversed by pressing the axis-direction keys.
The automatic or MDI operating mode cannot be used until all axes entered in
MP_refAxis have been referenced.

MP_refAllAxes
Homing all axes in succession after an NC START
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Traverse the reference mark of all axes in succession after an
NC START.
FALSE
A reference run is not performed for all axes
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

MP_refAxis specifies the axes to be referenced. The sequence of the


reference run is determined by the index.
Index [0] = First axis

MP_refAxis
Axes that are to be run over the reference point
Available from NCK software version: 597110-01.
Format: Array [0 to 23]
Input: The key names of the axes are taken from the CfgAxes/axisList
parameter and automatically shown as a selection menu.
Default: –
Access: LEVEL3
Reaction: RESET

1008 HEIDENHAIN Technical Manual TNC 640


6.2.3 Returning to the contour (block scan)

Settings in the configuration editor MP number


System
PLC
CfgSimPosition
[Key name of the T strobe]
value
axis 113501.0.601
position 113501.0.602
Axes
ParameterSets
CfgFeedLimits
restoreFeed 400309
Channels
ChannelSettings
[Key name of the machining channel]
CfgChannelAxes
restoreAxis 200305
CfgPlcBlockScan
mfirst 201801
mlast 201802

With the TNC 640 you can resume an interrupted NC program at the desired
block number by scanning the previous blocks (please refer to the User’s
Manual).

Note

 M functions M142 and M143 are not permitted with mid-program


startup.
 If you perform a mid-program startup in a program containing M128, then
the TNC 640 performs any compensation movements necessary. The
compensation movements are superimposed over the approach
movement.

Moving the axes:


 After an NC STOP the axes are moved to the last interpolated position (stop
position).
 During a block scan, they are moved to the calculated restore position.
Markers inform the PLC about individual conditions during mid-program
startup (block scan). Depending on these markers you can enable certain
functions such as the axis-direction buttons for MANUAL TRAVERSE.
NN_ChnProgManTraverse is set if the MANUAL TRAVERSE soft key is pressed.
NN_ChnProgReturnContour is set if the RESTORE POSITION soft key is
pressed ("Return to Contour").
NN_ChnBlockScan is set if the BLOCK SCAN TO BLOCK N soft key is pressed.
NN ChnBlockScan is reset if the RESTORE POSITION or INTERNAL STOP soft key
is pressed.

January 2015 6.2 Configuration of machining channels 1009


The distance specified in MP_distance (CfgLiftOff) is used as the set-up
clearance when moving to the restore position (See "LIFTOFF function" on
page 1426.).
To move to the restore position:
 In MP_restoreAxis, specify the sequence in which the axes are to move.

MP_restoreAxis
Sequence for returning to the contour
Available from NCK software version: 597110-03.
Format: Selection menu
Options: The key names of the axes are taken from the System/CfgAxes/
axisList parameter and automatically shown as a selection
menu.
Default: –
Access: LEVEL3
Reaction: RESET

 In MP_restoreFeed, specify the feed rate at which positions are to be


approached.
For rotary axes and spindles, the velocity is specified in [°/min].

MP_restoreFeed
Feed rate for returning to the contour
Available from NCK software version: 597110-02.
Format: Number
Input: Feed rate in [mm/min] or [°/min] for returning to the contour
after an NC stop or block scan
(max. 9 decimal places)
Default: 1200 [mm/min]
Access: LEVEL3
Reaction: RUN
 Define a simulated tool-change position:
During the block scan, PLC positioning commands are included in calculation
only if they are also executed. The TOOL CALL block normally initiates PLC
positioning commands for tool change. If you want these positioning
commands to be calculated in the block scan:
 Insert the optional configuration object CfgSimPosition in the machine
configuration (system/PLC); otherwise the TNC 640 issues the error
message Mid-program startup: Simulated TOOL CALL missing after a block
scan over a TOOL CALL.
 Enter the key name of the T strobe. It is usually "T1" for the T1 strobe.
 In the list, enter under MP_value the absolute position values of the axes
with respect to the machine datum. Do not enter in the list any axes that you
do not wish to include in the calculation. Every axis to be included in the
calculation must be entered in the list. To do this, enter the key name of the
axis under MP_axis, and its absolute position value under MP_position.

1010 HEIDENHAIN Technical Manual TNC 640


If you do not want to include the PLC positioning movements in the calculation
at a TOOL CALL, proceed as follows:
 Leave the list under MP_value completely empty if you do not want the
control to perform compensation movements for mid-program startup after
a TOOL CALL.

MP_value
Simulated tool change position during mid-program startup
Available from NCK software version: 597110-03.
Format: Array [0 to 9]
Input: In the list of machine axes, enter the appropriate absolute
position value with respect to the machine datum (REF system).
The NC assumes that, after the PLC strobe, the listed axes are
located at the given positions and the non-listed axes are at the
same positions as before the PLC strobe.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_axis
Key name of the axis
Available from NCK software version: 597110-03.
Format: Selection menu
Options: Key names of the machine axes from MP_axisList
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_position
Position value for the axis
Available from NCK software version: 597110-03.
Format: Number
Input: –99 999.999 999 999 to +99 999.999 999 999 [mm] or [°]
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.2 Configuration of machining channels 1011


M/S/T/Q transfer The PLC can collect the M/S/T/Q signals during the block scan in order to
during block scan output them after it ends:
 Enter the optional configuration object CfgPlcBlockScan (see table on page
1009). After the block scan the TNC 640 displays the RESTORE MACHINE
STATUS dialog with the M/S/T/Q signals.
 With the external start key, activate the output of the displayed signals. As
long as signals are being output, NN_ChnBlockScanStrobeTransfer is set.
 Define the two parameters MP_mFirst and MP_mLast in the
CfgPlcBlockScan configuration object. Use the parameters to define the M
functions to be output that mark the beginning and the end of the strobes
to be updated for the PLC.

MP_mFirst
M function at beginning of strobes to be tracked
Available from NCK software version: 597110-02.
Format: Number
Input: –1 to 999
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

MP_mLast
M function at end of tracked strobes
Available from NCK software version: 597110-02.
Format: Number
Input: -1 to 999
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

1012 HEIDENHAIN Technical Manual TNC 640


6.3 Configuration of axes
Overview of the types of axes supported by the TNC 640:
 Digital axes:
Controlled axes with encoder; control of a controller unit (CC)
 Analog axes:
Closed-loop and open-loop axes with and without encoder; with analog
output of nominal value
 Manual axes:
Axes with encoder but without motor; these axes can be programmed and
are taken into account in the kinematics (e.g. manually operated axes with
mechanical handwheels)
 Display axes:
Axes with encoder but without motor; these axes cannot be programmed,
and are not taken into account in the kinematics
 Virtual axes:
Axes with neither an encoder nor a motor; however, their nominal values are
added to real axes
 PLC axes:
Axes that are controlled by the PLC run-time system, e.g. magazine axes or
spindles with coded spindle speed output.

January 2015 6.3 Configuration of axes 1013


Specifying the
drive-controller
hardware Settings in the configuration editor MP number
System
CfgHardware
hardwareType 100101

 Specify the type of the drive-controller hardware with the


MP_hardwareType parameter:

MP_hardwareType
Type of drive controller hardware
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: automatic
Automatic identification of controller unit
CC422
CC 422 controller unit for conventional axes
CC424
CC 424 controller unit for direct drives with high control loop
requirements (very short cycle times)
CC61xx
CC 61xx controller unit with HSCI interface
NoCC
No controller unit installed—select this setting for controls with
analog command interface to the servo drives (e.g. TNC 320
with MC 321, TNC 128 with MC 128 or MANUALplus 620 with
MC 320T)
Default: automatic
Access: LEVEL3
Reaction: RESET

MP_hardwareType
Type of drive controller hardware
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: NoCC
No controller unit installed—select this setting for controls with
analog command interface to the servo drives (e.g. TNC 320
with MC 321, TNC 128 with MC 128 or MANUALplus 620 with
MC 320T)
Default: automatic
Access: LEVEL3
Reaction: RESET

1014 HEIDENHAIN Technical Manual TNC 640


6.3.1 Axis designations and coordinates
Principal, parallel and rotary axes are distinguished.

Properties of the X, Y and Z axes are principal axes. These axes have a defined spatial
principal axes X, Y, orientation in a coordinate system model, and are always linear.
Z
It is of no importance to the editor whether the current coordinate system is
that of the machine base system, or is aligned otherwise.
They are the principal coordinates for programming in the editor.
An easy way to remember this system is to use the "right-hand rule":

+Z
+X
+Y

Algebraic signs of When the programmer writes an NC program, he always assumes that the
the axes tool (not the workpiece) is in motion. If the machine moves its workpiece-
holding element (table) in a particular axis instead of the tool, then the direction
of actual motion is opposite to the direction of axis motion. In this case the
direction of motion is designated with the same algebraic sign as the axis
direction, but with an apostrophe: +X´, +Y´ and +Z´:

+X

+X´

January 2015 6.3 Configuration of axes 1015


Properties of the For rotary axes, the turning axis is in the direction of a primary coordinate.
rotary axes A, B, C A, B and C axes are "parallel" rotary axes.
They are parallel coordinates for programming in the editor.
The directions of the rotary axes A, B and C follow the "right-fist rule." The
fingers of the closed right hand point in the proper rotation direction of an axis
when the thumb points in the direction of the associated linear axis.

+Z

+Y
+C
+B

+X
+A

Properties of the The additional axes U, V and W are parallel linear axes.
linear axes U, V, W They are parallel coordinates for programming in the editor.

+Z

+W +Y

+V

+X
+U

1016 HEIDENHAIN Technical Manual TNC 640


Standard The meanings of the coordinates X, Y, Z, A, B, C, U, V and W are specified in
coordinates DIN 66 217.
The TNC 640 views coordinates whose MP_axName parameter begins with
X, Y, Z, A, B, C, U, V or W as standardized coordinates.
For these standardized coordinates, the parameters of the object
CfgProgAxis must obey the following rules:

First letter of parameter Parameter Parameter MP_progKind


MP_axName MP_dir

X XAxis MainLinCoord

Y YAxis MainLinCoord

Z ZAxis MainLinCoord

U XAxis ParallelLinCoord

V YAxis ParallelLinCoord

W ZAxis ParallelLinCoord

A XAxis ParallelAngCoord

B YAxis ParallelAngCoord

C ZAxis ParallelAngCoord

January 2015 6.3 Configuration of axes 1017


6.3.2 Programmable axes

Settings in the configuration editor MP number


Axes
CfgProgAxis
[Key name of the axis]
axName 300001
dir 300002
progKind 300003
index 300004
relatedAxis 300005

In the parameter object CfgProgAxis, define and describe all axes that are
programmable and/or are displayed. This description is independent of the
assignment to NC channels.
For information about programmable axes, See "Standard coordinates" on
page 1017.
The name entered in MP_axName is used for programming/editing and in the
position display.

MP_axName
Designation of the axis for position display
Available from NCK software version: 597110-01.
Format: String
Input: Max. 1 letter
e.g.: X, Y, Z, A, B, C, U, V, W
Default: –
Access: LEVEL3
Reaction: RESET

MP_dir
Spatial orientation of the axis or center of rotation
Available from NCK software version: 597110-01.
Format: Selection menu
Options: XAxis
Motion/rotation in X direction
YAxis
Motion/rotation in Y direction
ZAxis
Motion/rotation in Z direction
SpecAxis
Free/undefined spatial orientation, e.g. for spindle
Default: –
Access: LEVEL3
Reaction: RESET

1018 HEIDENHAIN Technical Manual TNC 640


MP_progKind
Type of axis
Available from NCK software version: 597110-01.
Format: Selection menu
Options: MainLinCoord
Primary coordinate, always linear (X, Y, Z)
ParallelLinCoord
Parallel linear coordinate (U, V, W)
ParallelAngCoord
Parallel angular coordinate (A, B, C)
SatelliteLinCoord
Minor linear coordinate: Reserved, not used at present
SatelliteAngCoord
Minor rotary coordinate: Reserved, not used at present
Spindle
Spindle
Default: –
Access: LEVEL3
Reaction: RESET

Index for SYSREAD In MP_index, you define the index for SYSREAD-/SYSWRITE commands. The
and SYSWRITE index for the axes is predefined by the TNC 640. Please use the following
index numbers:
X=1, Y=2, Z=3, A=4, B=5, C=6, U=7, V=8, W=9 and spindle S=10.

MP_index
Index for SYSREAD and SYSWRITE commands
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 999
Default: –
Access: LEVEL3
Reaction: RESET

January 2015 6.3 Configuration of axes 1019


Axis without a Enter the axis name of the assigned physical axis in MP_relatedAxis if the key
separate drive name of the programmable axis does not correspond to the key name of the
motor physical axis. This links the axis with the physical axis. The axes concerned are
usually axes that do not have a separate drive motor.
Example: If the spindle drive is used for the C axis, you link the C axis with the
physical axis "spindle."

MP_relatedAxis
Assigned physical axis
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Select the key name of the programmable axis from the
selection menu.
Only enter an axis name if the key name of the programmable
axis does not correspond to the key name of the physical axis.
The key names of the axes are taken from the System/CfgAxes/
axisList parameter and automatically shown as a selection
menu.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

Position preset for Module 9142 Position preset for programmed axis
programmable axes Use Module 9142 to preset a programmable axis to a new position value. The
position value of another axis or a freely selected position value can be
transmitted as the target position.
Constraints:
 The module functions only in the cyclic PLC program.
 The <Type of position preset> 1, 2, 3 can only be used when the control is
not active (NN_ChnControlInOperation = 0) or if an M/S/T/G/ strobe is
pending.
 When calling the module for an NC axis during a strobe, the SYNC_CALC
synchronization must be configured for this strobe.

Note

If a Hirth coupling is used, it is assumed that the axis will even be in its
nominal position in the Hirth grid if the position measured when the
coupling is engaged is moved a little. In this case, use <Type of position
preset>=4 to set the position display to the nominal position. Use <Type of
position preset>=5 to reset this state.

1020 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Type of position preset>
1: For <logical axis number target>, set the new position to
the <position value>,
<Logical axis number source> is not necessary
(corresponds to CM 9147)
2: For <logical axis number target>, set the new position to
the value of <logical axis number source>, <position
value> is not necessary
3: Reset the preset value of 1: or 2: and set
the reference value again, <Position value> and
<logical axis number source> are not required
4: For <Logical axis number target>, set the actual position
to the nominal position,
<Position value> and <Logical axis number source> are
not required
5: For <Logical axis number target>, reset the actual
position to the value prior to call 4,
<Position value> and <Logical axis number source> are
not required
PS B/W/D/K <Logical axis number target>
PS B/W/D/K <Logical axis number source>
PS B/W/D/K <Position value>
Input unit: [0.0001 mm]
CM 9142
PL D <Error code>
0: Position specification received
1: <Logical axis number target> axis is outside the valid
range
2: <Logical axis number target> axis is not configured
3: Missing strobe or control is active
4: <Logical axis number source> axis is outside the valid
range
5: <Logical axis number source> axis is not configured
6: <Logical axis number source> axis has not traversed the
reference position
7: <Type of position preset> not known
8: The module was called in a submit or spawn job
9: Call still running or a competing
function of this axis is active
10: Axis is a slave axis
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
and <Error code> above
NN_GenApiModule 2 Invalid call (see error number in returned
ErrorCode value)
21 Missing strobe or control is active
24 The module was called in a submit or spawn
job

January 2015 6.3 Configuration of axes 1021


6.3.3 Physical axes

Settings in the configuration editor MP number


Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
isAng 300101
isModulo 300102
restoreModuloCntr 300111
isHirth 300103
axisHw 300104
axisMode 300105
testMode 300106
parList 300107
realAxis 300108
noActToNomAtEmSt 300109

In the parameter object PhysicalAxis, define and describe all machine axes
that can be moved by the control. The description in PhysicalAxis is
independent of the assignment to NC channels.
In the parameter object CfgAxis, you specify the axis type and drive interface,
you assign a parameter set to the axis and define the operating mode of the
axis.

MP_isAng
Rotary axis
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
This axis is a rotary axis.
FALSE
This axis is a linear axis (not a rotary axis).
Note:
Rotary axes are not allowed as principal axes.
Default: FALSE
Access: LEVEL3
Reaction: RESET

1022 HEIDENHAIN Technical Manual TNC 640


Position display for In MP_isModulo you define whether the modulo limit of 360 degrees should
rotary axes and PLC apply to the position display of rotary axes or PLC auxiliary axes.
auxiliary axes
(modulo display) MP_isModulo
Modulo display
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Position display for rotary axes: modulo 0 to 360°
FALSE
Position display is not modulo display.
Default: FALSE
Access: LEVEL3
Reaction: RESET

Note

You must always configure spindles as modulo axes:


MP_isModulo = True.

In MP_restoreModuloCntr you specify whether the Modulo counter saves


the axis cyclically in the SRAM and whether it is restored with a control start.

MP_restoreModuloCntr
Save modulo counter of the axis in SRAM
Available from NCK software version: 597110-04.
Format: Selection menu
Options: TRUE
The modulo counter of the axis is saved cyclically in SRAM and
restored during startup of the TNC 640.
FALSE
The modulo counter of the axis is not saved in SRAM and not
restored during control startup.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.3 Configuration of axes 1023


Rollover axes

Settings in the configuration editor MP number


Axes
PhysicalAxis
[Key name of the axis]
CfgRollOver
shortestDistance 300401
startPosToModulo 300402

Roll-over axes are rotary axes with modulo counting mode that are able to
execute several or any number of revolutions. Example:
A machine with C axis as rotary table.
If you want to configure a rotary axis as rollover axis, you have to insert the
optional configuration object CfgRollOver in the machine configuration for the
respective axis.

Note

The parameters in CfgRollOver are only evaluated if the CfgAxisPropKin/


kindOfRotAxis parameter is set to "RollOver" (see page 1040)!

Use the machine parameters MP_shortestDistance and


MP_startPosToModulo to define the characteristics of the rollover axis.
Set the parameter MP_shortestDistance = on so that the axis approaches the
target position on the shortest path (<= 180°) if programming is non-
incremental. The nominal and the target value display is always between 0°
and 360°, also with incremental programming.

MP_shortestDistance
Traverse path of rotary axis with modulo counting mode
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Always approach target position on the shortest path (<= 180°)
off
Approach target position without passing over zero
Default: No value, optional parameter (= off)
Access: LEVEL3
Reaction: RUN
Set the parameter MP_startPosToModulo = on, to move the position of the
rotary axis into the module limits (0...360°) before the beginning of the
positioning block. The MP_startPosToModulo parameter is effective only if
you configure MP_shortestDistance = off.

1024 HEIDENHAIN Technical Manual TNC 640


MP_startPosToModulo
Rollover axis moves start angle into the range of 0 to 360°
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Move the rotary axis into the 0 to 360° range at the beginning
of the positioning block.
off
Do not move the rotary axis into the 0 to 360° range.
Default: No value, optional parameter (= off)
Access: LEVEL3
Reaction: RUN
Example:
Effect of the MP_shortestDistance and MP_startPosToModulo parameters

Programmed shortestDistance = on startPosToModulo = on shortestDistance = off


movement startPosToModulo = off
Noml. Ref Dist. Noml. Ref Dist. Noml. Ref Dist.
LC +0 0 0 – 0 0 – 0 0 –
LC +185 185 -175 -175 185 185 +185 185 185 +185
LC –5 355 355 +170 -5 -5 -190 -5 -5 190
LC 180 180 180 -175 180 180 -175 180 180 +185
LC 0 0 0 -180 0 0 -180 0 0 -180
L IC 720 0 720 +720 720 720 +720 720 720 +720
L IC –800 280 -800 -800 -800 -800 -800 -80 -80 -800

January 2015 6.3 Configuration of axes 1025


Defining the drive Use the MP_axisHw machine parameter to define the drive interface. The
interface parameter defines the hardware type of the axis at the time of the control
startup. The parameter is evaluated only if the value "active" is entered in
MP_axisMode.

MP_axisHw
Hardware to which the axis is connected
Available from NCK software version: 597110-01.
Format: Selection menu
Options: None
No hardware connection (virtual axis)
InOutCC
Digital axis with connection to a CC controller unit
AnalogMC
Analog drive interface; encoder connection to MC
AnalogCC
Analog drive interface; encoder connection to CC; select when
using the CMA-H SPI plug-in module
DisplayMC
Display axis; encoder connection to MC
DisplayCC
Display axis; encoder connection to CC
ManualMC
Open-loop axis; encoder connection to MC
ManualCC
Open-loop axis; encoder connection to CC
ProfiNet
Reserved, no function.
Default: InOutCC
Access: LEVEL3
Reaction: RESET

1026 HEIDENHAIN Technical Manual TNC 640


Activating an axis An axis can only be moved in a closed loop after it has been activated with the
MP_axisMode machine parameter.
For commissioning, use the MP_testMode parameter to switch an axis to test
mode. In this operation, the interpolator views the axis as a fully-functional
axis, but the nominal values are not passed on to the drive motor. There is only
an internal nominal-to-actual transfer. Such an axis does not need to have all
the hardware connections made (position and speed input, PWM output), but
can be "positioned."

Note

Axes with MP_testMode = TRUE and MP_axisMode = Active must be


enabled in the SIK!

MP_axisMode
Axis operating mode
(compare to iTNC 530: MP10 (expanded))
Available from NCK software version: 597110-01.
Format: Selection menu
Options: NotActive
Axis does not exist
Active
Axis physically present
PlcControlled
e.g. for encoded spindles; axis is controlled solely by the PLC
Default: Active
Access: LEVEL3
Reaction: RESET

MP_testMode
Axis in test mode
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Test mode for commissioning, i.e. the axis needs not be
connected
FALSE
Test mode not active.
If MP_axisMode = Active: Axis must be connected electrically
Default: FALSE
Access: LEVEL3
Reaction: RESET

Note

Please note that hanging axes cannot be supported in test mode. The PLC
must ensure that these axes are braked in test mode.
Hanging axes need 100 % weight compensation.

January 2015 6.3 Configuration of axes 1027


Assigning In MP_parList enter the key name of the parameter set that is assigned to this
parameter sets axis. The parameter set describes the axis control response, the encoder
connection, the encoder signals, etc.
You can create more than one parameter set for one axis. This enables you to
define different controller settings, for example.
Examples:
a) You define different controller settings to ensure appropriate control
response depending on the load.
b) The spindle and the C axis are realized by using a physical axis. This enables
you to define separate parameter sets for the spindle and the C axis.

MP_parList
List of all parameter sets of this axis
Available from NCK software version: 597110-01.
Format: Array [0 to 9]
Input: Key name of the parameter set
Max. 18 characters
e.g.: ParSetX-0 or PX (parameter set for the X axis)
Default: –
Access: LEVEL3
Reaction: RESET

Note

The first parameter set must be fully defined. In KeySynonym/


CfgKeySynonym, you can link the other parameter sets to the first one.
Then you only have to define the parameters that differ from the ones of
the parameter set to which you have related the present parameter set.

Virtual axis In MP_realAxis, enter the key name of the associated real axis.
For virtual axes, See "Configuration of axes" on page 1013

MP_realAxis
Key name of the associated real axis
Available from NCK software version: 597110-01.
Format: Selection menu
Options: The key name of the associated real axis is only to be entered if
the current axis is a virtual axis.
The key names of the axes are taken from the Axes/
PhysicalAxis folder and automatically shown as a selection
menu.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

1028 HEIDENHAIN Technical Manual TNC 640


Actual-to-nominal With MP_noActToNomAtEmSt, you can define whether an actual-to-
value transfer nominal value transfer is to be performed for all axes in an EMERGENCY
STOP.

MP_noActToNomAtEmSt
Actual-to-nominal vaIue transfer for all axes in an EMERGENCY
STOP
Format: Selection menu
Options: TRUE
Actual-to-nominal value transfer for all axes in an EMERGENCY
STOP is not performed.
FALSE
The default control behavior is actual-to-nominal value transfer
for all axes in an EMERGENCY STOP.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.3 Configuration of axes 1029


Advanced settings
for individual axes
Settings in the configuration editor MP number
Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
advancedSettings 300112
noBreakAtProbe (bit 0)
manFilterEnhanced (bit 1)
countLagOverflow (bit 2)
analogPWM (bit 3)
backlashOnMC (bit 4)
usePmax2ForM19 (bit 5)
ignoreKinematics (bit 6)
clearShutoffPos (bit 7)

Use MP_advancedSettings to define advanced settings for individual axes.


 MP_noBreakAtProbe (bit 0)
• TRUE
If the current axis is moved by the PLC, the movement is not stopped
when the touch probe is deflected. This setting is useful if, for example,
certain auxiliary axes (e.g. axes for controlling the tool changer) are to
also to be moved during a probing process. Use this setting only for
axes not participating in the probe process and that cannot mechanically
endanger the touch probe. The feed limits for the probe process from
CfgProbes/maxTouchFeed or from CfgTT are not effective for the
corresponding axis/axes.
• FALSE
A movement commanded by the PLC is stopped when the touch probe
is deflected (default behavior).
 MP_manFilterEnhanced (bit 1)
• TRUE
A movement of this axis commanded by the PLC (e.g. when the manual
direction key is pressed or any other PLC positioning) is no longer made
with a bell-shaped acceleration curve but with a ramp-shaped
acceleration profile. This function should only be used in exceptional
cases. Prefer the bell-shaped acceleration curve. This ensures
acceleration with minimum machine excitation.
• FALSE
The PLC movement is with bell-shaped acceleration (default behavior =
recommended).

1030 HEIDENHAIN Technical Manual TNC 640


Attention

MP_manFilterEnhanced with active collision monitoring (DCM)


DCM and MP_manFilterEnhanced cannot be active at the same time
when the axes are positioned by the PLC.
If axes for which MP_manFilterEnhanced=TRUE is set are moved by the
PLC while DCM is active, MP_manFilterEnhanced will be disabled during
the motion.
The PLC, however, is able (e.g. by using module 9063) to disable DCM in a
targeted manner for this movement. This means that
MP_manFilterEnhanced will remain effective.

Note

Under certain circumstances, a ramp-shaped acceleration profile can


improve the time behavior of the axis. The axis thus reaches its
programmed acceleration earlier. This saves time, and higher accelerations
are achieved with short traverse paths. You can still limit the jerk with the
MP_manualFilterOrder parameter.
Nevertheless, you should only use this function in exceptional cases.
Prefer the bell-shaped acceleration curve. This ensures acceleration with
minimum machine excitation.

Comparison of the acceleration behavior:

January 2015 6.3 Configuration of axes 1031


 MP_countLagOverflow (bit 2)
Only effective for a spindle in position feedback control.
• TRUE
The TNC 640 does not calculate the following error generated during
acceleration or braking with the modulo counting method. If a spindle
motor tends to vibrate, the control response of the spindle can thus be
improved in certain cases. Vibrations are suppressed. With steep brake
ramps the axis may "trail behind" because the established servo lag is
always adjusted for. The nominal speed is reached with some delay
because of the reduction of the following error.
• FALSE
The following error is always calculated in modulo counting mode
(standard behavior).
 MP_analogPWM (bit 3)
Reserved for special settings of analog drives.
 MP_backlashOnMC (bit 4)
• TRUE
The hysteresis is calculated in the NC software.
• FALSE
The hysteresis is calculated in the DSP software on the CC (default
behavior).
 MP_usePmax2ForM19 (bit 5)
Enables the use of CfgServoMotor/motPMax2 for spindle orientation. Use
only after consulting with HEIDENHAIN.
• TRUE
The spindle power is limited to the value of the parameter
MP_motPMax2 when braking at the current limit for M19.
• FALSE
The MP_motPMax2 parameter is not evaluated for M19 when braking
at the current limit (standard behavior).
 MP_ignoreKinematics (bit 6)
Specifies whether the active kinematics model is to be ignored during
manual traverse.
• TRUE
Regardless of the kinematic model effective in manual operation, this
axis can always be moved by using the manual direction keys.
• FALSE
If a kinematic model is effective in manual operation, only one axis can
be moved at a time. The active kinematic configuration is not ignored.
 MP_clearShutoffPos (bit 7)
Reset the switch-off position of the axis stored in SRAM.
• TRUE
Set the switch-off position of the axis in SRAM to zero. After evaluation,
the parameter will be reset at the next start-up.
• FALSE
Function not active.
 MP_reserve08...MP_reserve09
Reserved.

1032 HEIDENHAIN Technical Manual TNC 640


MP_advancedSettings
Advanced settings for individual axes
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
FALSE
noBreakAtProbe (bit 0)
manFilterEnhanced (bit 1)
countLagOverflow (bit 2)
analogPWM (bit 3)
backlashOnMC (bit 4)
usePmax2ForM19 (bit 5) (as of 597110-08)
ignoreKinematics (bit 6) (as of 597110-08)
clearShutoffPos (bit 7) (as of 597110-09)
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.3 Configuration of axes 1033


6.3.4 Display of axes on the screen

Settings in the configuration editor MP number


System
DisplaySettings
CfgDisplayData
axisDisplay 100810
axisDisplayRef 100811
positionWinDisplay 100803
statusWinDisplay 100804
decimalCharacter 100805
axisFeedDisplay 100806
spindleDisplay 100807
CfgPosDisplayPace
[Key name of the axis]
displayPace 101001
displayPaceInch 101002

You can define in which sequence the axes are to be shown on the screen.
You can also determine the type of position and status display.
The parameter MP_axisDisplay specifies the display rules and sequence of
the displayed axes. The field [0] in the parameter list corresponds to the
uppermost position on the screen.
The optional MP_axisDisplayRef parameter specifies deviating display rules
and the sequence for displayed axes before crossing the reference marks. If
MP_axisDisplayRef is not set, the settings from MP_axisDisplay are
effective before crossing the reference marks as well.
The parameters MP_axisDisplay and MP_axisDisplayRef provide flexible
options for displaying the axes on the screen. With the display rules you
determine in which sequence, under which conditions and, optionally, with
which name the axes are displayed on the screen.
See "Machines with several working spaces / alternating table machining" on
page 1121 for an example of these display rules for axes.

MP_axisDisplay
Sequence and rules for displayed axes
Available from NCK software version: 597110-08.
Format: Array [0 to 23]
Input: Up to 24 lists with the MP_axisKey, MP_name and MP_rule
parameters. Specifies the sequence and rules for displaying an
axis.
Default: –
Access: LEVEL3
Reaction: NOTHING

1034 HEIDENHAIN Technical Manual TNC 640


MP_axisDisplayRef
Sequence and rules for display axes before crossing the
reference marks
Available from NCK software version: 597110-08.
Format: Array [0 to 23]
Input: Up to 24 lists with the MP_axisKey, MP_name and MP_rule
parameters. Specifies sequence and rules for the display of an
axis.
Default: –
Access: LEVEL3
Reaction: NOTHING

MP_axisKey
Key name of the axis
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Select the key name of the axis for which this display setting is
valid.
The key names of the axes are taken from the configuration
entity CfgAxis and displayed in a selection menu.
Default: –
Access: LEVEL3
Reaction: NOTHING

MP_name
Axis designation
Available from NCK software version: 597110-08.
Format: String
Input: Max. 2 characters
Defines the axis name, also used for the display alternatively to
the key name from CfgAxis. If the parameter is not set the TNC
640 displays the key name.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

January 2015 6.3 Configuration of axes 1035


MP_rule
Display rule for the axes
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Specifies the condition for displaying the axis:
ShowAlways
Axis is always shown.
IfKinem
Axis only shown if used as axis or spindle in the active
kinematics model.
IfKinemAxis
Axis only shown if used as axis in the active kinematics model.
IfNotKinemAxis
The axis is only shown if it is not used as an axis in the active
kinematics model (e.g. as spindle).
Never
The axis is not shown.
Default: ShowAlways
Access: LEVEL3
Reaction: NOTHING

Position and status Use the MP_positionWinDisplay and MP_statusWinDisplay parameters to


display specify the default settings for position display in the position and status
windows. The machine operator can change these settings with the MOD
key.

MP_positionWinDisplay
Type of position display in the positioning window
Available from NCK software version: 597110-01.
Format: Selection menu
Options: NOML.
Nominal position
ACTL.
Actual position
REF ACTL
Actual position referenced to the machine datum
REFNOML
Nominal position referenced to the machine datum
LAG
Following error (servo lag)
ISTRW
Distance-to-go in the input system
REFRW
Distance-to-go in the machine system
M118
Traverses that were carried out with handwheel
superimposition (M118)
Default: ACTL.
Access: LEVEL1
Reaction: NOTHING

1036 HEIDENHAIN Technical Manual TNC 640


MP_statusWinDisplay
Type of position display in the status display
Available from NCK software version: 597110-01.
Format: Selection menu
Options: NOML.
Nominal position
ACTL.
Actual position
REF ACTL
Actual position referenced to the machine datum
RFNOML
Nominal position referenced to the machine datum
LAG
Following error (servo lag)
ACTDST
Distance-to-go in the input system
REFDST
Distance-to-go in the machine system
M118
Traverses that were carried out with handwheel
superimposition (M118)
Default: ACTL.
Access: LEVEL1
Reaction: NOTHING

Position display The position display for a programmed tool length change using TOOL CALL
with TOOL CALL DL DL can be influenced using MP_progToolCallDL.

Note

If you are migrating from the iTNC 530:


With MP_progToolCallDL = As Workpiece Oversize, you can set the
position display for TOOL CALL DL in such a way that it is compatible to the
iTNC 530. With this setting, the TNC 640 will not show the tool oversize DL
programmed in the TOOL CALL block in the nominal position display, but
will be taken into account as workpiece oversize.

MP_progToolCallDL
Position display with TOOL CALL DL
Available from NCK software version: 597110-09.
Format: Selection menu
Options: As Tool Length
Default behavior of the TNC 640.
The oversize DL programmed in the TOOL CALL block will be
taken into account as part of the tool length in the nominal
position display.
As Workpiece Oversize
Setting compatible to the iTNC 530.
The oversize DL programmed in the TOOL CALL block will not
be taken into account in the nominal position display. Thus, it is
effective as workpiece oversize.
Default: No value, optional parameter (= As Tool Length)
Access: LEVEL1
Reaction: RUN

January 2015 6.3 Configuration of axes 1037


Decimal separator At present only a period may be used as a decimal separator.

MP_decimalCharacter
Definition of decimal separator for position display
(compare to iTNC 530: MP7280)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: "."
At present only a period may be used as a decimal separator.
Default: "."
Access: LEVEL3
Reaction: NOTHING

Configuring the You can configure the display of the momentary axis feed rate in the
type of feed-rate Manual Operation and El. Handwheel operating modes. Use the optional
display parameter MP_axisFeedDisplay to specify whether the axis feed rate should
only be displayed while an axis direction key is pressed, or always (smallest
value from the MP_manualFeed parameter of the axis).

MP_axisFeedDisplay
Display of the feed rate in the Manual Operation and El.
Handwheel modes of operation
(compare to iTNC 530: MP7270)
Available from NCK software version: 597110-02.
Format: Selection menu
Options: at axis key
Display of the feed rate only if an axis direction key is pressed.
The axis-specific feed rate from CfgFeedLimits/manualFeed is
displayed.
always minimum
Display of the feed rate also before one of the axis direction
keys is pressed (smallest value from CfgFeedLimits/
manualFeed) for all axes.
Default: at axis key (optional parameter)
Access: LEVEL3
Reaction: NOTHING

Note

HEIDENHAIN recommends:
Use the MP_axisFeedDisplay = always minimum setting only for simple
machines with three-axis kinematics. Do not use the setting for systems
with functional safety (FS). For these systems, delete the parameter from
the configuration or enter the value at axis key.

1038 HEIDENHAIN Technical Manual TNC 640


Display of the Use the optional parameter MP_spindleDisplay to specify how the spindle
spindle position position is shown in the position display:

MP_spindleDisplay
Display of spindle position in the position display
Available from NCK software version: 597110-02.
Format: Selection menu
Options: during closed loop
Display of spindle position only if the spindle is servo controlled
during closed loop and M5
Display of spindle position if the spindle is servo controlled and
M5 is active
Default: during closed loop
Access: LEVEL3
Reaction: NOTHING

Specifying the With the MP_displayPace parameter you define the display step for the
display step of the position display of metric axes. For linear axes the display step corresponds to
axes the traverse path in millimeters [mm], and for rotary axes in degrees [°].
The MP_displayPaceInch parameter defines the display step for the position
display of axes in inches.

MP_displayPace
Display step for position display in [mm] or [°]
Available from NCK software version: 597110-01.
Format: Selection menu
Options: 0.1
0.05
0.01
0.005
0.001
0.0005
0.0001
0.00005
0.00001
Default: 0.001
Access: LEVEL3
Reaction: NOTHING

MP_displayPaceInch
Display step for position display in [inch]
Available from NCK software version: 597110-01.
Format: Selection menu
Options: 0.005
0.001
0.0005
0.0001
0.00005
0.00001
Default: 0.001
Access: LEVEL3
Reaction: NOTHING

January 2015 6.3 Configuration of axes 1039


6.3.5 Kinematic properties of axes

Settings in the configuration editor MP number


Axes
PhysicalAxis
[Key name of the axis]
CfgAxisPropKin
specKinCoordSys 300201
kindOfRotAxis 300202
presetToAlignAxis 300203
hasSpecAxisData 300204

In the parameter object CfgAxisPropKin, specify the expanded properties for


the kinematics model.
In MP_specKinCoordSys define whether the assigned coordinate
transformation is used for defining a fixed translation axis or a datum
(DefPoint).

MP_specKinCoordSys
Type of special coordinate system
Available from NCK software version: 597110-01.
Format: Selection menu
Options: FixedTransAxis
Translation axis for which no physical axis exists
DefPointTrans
Coordinate system in the kinematic model of a translation axis
to which no physical axis is assigned
DefPointRot
Coordinate system in the kinematic model of a rotational axis to
which no physical axis is assigned
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET
For rotary axes, specify in MP_kindOfRotAxis whether the axis can rotate or
whether it has a limited rotation angle.

MP_kindOfRotAxis
Type of rotational axis, only for rotary axes
Available from NCK software version: 597110-01.
Format: Selection menu
Options: RollOver
Axis can roll over
NotRollOver
Axis has a limited angle of rotation
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

1040 HEIDENHAIN Technical Manual TNC 640


MP_presetToAlignAxis controls the treatment of presets for rotational axes.
If the parameter is set to TRUE, the offset resulting from the preset is
subtracted from the axis value before the kinematics calculation is performed.
If it is set to FALSE, the offset is only effective for the position display of the
axis.

MP_presentToAlignAxis
Controls the treatment of the preset for rotational axes
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Offset is subtracted
FALSE
Offset is only effective for the display
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET
MP_hasSpecAxisData is only intended for special axis data—the parameter
is not used at present.

MP_hasSpecAxisData
Reserved: Special axis data available, only for special axes
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Special axis data available
FALSE
No special axis data
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

January 2015 6.3 Configuration of axes 1041


6.3.6 Manually operated axis (counter axis)
An open-loop axis has a position encoder for determining and displaying the
current position value. There is no nominal value output for the axis. The target
position is set by the machine operator manually (e.g. via mechanical
handwheels).
An open-loop axis can be programmed together with closed-loop axes in an
NC program. When an NC block with an open-loop axis is reached during
machining, a dialog window prompts the machine operator to move the axis
its the nominal coordinates:

The dialog window shows the nominal and actual position, as well as the
distance-to-go, in axis coordinates. The TNC 640 automatically triggers an
NC STOP when opening the window. The axis must now be traversed by the
machine operator until the target has been reached, taking into account the
positioning window defined under MP_posTolerance. The TNC 640 then
automatically closes the dialog window. Machining of the NC program is
continued with NC START.

Note

If an open-loop axis is programmed together with controlled axes in an NC


block, then the open-loop axis does not have to be traversed to the target
position immediately upon appearance of the dialog window. For example,
you can first retract the open-loop axis, then position the closed-loop axes
with the NC START key, and then finish positioning the open-loop axis. The
dialog window then disappears. Press NC START again to continue the NC
program.

1042 HEIDENHAIN Technical Manual TNC 640


Configuring a
manual axis
Settings in the configuration editor Input:
Axes
PhysicalAxis
[Key name of the axis]
CfgAxisHardware
axisHw ManualMC or ManualCC
axisMode Active
CfgReferencing
refType Mode1 or
Mode 3
onTheFly TRUE
CfgControllerAuxil 0
checkPosStandstill
CfgEncoderMonitor
movementThreshold 0
CfgControllerTol
posTolerance Desired positioning window

 For the manually operated axis, set the MP_axisHw and MP_axisMode
machine parameters to the values indicated in the table.
 Because the control itself cannot move the axis over the reference marks,
the reference run mode must be set accordingly:
Use MP_refType to set the reference run mode either to the value Mode1 or
to Mode3.
 Set MP_onTheFly = TRUE for the corresponding axis.
 Deactivate standstill monitoring by setting MP_checkPosStandstill = 0
 Deactivate movement monitoring for the axis by setting
MP_movementThreshold = 0

January 2015 6.3 Configuration of axes 1043


6.3.7 Introducing a new NC axis
The following guideline describes step by step how to introduce a new axis
into the system.
Carry out the steps described if, for example, you want to expand the 3-axis
default configuration of the TNC 640 by one rotary axis C. Additional axes are
added according to the same principle.

Note

Alternatively, the COPY SAMPLE FILES feature allows you to copy


machine configurations that are already prepared from SYS: to the PLC
partition. These example configurations cover the most common
applications and can easily be adapted to your requirements. This means
that you may not necessarily have to carry out the steps described below.
You get to this function, or the COPY SAMPLE FILES soft key, when you
have entered the code number 95148 in the Programming mode via the
MOD key.

Guideline for In the following example, a rotary axis C is added to the existing default
introducing a new machine configuration with the three linear axes X, Y, Z and the spindle S.
NC axis
 Switch to the Programming mode of operation
 Press the MOD key
 Enter the code number 95148 to access the Machine Parameter mode of
operation

1044 HEIDENHAIN Technical Manual TNC 640


Step 1:  Press the CONFIG FILE LISTS soft key.
Create a CFG file
 Open the CfgConfigDataFiles / dataFiles folders one after the other:

 Now create a new CFG file for the parameters of the C axis. Move the cursor
to any place in the list of the CFG files and press the
ADDITIONAL FUNCTIONS soft key and then the INSERT soft key. The
complete file path must be entered, e.g. %oemPath%\axis_C.cfg:

 Complete by pressing ENT or the OK soft key and press the SAVE soft key.
 Reboot the TNC 640 to initialize the new CFG file.
 After rebooting, again enter the code number 95148 to open the Machine
Parameters mode.

January 2015 6.3 Configuration of axes 1045


Step 2:  Press the CONFIG DATA soft key. Now you have to insert several new
Create a parameter machine parameters in the configuration.
set  Open the Axes / ParameterSets folder
 Create a parameter set for the new axis. Leave the cursor on the
ParameterSets folder and press the MORE FUNCTIONS and INSERT soft
keys.

Note

Alternatively, you can also copy an existing parameter set. This function is
especially interesting if the new axis differs only very slightly from an
existing axis.
To copy a parameter set, move the cursor to the existing parameter set and
press the MORE FUNCTIONS and COPY soft keys. Don't forget to enter
the correct storage file and the new name of the parameter set!

 Under Key name? in the dialog field, enter a name for the parameter set, e.g.
"PC".
Under Storage File?, select the axis storage file created before; in the
example PLC:\config\axis_c.cfg.

 Confirm all of the other dialog windows for inserting new data objects by
pressing the OK soft key. Objects that you do not want to insert in the
configuration can be skipped with the CANCEL soft key. The CfgSpindle
configuration object, for example, can be omitted for a linear or rotary axis.
 Define all axis-specific parameters of the new axis that are already known,
e.g. counting direction, encoder models, connections, motor and power
stage types etc.

1046 HEIDENHAIN Technical Manual TNC 640


Step 3:  Then you have to configure the general physical characteristics of the axis.
Create a physical Open the Axes / PhysicalAxis folder
axis and assign it to  Leave the cursor on the PhysicalAxis folder and press the
the parameter set MORE FUNCTIONS and INSERT soft keys.

 Under Key name? in the dialog field, enter the same key name that you used
before for the CfgProgAxis settings; in this example "C".
Under Storage File?, select the axis storage file created before; in the
example PLC:\config\axis_c.cfg.
 Confirm all of the other dialog windows for inserting new data objects by
pressing the OK soft key.
 Now define settings for the new axis in the Axes / PhysicalAxes / C /
CfgAxis folder. Configure the following parameters:
 MP_isAng (Page 1022),
 MP_isModulo (Page 1023),
 MP_isHirth (Page 1162),
 MP_axisHw (Page 1026),
 MP_axisMode (Page 1027)
The data are based on the characteristics of your axis. In the following you will
find example settings for a rotary axis C with digital drive control:

January 2015 6.3 Configuration of axes 1047


 Under Axes / PhysicalAxes / C / CfgAxisPropKin, set
MP_kindOfRotAxis = rollover in order to permit endless axis rotation.
 Assign the parameter set created before to the new axis. To do so, open the
Axes / PhysicalAxis / C folder and press the INSERT soft key to insert the
MP_parList.
 Pick the parameter set for the new axis configured before from the selection
menu and press the ENT key or the OK soft key:

1048 HEIDENHAIN Technical Manual TNC 640


Step 4:  Now configure the programmable axis. To do so, open the Axes / ProgAxis
Configure the folder.
settings for  Leave the cursor on the ProgAxis folder and press the MORE FUNCTIONS
programmable axes and INSERT soft keys.

 Under Key name? in the dialog field, enter the key name of the axis. The key
name will be used later to identify the axis in the system.
HEIDENHAIN recommends using the axis letter (in this case "C") as the key
name.
Under Storage File?, select the axis storage file created before; in the
example PLC:\config\axis_c.cfg.
 Press the ENT key or the OK soft key to insert the configuration data.
 In the MP_axName parameter (See page 1018) enter the letter of the axis
that is to appear in the position display; in this case "C".

January 2015 6.3 Configuration of axes 1049


 Then define the spatial orientation of the axis with the MP_dir parameter
(See page 1018); here you choose the ZAxis value for the Z direction.

 Then you have to define the axis type. To do so, open the MP_progKind
parameter (See page 1019). For a rotary axis, you set the value
ParallelAngCoord.

 For cycle programming (functions FN17 and FN18), you have to assign a
specified index to every NC axis. This is done using the MP_index
parameter (See page 1019). Take a quick look at the help window (HELP
key)—it shows the specified indices for the individual axes. For the C axis,
the specified index is 6. Now enter this index.

1050 HEIDENHAIN Technical Manual TNC 640


Step 5:  Now you have to make some global system settings for the new axis in the
Global system System folder.
settings for the new  Define the order of the axes displayed on the screen. Open the folder
axis System / DisplaySettings / CfgDisplayData / axisDisplay (See page
1034). Add the new axis at the desired location in the list:

 If you want to display the axes in another sequence before traversing the
reference marks, enter the axes in MP_axisDisplayRef (See page 1035).
Otherwise, leave this parameter empty.
 In a next system setting step you now have to define the display step for
the new axis. To do so, open the System / DisplaySettings /
CfgPosDisplayPace folder.
 Leave the cursor on the CfgPosDisplayPace folder and press the
MORE FUNCTIONS and INSERT soft keys.

January 2015 6.3 Configuration of axes 1051


 Under Key name? in the dialog field, enter the key name of the axis; in this
example "C".
Under Storage File?, select the axis storage file created before; in the
example PLC:\config\axis_c.cfg.
 Use the two parameters MP_displayPace (See page 1039) and
MP_displayPaceInch (See page 1039) to define the display step for the
new axis.

 To do so, open the System / CfgAxes / axisList folder.


 Insert the key name of the new axis at the correct place in the list—in this
case behind the last linear axis Z. Move the cursor onto the Z axis, press the
INSERT soft key and select the axis key name from the selection menu.

1052 HEIDENHAIN Technical Manual TNC 640


Step 6:  Now define the kinematics characteristics of the new axis. This is done
Configure the using the Channels / Kinematics folder.
kinematics of the  For a guideline for kinematics configuration, please refer to the chapter
new axis "Configuring the machine kinematics" on page 1189.

Step 7:  Then you configure important settings for the machining channel. The
Add the axis to the machine parameter for the machining channel is contained in the Channels
machining channel / ChannelSettings / CH_NC folder. It includes important data on the
interpolating and programmable machine axes.
 Open the Channels / ChannelSettings / CH_NC / CfgChannelAxes /
progAxis folder. The folder contains all programmable axes. Add the new
axis to the list:

 Open the folder named System / CfgAxes / refAxis. All axes that are to
traverse the reference point are listed here. The order of the list also defines
the order for traversing the reference marks. Add the new axis to the list:

January 2015 6.3 Configuration of axes 1053


 When you have completed your configuration, save your changes by
pressing the SAVE soft key.
 Restart the TNC 640 and then carry out an adjustment of the new axis using
the TNCopt commissioning and optimization software.

1054 HEIDENHAIN Technical Manual TNC 640


6.4 Encoders
Encoders report positions and movements of the machine to the TNC 640.
HEIDENHAIN contouring controls operate with incremental encoders with a
1 VPP signal and absolute encoders with EnDat interface.
In the parameter object CfgAxisHardware, define the connections of the
encoders, the type of encoder, the type of signals, etc.

6.4.1 Type of position encoder

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
posEncoderType 400003
distPerMotorTurn 400004
distPerMotorTurnF 400020
posEncoderDist 400005
posEncoderIncr 400006
CfgReferencing
refAuxFunctions
endatSerial 400415

The parameter object CfgAxisHardware is not required for:


 Virtual axes (MP_axisMode = Virtual)
 In MP_posEncoderType, define the type of position measurement and the
type of position encoder or speed encoder.
 In MP_distPerMotorTurn, define the traverse distance per motor
revolution.
 Optionally, you can enter a formula instead of a fixed value for the traverse
distance per motor revolution in MP_distPerMotorTurnF.
If you enter a formula, MP_distPerMotorTurn has no function.
Entering a formula is only useful if a position encoder is connected to the
axis.

January 2015 6.4 Encoders 1055


MP_posEncoderType
Position measurement via position encoder or motor encoder
Available from NCK software version: 597110-01.
Format: Selection menu
Options: MC_DISTANCE_CODED
Distance-coded position encoder on the MC (X01 to X06 and
X35 to X38)
MC_NOT_DISTANCE_CODED
Not a distance-coded position encoder on the MC (X01 to X06
and X35 to X38)
MC_ENDAT
EnDat position encoder on the MC (X01 to X06 and X35 to X38)
NO_ENCODER
No position measurement
CC_MOTOR_ENCODER
Position measurement by speed encoder on the CC (X15 to X20
and X80 to X83)
CC_DISTANCE_CODED
Distance-coded position encoder on the CC (X201 to X210)
CC_NOT_DISTANCE_CODED
Not a distance-coded position encoder on the CC (X201 to
X210)
CC_MOTOR_ENDAT
Position measurement by EnDat speed encoder on the CC (X15
to X20 and X80 to X83)
CC_EXTERN_ENDAT
External EnDat encoder on the CC (X201 to X210)
CC_MOTOR_ENDAT_INCR
HEIDENHAIN EnDat interface box (EIB) on the CC (X201 to
X210)
CC_EXTERN_ENDAT_INCR
HEIDENHAIN EnDat interface box (EIB) on the CC (X201 to
X210)
MC_NOT_DISTANCE_CODED_CC_ENDAT
In development
CC_EXTERN_ENDAT_2_2
External EnDat 2.2 encoder on the CC (X201 to X210)
Default: CC_MOTOR_ENCODER
Access: LEVEL3
Reaction: RUN

1056 HEIDENHAIN Technical Manual TNC 640


MP_posEncoderType
Position measurement via position encoder or motor encoder
Available from NCK software version: 597110-01.
Format: Selection menu
Options: MC_DISTANCE_CODED
Distance-coded position encoder on the MC (X01 to X04, X05
optional)
MC_NOT_DISTANCE_CODED
Non-distance-coded position encoder on the MC (X01 to X04,
X05 optional)
MC_ENDAT
EnDat position encoder on the MC (X01 to X04, X05 optional)
NO_ENCODER
No position measurement
Default: NO_ENCODER
Access: LEVEL3
Reaction: RUN

The connectors X35 to X38, X80 to X83 and X201 to X210 do not exist on the
MC 420. X35 to X38 are available only on the MC 422x with 10 control loops,
X80 to X83 only on the CC 42x with 10 or 12 control loops, and X201 to X210
only on the CC 424.

Note

When EnDat encoders that have not yet been adjusted are put into service,
field orientation must be performed prior to operation, See "Field
orientation" on page 1671.

January 2015 6.4 Encoders 1057


MP_distPerMotorTurn
Distance of one motor revolution
(compare to iTNC 530: MP1054)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 001 to 2000 [mm] or [°]
Default: 5 [mm] or [°]
Access: LEVEL3
Reaction: REF

Note

The parameter MP_distPerMotorTurn is not effective for analog axes.

MP_distPerMotorTurnF
Formula for the distance covered in one motor revolution
Available from NCK software version: 597110-06.
Format: String
Input: Formula (max. 300 characters), (1)
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN
(1) See page 567 for the syntax for entering formulas in
MP_distPerMotorTurnF.

Connecting The EIB (External Interface Box) makes it possible to connect encoders with
encoders through incremental 1 VPP signals to the purely serial EnDat 2.2 interface of the
the EIB control. This has the advantage that single-shielded cables with smaller
connectors and a smaller diameter can be used as encoder cables.
In MP_endatSerial, enter the value TRUE if you want to connect incremental
encoders to the EnDat 2.2 interface of the control via an EIB:

MP_endatSerial
Connect incremental encoders via EIB
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
An incremental encoder is connected to the serial EnDat 2.2
interface via the EIB.
FALSE
No EIB being used.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

1058 HEIDENHAIN Technical Manual TNC 640


6.4.2 Signal period of encoders

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
distPerMotorTurn 400004
distPerMotorTurnF 400020
posEncoderDist 400005
posEncoderIncr 400006
CfgReferencing
posEncoderRefDist 400416

For any given distance the position encoder supplies a fixed number of signal
periods. The signal (except for EnDat 2.2 encoders) is also interpolated in the
control.
The settings you need to define may vary depending on the type of position
measurement on your machine.

Linear encoder General information


The TNC 640 requires the following values:
 MP_posEncoderDist: For each axis, enter the distance required for the
number of grating periods given in MP_posEncoderIncr.
 MP_posEncoderIncr: Enter the number of grating periods required for the
distance given in MP_posEncoderDist.
 MP_distPerMotorTurn: Enter the traverse distance per motor revolution.
 MP_distPerMotorTurnF: Optionally, you can enter a formula instead of a
fixed value for the traverse distance per motor revolution.
If you enter a formula, MP_distPerMotorTurn has no function.
The TNC 640 calculates the quotient:

MP_posEncoderDist
Signal period = --------------------------------------------------------------------
MP_posEncoderIncr

January 2015 6.4 Encoders 1059


The TNC 640 needs the following values for linear encoders with EnDat 2.1
interface or for linear encoders with EnDat 2.2 interface, which supply a
grating period:
 MP_posEncoderDist: For each axis, enter the length of one grating period
of the encoder.
 MP_posEncoderIncr: Enter the number of increments per grating period.
 MP_distPerMotorTurn: Enter the traverse distance of the axis per motor
revolution.
 MP_distPerMotorTurnF: Optionally, you can enter a formula instead of a
fixed value for the traverse distance per motor revolution.
If you enter a formula, MP_distPerMotorTurn has no function.

Note

The MC 320 (TNC 320) and MC 320T (MANUALplus 620) main computers
do not yet support the connection of EnDat 2.2 encoders.

1060 HEIDENHAIN Technical Manual TNC 640


Linear encoders with an EnDat 2.2 interface without grating period may be
available in future. In this case, the controller unit will treat the linear encoder
as if it had an interpolation of "1." The TNC 640 requires the following values:
 MP_posEncoderDist: Enter the resolution of the linear encoder (indicated
on the ID label, e.g. 0.005 µm).

Note

The resolution always has to be entered in the unit [mm]!

 MP_posEncoderIncr: Enter the value 1.


 MP_distPerMotorTurn: Enter the traverse distance of the axis per motor
revolution.
 MP_distPerMotorTurnF: Optionally, you can enter a formula instead of a
fixed value for the traverse distance per motor revolution.
If you enter a formula, MP_distPerMotorTurn has no function.
HEIDENHAIN offers incremental linear encoders with distance-coded
reference marks. The nominal increment between two fixed reference marks
depends on the encoder being used.
 For encoders with distance-coded reference marks, enter for each axis the
nominal increment between two fixed reference marks in
MP_posEncoderRefDist.
Examples:
 LS 487C:
Incremental linear encoder with distance-coded reference marks. Grating
period of 20 µm (1 signal period covers 0.02 mm). Nominal increment
between reference marks is 20 mm. The axis moves 10 mm per motor
revolution.
MP_posEncoderDist = 0.02
MP_posEncoderIncr =1
MP_distPerMotorTurn = 10
20 mm
MP_posEncoderRefDist = 0.02 ---------------------------- =1000 [signal periods]
0,02 mm mm

 LC 483:
Absolute linear encoder with EnDat. Grating period of 20 µm (1 signal period
covers 0.02 mm). The axis moves 10 mm per motor revolution.
MP_posEncoderDist = 0.02
MP_posEncoderIncr =1
MP_distPerMotorTurn = 10

 LC 483 (EnDat 2.2 without signal period):


Absolute linear encoder with EnDat 2.2 without indication of the grating
period. Resolution 0.005 µm. The axis moves 10 mm per motor revolution.
MP_posEncoderDist = 0.000005
MP_posEncoderIncr =1
MP_distPerMotorTurn = 10

January 2015 6.4 Encoders 1061


Rotary encoders General information
angle encoder,
The TNC 640 requires the following values:
motor encoder
 MP_posEncoderDist: For each axis, enter the traverse distance per motor
revolution.
 MP_posEncoderIncr: For each axis, enter the number of grating periods per
motor revolution.
 MP_distPerMotorTurn: For each axis, enter the traverse distance per
motor revolution.
 MP_distPerMotorTurnF: Optionally, you can enter a formula instead of a
fixed value for the traverse distance per motor revolution.
If you enter a formula, MP_distPerMotorTurn has no function.

Note

Ensure that the line count per rotary encoder revolution specified by the
manufacturer is entered in the MP_posEncoderIncr parameter. This value
is used for the plausibility check of the measured value. If you enter a line
count that differs from the one specified by the manufacturer, the TNC 640
displays an error message.

The TNC 640 calculates the quotient:

MP_posEncoderDist
Signal period = --------------------------------------------------------------------
MP_posEncoderIncr

For motor encoders with EnDat 2.2 interface the TNC 640 requires the
following values:

Note

Encoders with EnDat 2.2 interface usually do not supply any incremental
signals. Only a purely digital measured value is transferred to the TNC 640.
For this reason, the number of signal periods per encoder revolution
(MP_posEncoderIncr) must be set to the value 1.

Note

The MC 320 (TNC 320) and MC 320T (MANUALplus 620) main computers
do not yet support the connection of EnDat 2.2 encoders.

1062 HEIDENHAIN Technical Manual TNC 640


The controller unit assumes that the motor encoder has only one line per
revolution. Set the following:
 MP_posEncoderDist:: For each axis, enter the traverse distance per motor
revolution.
 MP_posEncoderIncr: Enter the value 1.
 MP_distPerMotorTurn: For each axis, enter the traverse distance per
motor revolution.
 MP_distPerMotorTurnF: Optionally, you can enter a formula instead of a
fixed value for the traverse distance per motor revolution.
If you enter a formula, MP_distPerMotorTurn has no function.
 CfgServoMotor - MP_motStr (401313): Enter the value 1 for the line count
of the motor encoder.

Note

HEIDENHAIN recommends:
The optimum manufacturing precision can only be attained with linear
encoders. A control without linear encoders finds the axis position through
the pitch of the ball screw. The problem is, the ball screw gets hot during
machining and expands. And the result is a position measurement that
deviates from the actual position, causing error. With linear encoders, the
control always determines the correct slide position. This means that your
machine positions its axes with constantly high precision.
More information is available on the Internet at:
http://www.heidenhain-shows-the-way.com

Examples:
 ERN 1387 – Only motor encoder (no linear encoder):
Incremental rotary encoder for servo drives. 2048 lines per 360°. The axis
moves 10 mm per motor revolution.
MP_posEncoderDist = 10
MP_posEncoderIncr = 2048
MP_distPerMotorTurn = 10
MP_posEncoderType = CC_MOTOR_ENCODER

 RON 785C on rotary table with direct drive:


Incremental angle encoder with integral bearing and distance-coded
reference marks. 18 000 lines per 360°. 36 reference marks. Nominal
increment between reference marks is 20°.
MP_posEncoderDist = 360
MP_posEncoderIncr = 18000
MP_distPerMotorTurn = 360
360
MP_posEncoderRefDist = 20 ÷ -------------------
18000
=1000 [signal periods]

MP_posEncoderType = CC_DISTANCE_CODED

January 2015 6.4 Encoders 1063


 RCN 729 with gear transmission on rotary table:Absolute angle encoder
with EnDat 2.1 interface and integral bearing. 32 768 lines per 360°. Gear
transmission ratio: 17:1
MP_posEncoderDist = 360
MP_posEncoderIncr = 32768
360
MP_distPerMotorTurn = ------- = 21.17647059
17
MP_posEncoderType = CC_EXTERN_ENDAT

 RCN 2310 on rotary table with direct drive:


Absolute angle encoder with EnDat 2.2 (without incremental signals). The
rotary table moves by 3° per motor revolution.
MP_posEncoderDist= 360
MP_posEncoderIncr = 1
MP_distPerMotorTurn = 3
MP_posEncoderType = CC_EXTERN_ENDAT_2_2

 EQN 1325 – Only motor encoder (no linear encoder):


Absolute multiturn rotary encoder for servo drives with EnDat 2.1. 2048
lines per 360°. The axis moves 10 mm per motor revolution.
MP_posEncoderDist = 10
MP_posEncoderIncr = 2048
MP_distPerMotorTurn = 10
MP_posEncoderType = CC_MOTOR_ENDAT

 EQN 1337 – Only motor encoder (no linear encoder):


Absolute multiturn rotary encoder for servo drives with EnDat 2.2. (without
incremental signals). The axis moves 10 mm per motor revolution.
MP_posEncoderDist = 10
MP_posEncoderIncr =1
MP_distPerMotorTurn = 10
MP_posEncoderType = CC_MOTOR_ENDAT

For spindles, the TNC 640 requires the following values:


 MP_posEncoderDist: Enter 360.
 MP_posEncoderIncr: Enter the line count of the encoder used.
 MP_distPerMotorTurn: Enter 360.

MP_posEncoderDist
Distance for number of signal periods from MP_posEncoderIncr
(compare to iTNC 530: MP331)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 001 to 99 999.9999 [mm] or [°]
For spindles: 360°
For multiturn encoders with EnDat interface:
Distance per encoder revolution
Default: 5 [mm] or [°]
Access: LEVEL3
Reaction: REF

1064 HEIDENHAIN Technical Manual TNC 640


MP_posEncoderIncr
Number of signal periods for distance from
MP_posEncoderDist
(compare to iTNC 530: MP332, MP3142)
Available from NCK software version: 597110-01.
Format: Number
Input: 1 to 16 777 215 [incr]
Enter the number of increments of the external encoder. For
spindles you must enter the line count of the rotary encoder
used.
For multiturn encoders with EnDat interface:
Signal periods per encoder revolution
Default: 2048 [incr.]
Access: LEVEL3
Reaction: REF

MP_posEncoderRefDist
Nominal distance between two fixed reference marks
(compare to iTNC 530: MP334)
Available from NCK software version: 597110-01.
Format: Number
Input: –65 535 to 65 535 [signal periods]
Number of signal periods between the reference marks. The
parameter is only relevant for encoders with distance-coded
reference marks.
Default: 100 [signal periods]
Access: LEVEL3
Reaction: REF

January 2015 6.4 Encoders 1065


EnDat encoders
with multiturn
information Settings in the configuration editor MP number
Axes
CfgEndatInfo 403500
[Serial number of the EnDat encoder]
endatMultiturnCtr 403501
endatOverflowPos 403502
motName 403503

For each EnDat encoder with multiturn information detected by the TNC, a
parameter set is automatically created under CfgEndatInfo. Its key name is
the serial number of the EnDat encoder. The control will cyclically and before
shut-down save the current value of the multiturn overtravel counter of the
encoder in MP_endatMultiturnCtr under CfgEndatInfo.
Each time the control starts up, all entries in CfgEndatInfo are compared to
the actually detected hardware and, if the serial numbers of the encoders
match, MP_endatMultiturnCtr is evaluated. In this process, the switch-off
position of the axis is compared to the position resulting from an offset of the
currently supplied encoder value from MP_endatMultiturnCtr.
If the difference detected by the control is too big, an EMERGENCY STOP will
be triggered and a "Evaluation of EnDat encoder" dialog opens where the
machine operator is prompted to confirm the MP_endatMultiturnCtr value
newly calculated by the control. If you find that the value calculated by the
control is not correct, you can use the configuration editor to enter the value
of this machine parameter manually.
As a general rule, the machine operator must compare the current physical
position to the current position displayed in the dialog before taking over
current positions to the control SRAM.
If a rotary axis with modulo counting mode with EnDat encoder with multiturn
information is used, you also need MP_endatOverflowPos to save a
reference value upon leaving the multiturn range. In such a constellation, you
need to set refAuxFunctions/MP_multiturnModulo = TRUE to enable the
save of this reference value in MP_endatOverflowPos.

1066 HEIDENHAIN Technical Manual TNC 640


MP_endatMultiturnCtr
Modulo axis with multiturn EnDat rotary encoder. Usually, the
value is entered automatically by the control.
Available from NCK software version: 597110-09.
Format: Number
Input: -2147483648 to 2147483647
Default: 0
Access: LEVEL3
Reaction: NOTHING

MP_endatOverflowPos
Metric position of the last EnDat overflow. Usually, the value is
entered automatically by the control.
Available from NCK software version: 597110-09.
Format: Number
Input: 0 to 360
Default: 0
Access: LEVEL3
Reaction: NOTHING

MP_motName
Name of the motor from the motor table
Available from NCK software version: 597110-09.
Format: String
Input: Selection from the motor table
Access: LEVEL3
Reaction: NOTHING

MP_multiturnModulo
Modulo axis with multiturn EnDat rotary encoder
Available from NCK software version: 597110-09.
Format: Selection menu
Options: TRUE
For endlessly rotating axes (spindles) with gear transmission
and a motor encoder with multiturn EnDat interface, the control
saves a reference value in SRAM upon leaving the multiturn
range. Thus, the reference point can be reestablished at any
time when the control is switched on, even if the last position
was outside the multiturn range.
FALSE
No modulo axis with multiturn EnDat rotary encoder
Default: FALSE
Access: LEVEL3
Reaction: RESET

January 2015 6.4 Encoders 1067


6.4.3 Distance-coded reference marks

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
posEncoderRefDist 400416

The parameter object CfgAxisHardware is not required for:


 Virtual axes (MP_axisMode=Virtual)

HEIDENHAIN provides linear encoders and angle encoders with distance-


coded reference marks. The nominal increment between two fixed reference
marks depends on the encoder being used.
 For encoders with distance-coded reference marks, the nominal increment
between two fixed reference marks enter for each axis in
MP_posEncoderRefDist.
Example:
LS 486C: Incremental linear encoder with distance-coded reference marks
Grating period 20 µm (= one signal period covers 0.02 mm), nominal
increment between reference marks is 20 mm.
MP_posEncoderDist = 0.02
MP_posEncoderIncr = 1
20 mm
MP_posEncoderRefDist = ---------------------------- =1000 [signal periods]
0.02
0,02 mm

MP_posEncoderRefDist
Nominal increment between two fixed reference marks
Available from NCK software version: 597 110-01.
Format: Number
Input: 1 to 65 535 [signal periods]
Number of signal periods between the reference marks. The
parameter is only relevant for encoders with distance-coded
reference marks.
Default: 1000 [signal periods]
Access: LEVEL3
Reaction: REF

1068 HEIDENHAIN Technical Manual TNC 640


External
interpolation (only
CC 61xx and Settings in the configuration editor MP number
CC 424)
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
genExtIntPolFactor 400017

If you connect encoders with TTL signals and external interpolation electronics
through the TTL/1 VPP adapter to the control:
 In MP_genExtIntPolFactor, enter the interpolation factor of the external
interpolation unit.

MP_genExtIntPolFactor
External interpolation for encoder signals
(compare to iTNC 530: MP340)
Available from NCK software version: 597110-03.
Format: Number
Input: 0 to 99
0, 1: No external interpolation
Default: 0, optional parameter
Access: LEVEL3
Reaction: REF

January 2015 6.4 Encoders 1069


6.4.4 Connecting the encoders

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
posEncoderInput 400008
posEncoderSignal 400009
posEncoderFreq 400010

The parameter object CfgAxisHardware is not required for:


 Virtual axes (MP_axisMode=Virtual)

Position encoder MP_posEncoderInput


input Assignment of a position encoder input to the axis
(compare to iTNC 530: MP110, MP111)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: none
No position encoder connected
X01...X06
Position encoder inputs are X01 to X06 (on the MC 32x or
MC 128)
Default: none
Access: LEVEL3
Reaction: REF

1070 HEIDENHAIN Technical Manual TNC 640


Position encoder Position encoders supply 1 VPP or 11 µAPP signals. Define the type of signal,
signal input frequency and terminating resistance in the following machine
parameters.
 MP_posEncoderSignal: 1 Vpp or 11 µAPP signal
 MP_posEncoderFreq: Maximum input frequency

MP_posEncoderSignal
Signal size at the position encoder input
(compare to iTNC 530: MP115.0, MP116.0)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: 1 Vpp
Input signal of encoder is 1 Vpp
11 uA
Input signal of encoder is 11 µA
Default: 1 Vpp
Access: LEVEL3
Reaction: RUN

Note

The incremental track data must be entered for the corresponding position
encoder inputs for encoders with EnDat interfaces.

January 2015 6.4 Encoders 1071


6.4.5 Connecting the encoders, PWM output on the CC 61xx

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
posEncoderInput 400008
posEncoderSignal 400009
posEncoderFreq 400010
posEncoderResistor 400011
speedEncoderInput 400012
inverterInterface 400013
hsciCcIndex 400014

On the CC 61xx, there is a fixed assignment between the input of the speed
encoder, the PWM output and the input of the position encoder.
 You must wire all connections as listed in the table below.
 Enter the machine parameters MP_posEncoderInput,
MP_speedEncoderInput and MP_inverterInterface as shown in the table.
 Fixed connector assignment when using a CC 61xx:

PWM output Speed input Position input


(MP inverterInterface) (MP_speedEncoderInput) (MP_posEncoderInput)

X51 X15 X201

X52 X16 X202

X53 X17 X203

X54 X18 X204

X55 X19 X205

X56 X20 X206

1072 HEIDENHAIN Technical Manual TNC 640


MP_speedEncoderInput
Assignment of a speed encoder input to the axis
(compare to iTNC 530: MP112)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: none
No speed encoder connected
X15...X20
Speed encoder inputs are X15 to X20
X80...X83
Speed encoder inputs are X80 to X83
X301...X306
Reserved
Inverter
Reserved
Default: none
Access: LEVEL3
Reaction: REF

MP_inverterInterface
Assignment of the speed command output to the axis
(compare to iTNC 530: MP120, MP121)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: none
Not a PWM output, no power module connected
X51...X56
PWM outputs are X51 to X60
X80...X85
Only on UEC 11x: Motor connections are X80 to X85
X301.1 to X305.2
Reserved
Default: none
Access: LEVEL3
Reaction: REF

MP_posEncoderInput
Assignment of a position encoder input to the axis
(compare to iTNC 530: MP110, MP111)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: none
No position encoder connected
X01 to X06
Position encoder inputs are X01 to X06 (on the MC 42x)
X35...X38
Position encoder inputs are X35 to X38 (on the MC 42x)
X201...X210
Position encoder inputs are X201 to X210 (on the CC)
Default: none
Access: LEVEL3
Reaction: REF

January 2015 6.4 Encoders 1073


Assigning axes to Use the MP_hsciCcIndex parameter to assign the axes to the individual drive-
the drive-control control motherboards of the CC 61xx in the HSCI system. The HSCI address
motherboard of the respective drive-control motherboard serves as entry in
MP_hsciCcIndex. The HSCI address is obtained from the position of the drive-
control motherboard in the HSCI system. However, the HSCI address to be
entered only depends on the drive-control motherboards in the system. I/O
units (PLs) and machine operating panels (MBs) are not taken into account.
This means that for the first controller basic PCB, you have to enter the
address 0 in MP_hsciCcIndex, regardless of whether there are I/O units or
machine operating panels in the HSCI chain before the CC.
The parameter is optional and, when it is hidden, automatically has the default
value 0. Therefore you do not have to enter anything when using a
CC 6106.MP_inverterInterface is used for further assignment of the axes to
the outputs of the respective drive-control motherboard.

MP_hsciCcIndex
Index of the CC 61xx controller unit in the HSCI chain
Available from NCK software version: 597110-03.
Format: Number
Input: Index of the CC in the HSCI system, e.g. "0"
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

1074 HEIDENHAIN Technical Manual TNC 640


Position encoder Incremental position encoders with 1 VPP signals and absolute encoders with
signal EnDat interface can be connected to the CC 61xx.
Define the type of signal, input frequency and terminating resistance in the
following machine parameters:
 MP_posEncoderSignal: 1 VPP signal. On encoders with EnDat interface
you set the signal type 1 VPP.

Note

The CC 61xx does not support encoders with 11 µAPP signal!

 MP_posEncoderFreq: Maximum input frequency


 MP_posEncoderResistor: Terminating resistor

MP_posEncoderSignal
Signal size at the position encoder input
(compare to iTNC 530: MP115.0, MP116.0)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: 1 Vpp
Input signal of encoder is 1 Vpp
Default: 1 Vpp
Access: LEVEL3
Reaction: RUN

MP_posEncoderFreq
Input frequency of position encoder inputs
(compare to iTNC 530: MP115.2, MP116.2)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: fast
Input frequency is max. 400 kHz
slow
Input frequency is max. 27 kHz
Default: fast
Access: LEVEL3
Reaction: RUN

January 2015 6.4 Encoders 1075


With MP_posEncoderResistor you define whether a terminating resistor is
required. (120 ohms)
This parameter may be required if the encoder signals are looped through a
drive motor, or if Y cables are used. It is usually sufficient to set the parameter
to without.

MP_posEncoderResistor
Terminating resistor at position encoder input
(compare to iTNC 530: MP115.1, MP116.1)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: without
Without terminating resistor
120 Ohm
With resistor
Default: without
Access: LEVEL3
Reaction: RUN

Note

For encoders with EnDat interfaces, the incremental track data must be
entered for the corresponding position encoder inputs.

1076 HEIDENHAIN Technical Manual TNC 640


6.4.6 Connecting the encoders to the UEC 11x

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
posEncoderInput 400008
posEncoderSignal 400009
posEncoderFreq 400010
posEncoderResistor 400011
speedEncoderInput 400012
inverterInterface 400013

On the UEC 11x there is a fixed assignment between the input of the speed
encoder, the motor connection and the input of the position encoder.
The PWM outputs of the controller unit integrated in the UEC 11x are
connected internally with the inverter and are not routed toward the outside.
Therefore you have to enter the number of the motor connection (X80 to X84)
in the MP_pwmSignalOutput parameter.
 You must wire all connections as listed in the table below.
 Enter the machine parameters MP_posEncoderInput,
MP_speedEncoderInput and MP_inverterInterface as shown in the table.
 Fixed connector assignment when using a UEC 11x:

Motor connection Speed input Position input


(MP inverterInterface) (MP_speedEncoderInput) (MP_posEncoderInput)

X80 X15 X201

X81 X16 X202

X82 X17 X203

X83 X18 X204

X84 X19 X205

January 2015 6.4 Encoders 1077


MP_speedEncoderInput
Assignment of a speed encoder input to the axis
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: none
No speed encoder connected
X15 to X20
Speed encoder inputs are X15 to X20
X80 to X83
Speed encoder inputs are X80 to X83
Default: none
Access: LEVEL3
Reaction: RESET

MP_inverterInterface
Assignment of the speed command output to the axis
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: none
Not a PWM output, no power module connected
X51 to X56
PWM outputs are X51 to X60
X80 to X85
Only on UEC 11x: motor connections are X80 to X85
Default: none
Access: LEVEL3
Reaction: RESET

MP_posEncoderInput
Assignment of a position encoder input to the axis
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: none
No position encoder connected
X01 to X06
Position encoder inputs are X01 to X06 (on the MC 42x)
X35 to X38
Position encoder inputs are X35 to X38 (on the MC 42x)
X201 to X210
Position encoder inputs are X201 to X210 (on the CC)
Default: none
Access: LEVEL3
Reaction: RESET

1078 HEIDENHAIN Technical Manual TNC 640


6.4.7 Defining the traverse direction

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
signCorrActualVal 400001
signCorrNominalVal 400002
CfgSpindle
changeTurnDir 401509

The parameter object CfgAxisHardware is not required for:


 Virtual axes (MP_axisMode=Virtual)
For analog axes (TNC 320), define whether the sign of the nominal position
value and/or the sign of the nominal speed value are/is to be reversed,
depending on the mounting position of the encoders. Both parameters must
be inverted if the traverse direction of the axis is to be reversed.
When using the CC 61xx (TNC 620) , define the counting directions and the
traverse direction of the axis, depending on the mounting attitude of the
encoders.

Block diagram:
Defining the
traverse direction

January 2015 6.4 Encoders 1079


Legend:

Signal Parameter Entry / Effect


A MP_signCorrActualVal Invert the value if the counting direction
of the position encoder is opposite to the
direction of rotation of the motor.
Set the parameter to the value FALSE if
position is measured only by motor
encoder (Semi-Closed Loop).
B MP_signCorrNominalVal Changing the parameter inverts the
nominal values for position and speed as
well as the actual values of the position
encoder. The axis changes the traverse
direction.
C DIR column from motor Counting direction of the motor encoder
table

MP_signCorrActualVal
Reversal of the algebraic sign of the position encoder signal
(Compare to iTNC 530:
In dual-encoder system MP1040 XOR MP210,
in single-encoder system off)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
The algebraic sign of the position encoder is inverted.
off
The algebraic sign of the position encoder is not inverted.
Default: off
Access: LEVEL3
Reaction: REF

MP_signCorrNominalVal
Reversal of the algebraic sign of the nominal speed value
(Compare to iTNC 530: MP210)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
The algebraic sign of the nominal values for position and speed
and the actual values of the position encoder are inverted.
off
No reversal of the algebraic sign of the nominal values for
position and speed and the actual value of the position encoder.
Default: off
Access: LEVEL3
Reaction: REF

1080 HEIDENHAIN Technical Manual TNC 640


Correlation between NCK and iTNC parameters with dual encoder system:

signCorrActualVal signCorrNominalVal MP1040 MP210

off off 0 0

on off 1 0

on on 0 1

off on 1 1

Correlation between NCK and iTNC parameters with single encoder system:

signCorrActualVal signCorrNominalVal MP1040 MP210

off off 0 0

off off 1 0

off on 0 1

off on 1 1

Note

The counting direction of the motor encoder for speed control is defined in
the motor table (DIR column). An incorrect entry results in the error
message C3B0 Motor does not rotate <AXIS> appearing.

January 2015 6.4 Encoders 1081


Direction of If a spindle should also be operated as a C axis with the same motor, the
rotation for direction of rotation of the C axis in the parameter block for C axis operation
spindles in C-axis should first be set via the parameters MP_signCorrActualVal and
operation MP_signCorrNominalVal to give a mathematically positive angle increase
(anticlockwise) when the physical spindle axis mathematically rotates
negatively (i.e. clockwise). The sign flags for the C axis are then also adopted
in the parameter set for spindle operation without being modified. If, as a
result of this, the direction of rotation of the spindle is not correct during
spindle operation, the direction of the spindle rotation must be corrected in M3
and M4.
In this case, correct the direction of spindle rotation and the status display (M3/
M4) of the spindle by setting MP_changeTurnDir to TRUE. This setting
regulation eliminates the need for a parameter-set switchover that would
require re-referencing after every switchover between spindle operation and
C axis operation. Also in this case, with the use of EnDat encoders no
deviations between the switch-off and switch-on positions can occur when
changing from spindle operation to C axis operation.

MP_changeTurnDir
Rotational direction reversal with M3 and M4
Available from NCK software version: 597110-04.
Format: Selection menu
Options: TRUE
Reversal of rotational direction is active with M3/M4
FALSE
Reversal of rotational direction is not active with M3/M4
Default: TRUE
Access: LEVEL3
Reaction: RUN

1082 HEIDENHAIN Technical Manual TNC 640


6.4.8 Encoder monitoring

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
checkAbsolutPos 400701
checkSignalLevel 400702
checkFrequency 400703
checkEncoderState 400707
checkRefDistance 400704

HEIDENHAIN contouring controls monitor the signal transmission from the


position encoders.
The parameter object CfgEncoderMonitor is not required for:
 Virtual axes (MP_axisMode = Virtual)

Position encoder Activate the following monitoring functions:


 MP_checkAbsolutPos:
Monitor the absolute position of position encoders with distance-coded
reference marks
 MP_checkSignalLevel:
Monitor the amplitude of the position encoder signal
 MP_checkFrequency:
Monitor the edge separation of the position encoder signal

Note

The edge separation is monitored by the CC controller unit. Therefore, the


MP_checkFrequency parameter is currently not available on controls with
analog command interface to the drive motors.

 MP_checkRefDistance:
Monitor the reference mark of the spindle encoder (distance between zero
crossovers of the spindle)

January 2015 6.4 Encoders 1083


The interpolator calculates the absolute position when a reference mark of a
distance-coded encoder is crossed over. If MP_checkAbsolutPos is active,
the nominal values are compared to the actual values. If deviations are found,
an error message is displayed and an emergency stop is initiated.

MP_checkAbsolutPos
Monitoring the absolute position with distance-coded encoder
(compare to iTNC 530: MP20.0)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Monitor the absolute position
off
No monitoring
Default: off
Access: LEVEL3
Reaction: RUN

MP_checkSignalLevel
Monitor the amplitude of the position-encoder signal
(compare to iTNC 530: MP20.1)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Monitor the encoder amplitude.
off
No monitoring
Default: on
Access: LEVEL3
Reaction: RUN

MP_checkFrequency
Monitor the edge separation of the position encoder
(compare to iTNC 530: MP20.2)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Monitor the encoder frequency.
off
No monitoring
Default: off
Access: LEVEL3
Reaction: RUN

Criterion Error message


Absolute position with distance- Encoder <AXIS> DEFECTIVE
coded reference marks
Amplitude of the encoder signal Encoder AMPLITUDE TOO LOW <AXIS>
Edge separation of the encoder Encoder <AXIS>: FREQUENCY TOO HIGH
signal

1084 HEIDENHAIN Technical Manual TNC 640


Monitoring of In the event of a disturbance, the error message EnDat defective <error
encoders with code> <axis> will appear.
EnDat interface
The error code is shown in hexadecimal notation. Error codes may also appear
combined, in which case they are added together.
There are two possible types of errors:
 The encoder reports an error.
 Access to the encoder via the EnDat interface is faulty.
Codes for errors reported by the encoder:

Error code Meaning


0x00000001 Light source defective
0x00000002 Signal amplitude too low
0x00000004 Incorrect position value
0x00000008 Overvoltage
0x00000010 Undervoltage
0x00000020 Overcurrent
0x00000040 Replace the battery
0x00000080 Reserved
0x00000100 Reserved
0x00000200 Reserved
0x00000400 Reserved
0x00000800 Reserved
0x00001000 Reserved
0x00002000 Reserved
0x00004000 Reserved
0x00008000 Reserved

January 2015 6.4 Encoders 1085


Error codes if the access to the encoder via the EnDat interface is faulty:

Error code Meaning


0x80010000 Delete the alarm bit
0x80020000 Read the alarm status
0x80040000 Read the number of pulses
0x80080000 Read the number of signal periods
0x80100000 Read the number of differentiable revolutions
0x80200000 Read the measuring steps
0x80400000 Read the serial number
0x80800000 Read the encoder type
0x81000000 Read the position value
0x82000000 Reserved
0x84000000 Reserved
0x88000000 Read the checksum
0x90000000 Alarm bit remains set
0xA0000000 Timeout while waiting for data signal "high"
0xC0000000 Timeout while waiting for data signal "low"
0x80000000 Error during access to EnDat interface

1086 HEIDENHAIN Technical Manual TNC 640


Monitoring the  MP_checkEncoderState enables you to activate or deactivate the
status signals of monitoring of the status signals of encoders with EnDat 2.2 interface.
encoders with The status signals are returned using the ERR_ENCODER_STATE bit. The following
EnDat 2.2 interface signals are monitored:
 Position could not be ascertained (bit 2 = 1)
 CRC error during EnDat 2.2 transmission (bit 3 = 1)
 No position measurement with EnDat 2.2 (bit 4 = 1)
 Alarm 1 with EnDat 2.2 (bit 5 = 1)
 Alarm 2 with EnDat 2.2 (bit 6 = 1)
 Timeout during EnDat 2.2 transmission (bit 7 = 1)

MP_checkEncoderState
Monitoring of encoder status signals
Available from NCK software version: 597110-08.
Format: Selection menu
Options: on
Monitoring active
off
No monitoring
Default: off
Access: LEVEL3
Reaction: RUN

Note

The encoder status signals are transmitted from the CC controller unit to
the MC main computer for evaluation. Therefore, the
MP_checkEncoderState parameter is not available on controls with analog
command interface to the drive motors.

January 2015 6.4 Encoders 1087


Speed encoder The TNC 640 uses the Type of encoder entry in the "motor.mot" motor table.
If an encoder with Z1 track is entered in the motor table, the message C310 Z1
track error appears in the event of an error. If an encoder with EnDat
interface is entered in the motor table, the TNC 640 attempts to communicate
with the encoder. If this fails, the error message C3F0 EnDat not found <axis>
appears.
For digital axes the speed encoders are always monitored if the drive is
switched on via PLC Module 9161.

Attention

If you use the HEIDENHAIN standard motor table motor.mot and motors
with EnDat encoders, you might have to change the entry for the motor in
the SYS column (type of encoder) of the motor table or enter a new motor.
 SYS = 1: Incremental rotary encoder with Z1 track
 SYS = 2: Absolute speed encoder with EnDat interface

1088 HEIDENHAIN Technical Manual TNC 640


6.4.9 Linear and torque motors
Linear and torque motors may be used only in conjunction with the CC 61xx
and CC 424. These motors should be connected to controllers with double the
controlling performance (double-speed control loops; PWM outputs X55, X56,
X57 to X60).

Linear motor setup

Primary winding

Secondary winding

Scale

Torque motor setup

Rotor
Scale
section

Stator

January 2015 6.4 Encoders 1089


Position and speed For linear and torque motors, the position encoders are used as speed
encoders encoders. Therefore, they must be connected to the speed encoder inputs
(X15 to X20, X80 to X83).
In order to adapt the pin layouts for absolute encoders with EnDat interface
(e.g. LC, RCN), you must use the line drop compensator with ID 336697-03,
and for incremental encoders with 1 VPP signals (e.g. LB, ROD) you must use
the line drop compensator with the ID 383951-01.
The temperature sensor (KTY 84) can also be connected to both line drop
compensators.

EnDat KTY CC 424


(LC 181; RCN 727; ...)

323 897-xx 336 376-xx


X15-X20

368 210-02

1VSS KTY CC 424


(LB 38xC; ...)

298 401-xx 289 440-xx


X15-X20

383 951-01

1090 HEIDENHAIN Technical Manual TNC 640


6.5 Analog Drives

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisAnalog
analogOutput 400101
maxFeedAt9V 400105

The parameter object


 CfgAxisAnalog is not required for:
• Virtual axes (MP_axisMode = Virtual)
• Axes that are for display only (MP_axisMode = Display)
• Digital axes (MP_axisHw = CC or None)
With CfgAxis/axisHw = Analog, analog closed-loop axes are identified as
such. They are described in the parameter object CfgAxisAnalog (See
"Controller parameters for analog axes" on page 1397).

Analog output  In MP_analogOutput, you define the number of the analog nominal-value
output at connector X8.
 In MP_analogOutput, you define the number of the analog nominal-value
output on the CMA-H 04-04-00.

MP_analogOutput
Speed command output of axis or spindle
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: none
No analog output assigned
analog Output 1...13
Analog outputs 1 to 6 (connector X8 on MC)
Analog outputs 1 to 4 (CMA-H 04-04-00)
Analog outputs 7 to 13 (connector X9 on MC 4xx)
Default: analog Output 1
Access: LEVEL3
Reaction: RUN

Connector X9 is only available on the MC 422x hardware with 10 control loops


and can therefore not be used on the TNC 640.
The CMA-H is only available for digital control units.
A CC 61xx has slots for up to two CMA-H 04-04-00 modules, and a UEC 11x
has a slot for a maximum of one. MP_analogOutput = analog Output 1...4
is used to address the first CMA-H, and the second CMA-H with
MP_analogOutput = analog Output 5...8, see page 410.

January 2015 6.5 Analog Drives 1091


Holding brakes for The PLC words NN_AxBrakeReleaseRequest, NN_SpiBrakeReleaseRequest
analog drive or the PLC module 9159 will only receive a brake release request for analog
motors drive motors if they have been configured using CfgBrake and MP_brakes:
 In CfgBrake, define a key name for the parameter set for each brake, and
assign the brakes to the axes using MP_brakes so that you can use the PLC
words NN_AxBrakeReleaseRequest, NN_SpiBrakeReleaseRequest or the
PLC module 9159 to control the holding brakes via the PLC program.
For analog closed-loop axes, the motor brake test is not available.
For analog closed-loop axes, the motor brake test is not available, i.e. the
machine parameters MP_connection, MP_testBrakeCurrent and
MP_testBrakeTolerance are not evaluated.

Rapid traverse for  In MP_maxFeedAt9V, enter the rapid-traverse rate to be reached at an


analog axes analog voltage of 9 V (e.g. for drives reaching the rapid traverse rate at 6 V,
the corresponding value at 9 V must be calculated by linear calculation).
 Adjust the rapid traverse feed rate (vmax) with the analog voltage at the
servo amplifier.

MP_maxFeedAt9v
Velocity at 9 volts
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 006 to 36 000 000 [mm/min] or [°/min]
Default: 4 999.98 [mm/min] or [°/min]
Access: LEVEL3
Reaction: RUN

1092 HEIDENHAIN Technical Manual TNC 640


6.6 Reading and writing axis information

6.6.1 Reading axis information


Module 9038 Read the status information of axes
Module 9038 queries the general axis status information. You can interrogate
the status of a specific axis or of all axes at once.
With bit-encoded information, the status request for a specific axis returns
code 0 or 1. The meaning of the return codes is explained in the table below.
The desired information can be read for all axes in one run-through. For this
the axis number –1 must be transferred. In this case the status request only
returns bit-encoded information. The information is then passed on in the bit
corresponding to the axis.

Status Bit Meaning


information information
0 x 0: Axis not active (MP_axisMode is not "Active"
or no encoder)
1: Axis active
1 x Axis in interpolation context?
0: Axis is currently in interpolation context or not
active.
1: Axis is currently not in interpolation context or
this axis is a spindle. (Spindles are not in
interpolation context.)
2 x 0: Open-loop axis
1: Closed-loop axis (MP_axisMode=Active)
3 – Maximum temperature of the motor [°C]
4 x 0: Not a Hirth axis
1: Hirth axis
5 – Hirth grid [1/10 µm] (MP_isHirth)
6 – Reserved
7 x 0: Linear axis or not active
1: Rotary axis (MP_isAng=True)
8 x 0: Analog axis (MP_axisHw=Analog) or not
active
1: Digital axis
9 x 0: Axis is not a slave axis
1: Axis is a slave axis
10 x Axis with unipolar drive0: no
1: Yes

January 2015 6.6 Reading and writing axis information 1093


Constraints:
 With the spindles the values 1, 4, 5 and 7 have no meaning and supply the
value 0.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
 For an axis with activation condition "displayed axis" or "manually operated
axis", status information 2 and 8 have no meaning and supply a value of 0.
The other status information supplies values according to the configuration
or activation condition.
 Status info no. 1: Might change if the traverse range is switched.
Call:
PS B/W/D/K <Axis>
Axis-specific: Index from CfgAxes/axisList
For all axes: –1
PS B/W/D/K <Status information>
See table above
CM 9038
PL B/W/D <Information>
Axis specific: Status information according to table
For all axes: Bit-encoded
(Bit 0 corresponds to logic axis 0, etc.)

Error code:

Marker Value Meaning


NN_GenApiModule 0 Information was read
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information not available
ErrorCode 2 Axis not found

1094 HEIDENHAIN Technical Manual TNC 640


Module 9049 Read position value and speed value of an axis
Module 9049 reads the position value or speed value of an axis
Call:
PS B/W/D/K <Logical axis number>
PS B/W/D/K <Desired axis information>
2: Actual position in the reference system
3: Following error
8: Offset of the axis due to kinematic compensation in real
time
9: Distance traversed [mm] since the last lubricating pulse
10: Actual speed
11: Nominal speed
13: Utilization of drive
CM 9049
PL D <Axis information>
For 2, 3, 8: Value in 0.0001 mm or 0.0001°
For 9, 10, 11: Value in mm/min or °/min
For 13: Value in 0.001[%] with algebraic sign
Error code:

Marker Value Meaning


NN_GenApiModule 0 Axis information read
Error 1 No axis information read, error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 2 Interrogated axis number or axis
ErrorCode information invalid

January 2015 6.6 Reading and writing axis information 1095


Read the axis  Read the axis coordinates with Module 9040 (only API 1.0) or Module 9041.
coordinates
The values are saved in double words beginning at the given address.
The values for all axes are read in, regardless of whether individual axes are
excluded through the machine configuration. Values for excluded axes are
undefined.
The coordinate value of an axis remains undefined until the reference point of
an axis has been traversed.
Module 9040 Reading of axis coordinates by the PLC in the format
1/1000 (0.001) mm
Module 9040 loads the axis coordinates from the control loop for all NC axes.
The actual values in the reference system, the servo lag, the distance-to-go
and the deflection of a triggering touch probe can be loaded.
The values are saved in 10 double words in the format 1/1000 mm, beginning
at the given target address.
The module is only supported if you use the iTNC-compatible programming
interface (API 1.0). The API 1.0 cannot be used with the TNC 640.

Note

This PLC module was introduced in order to remain compatible with older
PLC programs (with API version 1.0) of older HEIDENHAIN contouring
controls. This PLC module is not supported if the symbolic programming
interface is used! Use Module 9041 instead.

Possible errors:
 The argument for the type of coordinate is outside the permitted range (2).
 The specified target address is not a double word address (4).
 The double word block cannot be written to the specified target address (4).
 You are using the symbolic programming interface.
Call:
PS K/B/W/D <Target address Dxxxx>
PS K/B/W/D <Type of coordinate>
2: Actual values in the reference system
3: Following error
4: Distance-to-go
5: Deflection (measuring touch probe)
7: Actual values in the reference system with backlash
8: Temperature compensation
9: Distance counter [mm]
CM 9040
Error code:

Marker Value Meaning


M4203 0 Data was read
1 Faulty call data

1096 HEIDENHAIN Technical Manual TNC 640


Module 9041 Reading of axis coordinates by the PLC in the format
1/10000 (0.0001) mm
Module 9041 loads the axis coordinates from the control loop for all NC axes.
The actual values in the reference system, the servo lag, the distance-to-go
and the deflection of a triggering touch probe can be loaded.
The values are saved in 10 double words in the format 1/10000 mm, beginning
at the given target address.
Call:
PS K/B/W/D <Target address Dxxxx>
PS K/B/W/D <Type of coordinate>
2: Actual values in the reference system
3: Following error
4: Distance-to-go
5: Deflection (measuring touch probe)
7: Actual values in the reference system with backlash
8: Value indicating how much the main axes (X, Y, Z) are
repositioned due to kinematic compensations
(temperature compensation and KinematicsComp)
9: Distance counter
CM 9041
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (data was read)
Error 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 2 The argument for the type of coordinate is
ErrorCode outside the permitted range
4 The given target address is not a double-
word address (i.e. cannot be divided by 4),
or the double-word block cannot be
written to the given target address

January 2015 6.6 Reading and writing axis information 1097


Current tool axis You can define the current tool axis in two ways in the NC block:
 In the HEIDENHAIN conversational dialog with TOOL CALL
 In ISO programming with G17 to G20
Module 9035 Reading status information (current tool axis)
Call:
PS B/W/D/K <100>
CM 9035
PL B/W/D <Current tool axis>
0 to n: Axes 1 to n+1
–1: No information exists about the current tool axis
Error code:

Marker Value Meaning


NN_GenApiModule 0 Tool axis was read
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information not available
ErrorCode

1098 HEIDENHAIN Technical Manual TNC 640


Reading the actual  Read the spindle coordinates with Module 9411.
spindle values

Note

You can use this module only if you are working with the new symbolic API,
See "The API 3.0 symbolic memory interface" on page 2300.

Module 9411 Read the actual spindle values (speed, coordinates)


Use Module 9411 to read the position and speed values of the spindle.
Constraints:
 This module is only supported by the new symbolic memory interface (API
3.0). If the iTNC-compatible interface is used, then Module 9411 returns
error code 99.
 If the spindle is not in a closed loop, the value 0 is returned for information
#2 (nominal position in reference system) and information #4 (servo lag).
 The values for information #10, #11 and #12 (current speed and final speed)
are signed.
 The accumulated traverse path for information #5 can be reset with Module
9418.
 Information #12 (final speed) results from the programmed speed or
number of rotations under consideration of the override and limitations. It
indicates the speed that the spindle is to reach at the end of the acceleration
ramp.
 In order to receive one of the two "Request switchover" status values for
information #20, the speed-dependent wye/delta switchover (Module 9417)
must be active.
 The accumulated traverse path for information #21 (path-dependent
lubrication) can be reset with Module 9418. Path-dependent lubrication is
not usual for spindles, but is supported in special cases.

January 2015 6.6 Reading and writing axis information 1099


Call:
PS B/W/D/K <Spindle index>
0: Spindle 1
1: Spindle 2
etc.
PS B/W/D/K <Desired spindle information>
1: Actual position in the reference system
2 : Nominal position in the reference system
4: Following error
5: Accumulated traverse path
10: Actual speed
11: Nominal speed
12: Nominal speed at the end of acceleration
20: Information about wye/delta operation
21: Information about path-dependent lubrication
CM 9411
PL D <Spindle information>
For 1 to 5: Value in 0.0001°
For 10 to 12: Value in 0.001 rpm
For 20: 0: Spindle in wye operation
1: Request for wye/delta switchover
2: Spindle in delta operation
3: Request for delta/wye switchover
For 21: 0: Traverse path for path-dependent lubrication
not reached yet
1: Traverse path for path-dependent lubrication
exceeded
Error code:

Marker Value Meaning


NN_GenApiModule 0 Actual spindle value read
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Interrogated spindle number or spindle
ErrorCode information invalid
99 Module is not supported (control operates
with iTNC-compatible API).

1100 HEIDENHAIN Technical Manual TNC 640


6.6.2 Writing axis information—activating and deactivating axes
This chapter describes how to activate and deactivate axes during operation
and without rebooting the TNC 640, e.g. in order to exchange milling heads.
The TNC 640 has two machine parameters in the CfgAxis configuration object.
They describe the type of connection and the behavior of axes:
 MP_axisHw (300104)
 MP_axisMode (300105)

Note

To enable the fundamental activating and deactivating of axes, the


parameter MP_axisMode for the applicable axes must have the value
Active

Use MP_axisMode to specify whether the affected axis is known to the


system (= Active) or not (= NotActive). If axes are not known, there is also no
need for any further parameters. Virtual axes (= Virtual) and axes controlled by
the PLC (= PlcControlled) are ignored in the checks for activating and
deactivating.
Use the parameter MP_axisHw to define the hardware type of the axis at the
time of the control startup. For the settings possible, see "MP_axisHw" on
page 1026.

January 2015 6.6 Reading and writing axis information 1101


Axes connected to the TNC 640 have different activation statuses:

Activation status Parameter Data required in the Functions


MP_axisHw parameter set
Closed-loop axis InOutCC There must be at least one Fully functional control
AnalogMC parameter set with the loop, programmable
AnalogCC controller parameters for physical axis
the axis. The digital CC
parameters are not
required for analog axes.
Manually operated ManualMC All parameters except the Axis with a linear encoder
axis ManualCC controller parameters but without drive motor—
must be available. nevertheless
programmable. Behaves
like an active axis with
respect to the PLC (axis is
included in the geometry
description)
Displayed axis DisplayMC All parameters except the Axis with a linear encoder
DisplayCC controller parameters but without servo drive—
must be available. not programmable. (Axis
included in the geometry
information.)
Deactivated axis (Axis is deactivated No monitoring active.
either over Module Encoder and drive motor
9226 or 9418, or can be removed
over the parameter mechanically.
MP_deactivatedAtS
tart.)

1102 HEIDENHAIN Technical Manual TNC 640


The following table shows the assignment of available and configurable
monitors of the axes to the various activation statuses.

Activation status Monitoring active Monitoring inactive


Closed-loop axis  Following error monitoring
 Standstill monitoring
 Movement monitoring
 Encoder amplitude monitoring
 Encoder frequency monitoring
 Positioning window
Manually operated  Encoder amplitude monitoring  Following error monitoring
axis  Encoder frequency monitoring  Standstill monitoring
 Positioning window  Movement monitoring
Displayed axis  Encoder amplitude monitoring  Following error monitoring
 Encoder frequency monitoring  Standstill monitoring
 Positioning window  Movement monitoring
Deactivated axis  Following error monitoring
 Standstill monitoring
 Movement monitoring
 Encoder amplitude monitoring
 Encoder frequency monitoring
 Positioning window

Switching If, when activating or deactivating axes via the PLC, you also switch parameter
parameter sets sets (e.g. when changing milling heads), some particular conditions apply(See
"Switching parameter sets" on page 656).

January 2015 6.6 Reading and writing axis information 1103


Switching the The activation status of an axis is switched through PLC Module 9226, and
activation status that of the spindle through PLC Module 9418. It must be kept in mind that the
activation status cannot be increased beyond that configured in MP_axisHw.
An axis that is only displayed (MP_axisHw = DisplayMC or DisplayCC), for
example, cannot be switched up to the "manually operated axis" or "closed-
loop axis" activation status. The following table shows the permissible
changes of the activation status.

Parameter Permissible change of the activation status


MP_axisHw Closed-loop Manually Displayed Deactivated
axis operated axis axis
axis
InOutCC X X X X
AnalogMC
AnalogCC
ManualMC – X X X
ManualCC
DisplayMC – – X X
DisplayCC

For example, proceed as follows if you want to activate individual axes without
rebooting:
 Switch off the servo control of the motor.
 Through Module 9226 for axes and 9418 for the spindle, use mode 14 to set
the motor to the "deactivated axis" activation status. This also deactivates all
monitoring functions of the drive. Now the servo motor can be mechanically
removed, for example to exchange a milling head.
Reverse the sequence if you want to reactivate the previously deactivated
axis.
 With Module 9226 or 9418, set the axis or spindle to the desired activation
status (mode 11 to 13)
 The servo control of the motor can now be activated.

Note

The TNC 640 implements an actual/nominal value adoption automatically


after activation of the axis via mode 11 to 13.

NN_AxLogNumber changes its value if you deactivate an axis with


Modules 9226 or 9418. NN_AxLogNumber is set to the value –1 for
deactivated axes. NN_AxLogNumber shows the current operating status of
the axis and therefore does not change immediately when the module is
called, but rather a little later.

Note

Please note that activating a deactivated axis can take up to half a second!

1104 HEIDENHAIN Technical Manual TNC 640


Deactivate axis The parameter MP_deactivatedAtStart enables you to deactivate an axis or
during startup spindle during acceleration and to activate it again later with control operation.

Note

For all axes that are removable (e.g. exchangeable milling heads),
HEIDENHAIN recommends setting the MP_deactivatedAtStart
parameter to the value TRUE. In this case, the PLC must ensure that the
respective physically installed axes are correctly activated.

An axis deactivated with MP_deactivatedAtStart behaves as if you


deactivated the axis using module 9226 or 9418 with mode 14. A change of
the parameter does not go into effect until the next startup of the TNC 640.

MP_deactivatedAtStart
Deactivate axis during start-up
Available from NCK software version: 597 110-04.
Format: Selection menu
Options: TRUE
During startup of the TNC 640 the axis is deactivated—
irrespective of the parameter MP_axisHw. The same effect is
attained with the setting as from calling PLC module 9226 or
9418 with mode 14.
FALSE
During startup of the TNC 640 the axis is treated as configured
in the parameter axisHw.
Default: No value, optional parameter (= behavior as for FALSE)
Access: LEVEL3
Reaction: RUN

January 2015 6.6 Reading and writing axis information 1105


PLC modules Module 9226 Set status for axes
The module sets a new status for an NC axis or auxiliary axis (not for spindles).
Constraints:
 The module can only be called for NC axes or auxiliary axes. Module 9418
must be used for setting the status of a spindle.
 An axis not configured as "active" is treated as if it were not present.
Modes 10 to 14:
 The motor of the affected axis must be switched off during module call. The
current and speed controllers must be inactive.
 The activation status must not be switched except in a strobe with
synchronization of the advance calculation (SYNC_CALC, interpreter stop).
Call:
PS B/W/D/K <Axis index>
n: Index of the axis from CfgAxes/axisList
PS B/W/D/K <Mode>
1: Renewed evaluation of the axis reference mark
10: Restore activation status from startup
11: Closed-loop axis activation status
12: Manually operated axis activation status
13: Displayed axis activation status
14: Deactivated axis activation status
CM 9226
PL B/W/D <Error code>
0: Module successfully executed
1: Faulty module call (invalid axis number)
2: Faulty module call (invalid mode)
3: Faulty module call (axis is not an NC axis or auxiliary axis)
4: Axis is controlled by the NC
5: Activation status is being switched
6: Activation status is already selected
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid task data transferred (see error
ErrorCode number in returned value)

1106 HEIDENHAIN Technical Manual TNC 640


Module 9418 Set status for spindle
The module sets a new status for a spindle.
Constraints:
 This module is only supported by the symbolic memory interface (API 3.0).
If the iTNC-compatible memory interface (API 1.0) is used, the module
returns an error.
 Path-dependent lubrication (Mode #5) is usually not used for spindles,
except in the special case that a spindle can also be a rotary axis.
Constraints for modes 10 to 14:
 The motor of the spindle must be switched off during module call. The
current and speed controllers must be inactive.
 The activation status must not be switched except in a strobe with
synchronization of the look-ahead calculation (SYNC_CALC, interpreter
stop).
Call:
PS B/W/D/K <Spindle index>
PS B/W/D/K <Mode>
1: Renewed evaluation of the spindle's reference mark
2: Determine the actual speed value for speed control from
the motor encoder
3: Determine the actual speed value for speed control from
the position encoder
4 : Reset accumulated traverse path
5 : Reset accumulated traverse path for path-dependent
lubrication
10: Restore activation status from start-up
11: Closed-loop axis activation status
14: Deactivated axis activation status
CM 9418
PL B/W/D <Error code>
0: Module successfully executed
1: Faulty module call (invalid spindle number)
2: Faulty module call (invalid mode)
3: Activation status is being switched
4: Activation status is already selected
Error code:

Marker Value Meaning


NN_GenApiModule 0 Module executed successfully
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid task data transferred (see error
ErrorCode number in returned value)
99 Module is not supported (control operates
with iTNC-compatible API).

January 2015 6.6 Reading and writing axis information 1107


Module 9155 Switch axes from closed-loop to open-loop condition
Module 9155 switches axes from the closed-loop to open-loop state.

Note

This module was implemented to ensure compatibility with earlier


HEIDENHAIN contouring controls. HEIDENHAIN recommends:
Use preferably the Modules 9226 and 9418 described above.

Constraints:
 The module functions only in the cyclic PLC program.
 The function is only possible when the TNC 640 is not active
(NN_ChnControlInOperation = 0) or if an M/S/T/T2/G strobe is pending.
 The function is only possible when the TNC 640 is not active or if an M/S/T/
T2/G strobe is pending.
 Only the last module call per PLC cycle is included.
Call:
PS B/W/D/K <Bit-encoded axis mask>
CM 9155
Error code:

Marker Value Meaning


NN_GenApiModule 0 Module executed successfully
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid axis mask passed
ErrorCode 21 Missing strobe or control is active
24 Module was called in a submit/spawn job

1108 HEIDENHAIN Technical Manual TNC 640


Module 9156 Switch axes from open-loop to closed-loop condition
Module 9156 switches axes that were previously switched by Module 9155
to the open-loop state back to the closed-loop state.

Note

This module was implemented to ensure compatibility with earlier


HEIDENHAIN contouring controls. HEIDENHAIN recommends:
Use preferably the Modules 9226 and 9418 described above.

Constraints:
 The module functions only in the cyclic PLC program.
 The function is only available when the TNC 640 is not active
(NN_ChnControlInOperation = 0) or if an M/S/T/T2/G strobe is pending
 Only the last module call per PLC cycle is included.
Call:
PS B/W/D/K <Bit-encoded axis mask>
CM 9156
Error code:

Marker Value Meaning


NN_GenApiModule 0 Module executed successfully
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid axis mask passed
ErrorCode 21 Missing strobe or control is active
24 Module was called in a submit/spawn job

January 2015 6.6 Reading and writing axis information 1109


Module 9048 Interrogate the operating states of axes
Module 9048 is used to interrogate the operating status/activation status of a
certain axis or for all axes together.
Constraints:
 The module returns the actual activation status of the axis. At least one PLC
clock pulse, and maybe more, passes between the order for changing the
activation status by calling a PLC module (for example, 9226 or 9418) and
the actual change of the activation status. During this time the module
returns the previous activation status. This also means that the modules
reports when the change of the activation status has been completed.
 An axis not configured as "active" is treated as if it were not present. For a
deactivated axis the corresponding activation status is reported.
Call:
PS B/W/D/K <Axis number>
Axis number: Individual information for a programmed axis
–1: Information for all axes, bit-encoded as axis mask
PS B/W/D/K <Status information>
0: Brake test active/inactive
1: "Free rotation" active/inactive
2: Position value assigned or actual value being transferred
3: "Deactivated axis" activation status
4: "Displayed axis" activation status
5: "Manually operated axis" activation status
6: "Closed-loop axis" activation status
7: Last brake test was successful
8: Last brake test failed
CM 9048
PL B/W/D <Status>
Interrogation of an individual axis: 1/0 = active/inactive
Interrogation of all axes: Bit-encoded axis mask

1110 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 Status ascertained
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Status information>
ErrorCode 2 Invalid axis programmed
If status information 0 or 2 was transferred,
then this error occurs if an invalid axis
number, an open-loop axis or an axis that is
temporarily not a closed-loop axis was
selected.
If status information 1 was transferred,
then this error occurs if an invalid axis
number, an open-loop axis, an axis that is
temporarily not a closed-loop axis, a slave
axis of gantry axes, a linear axis or a rotary
axis without modulo counting was
selected.
If status information 3 to 6 was transferred,
then this error occurs if an invalid axis
number or an open-loop axis was selected.

January 2015 6.6 Reading and writing axis information 1111


6.7 Traverse ranges
You can subdivide the work range of the machine into several traverse ranges,
e.g. for machines with differing working spaces (alternating table machining)
or for different machine constellations.
A traverse range consists of a combined block of configuration settings linked
to a working space of the machine.
In addition, the machine operator can use the MOD key to restrict the traverse
range of the machine axes.

Activating traverse Using the MOD function Machine settings > Traverse limits, you can
limits using the restrict the active traverse range for all axes by specifying upper and lower
MOD function limits.
Constraints for modulo axes:
 The lower limit must be between –360° and +360° (excluding the limit
values)
 The upper limit must be between 0° and +360° (excluding the limit values)
 The lower limit must be smaller than the upper limit
 The difference between the upper and lower limits must be less than 360°
 If the machine parameter MP_moveAfterRef is configured, the path is not
compensated. In this case, TNC 640 displays a warning.
 If one modulo axis is positioned outside the permissible working space
when it is activated, it may be moved in any direction into the working
space.
 When a traverse limit for a modulo axis is activated, the modulo counter is
set to 0 if it was greater than 0. If the modulo counter was smaller than 0, it
is set to -1. This causes a change to values between -360° and +360° on the
display. Example:
For a modulo axis, the traverse limits are set in the range from -45° to +45°.
Position in the display when the traverse limit is activated: +580°
Once the limit has been activated, the display changes to +220°.
Now, there are two possibilities:
• If the axis is moved in positive direction into the working space (beyond
360°), the axis will stop at 45°, the display will show +405°. Motion
between +315° and +405° is possible (display values).
• If the axis is moved in negative direction into the working space, the
axis will stop at -45°. Motion between -45° and +45° is possible (display
values).

1112 HEIDENHAIN Technical Manual TNC 640


6.7.1 Configuring traverse ranges

Settings in the configuration editor MP number


System
CfgWorkingRange 123900
[freely selectable key name for traverse range]
kinCompositeModel 123901
axes 123902
[Index]
axis
activation
parSet
basisTrans 123903
activeTT 123904
plcMarker 123905
handwheelAxes 123906

Tips:
 The number of active, programmable axes is limited to 12.
 A maximum of 24 programmable axes can be defined via CfgProgAxis.
 Changing the modulo behavior of an axis during traverse range switching
(MP_isModulo or CfgRollOver) is currently not supported.
Proceed as follows to configure traverse ranges for the machine:
 Add the optional Config Object CfgWorkingRange to the machine
configuration.
 Assign a freely selectable key name for each traverse range.
 Enter the optional machine parameters specified below under
CfgWorkingRange according to needs.
All parameters in CfgWorkingRange are optional. Only enter parameters
relevant for the specific machine.

Note

HEIDENHAIN recommends:
For reasons of clarity you should use the same optional parameters in all
configured traverse ranges (all instances of CfgWorkingRange).

January 2015 6.7 Traverse ranges 1113


Kinematic for In MP_kinCompositeModel, specify the key name of a kinematic from
traverse range CfgKinCompositeModel. The kinematic specified becomes active with
activation of this traverse range.

MP_kinCompositeModel
Kinematic to be activated from CfgKinCompositeModel
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Key names of kinematics models configured under
CfgKinCompositeModel. Input the kinematic to be selected
with activation of this traverse range.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

Note

The parameter MP_onKinemReset (CfgNcErrorReaction) enables you to


specify the behavior of TNC 640 with the resetting of internal NC data with
kinematic modifications, see page 1006.

Activate/deactivate Specify a list with physical axes under MP_axes. An action is carried out for
axes, switch the specified axes with selection or de-selection of the traverse range.
parameter block Possible actions are the activation/deactivation of the axis (MP_activate) and/
or switchover of the parameter set (MP_parSet). With the parameter set
switchover you can for example modify the values of software end switches.

Note

Avoid parameter set switchovers from the PLC when the NC implements
a parameter set switchover via MP_parSet.

The condition of axes not specified in MP_axes remains unchanged with the
traverse range switchover.

MP_axes
Activate/deactivate axes, switch parameter block
Available from NCK software version: 597110-08.
Format: Array 0 to 23
Input: Up to 24 lists with parameters MP_axis, MP_activation and
MP_parSet for this traverse range. Specifies actions for
physical axes upon activation of the traverse range.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1114 HEIDENHAIN Technical Manual TNC 640


MP_axis
Physical axis
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Key name of the physical axis from Axes/PhysicalAxis
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_activation
Activate/deactivate axis
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Specifies whether the axis in MP_axis is activated or
deactivated when this traverse range is selected:
Activate
Axis is activated
Deactivate
Axis is deactivated
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_parSet
Parameter set
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Key name of the parameter set from Axes/ParameterSets,
becoming effective on activation of this traverse range for the
axis specified in MP_axes.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

Preset table for Specify the path to a preset table *.pr in MP_basisTrans. The specified preset
traverse range table becomes active with this traverse range.

MP_basisTrans
Path of the preset table *.pr for this traverse range
Available from NCK software version: 597110-08.
Format: String
Input: Path specification, max. 500 characters
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.7 Traverse ranges 1115


Table touch probe Specify with MP_activeTT the table touch probe TT assigned to this traverse
for traverse range range. The parameter assigns the calibration data of the specific table touch
probe to the traverse range. Select the key name from CfgTT from the list.

MP_activeTT
Active table touch probe TT for this traverse range
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Key name of the table touch probe from CfgTT
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

PLC status marker In MP_plcMarker, specify the symbolic name or number for a PLC status
for traverse range marker for the traverse range. After successful activation of the traverse range
the TNC 640 sets this marker to value 1. Upon exiting to value 0.

MP_plcMarker
PLC status marker for traverse range
Available from NCK software version: 597110-08.
Format: String
Input: Symbolic name or number for a PLC marker.
The TNC 640 sets this marker to 0 when the traverse range is
left. After successful switchover to the traverse range, the
marker is set to 1.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1116 HEIDENHAIN Technical Manual TNC 640


Axis assignment for The parameter MP_handwheelAxes specifies axis assignment for the
handwheel handwheel with this traverse range. Upon activation of the traverse range the
previous axis assignment of the handwheel (CfgHandwheel/selectAxes) is
overwritten.

Note

MP_handwheelAxes only works for handwheels with axis keys (e.g.


HR 410, HR 520, HR 550) and the HR 150 panel-mounted handwheels
(with the HRA 110 handwheel adapter). The parameter has no function for
panel-mounted handwheels of the model HR 130—use the PLC Module
9036 for the axis assignment.

MP_handwheelAxes
Selection of axes for this handwheel for this traverse range
Available from NCK software version: 597110-08.
Format: Array 0 to 23
Input: Selection of axes that can be moved with the handwheel.
For portable handwheels with axis keys, e.g. HR 410,
HR 520, HR 550:
(with evaluation of the keys by NC)
Make a list entry (e.g. X, Y, Z, A, C, S1, S2) for each axis key on
the handwheel. For handwheel superimpositioning it is also
possible to use the VT_Axis (virtual tool axis) for the active tool-
axis direction. The sequence of the list sets the assignment to
the axis keys X, Y, Z, IV, V on the handwheel.
With HR 150 panel-mounted handwheels through HRA 110:
Handwheel on X1 of HRA 110: 1st list entry
Handwheel on X2 of HRA 110: 2nd list entry
Handwheel on X3 of HRA 110: The initialization parameters and
the position of the selection switch set which list entry is to be
used.
With HR 130 panel-mounted handwheel:
Do not define parameter. The axes are assigned via the PLC
program (e.g. Module 9036).
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.7 Traverse ranges 1117


Traverse range
after startup
Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of the machining channel]
CfgRangeAtStartup 205000
rangeAtStartup 205001
defaultRange 205002

The parameter MP_rangeAtStartup specifies whether a traverse range is


automatically selected following startup of the control. Add the optional Config
Object CfgRangeAtStartup to the machine configuration.

MP_rangeAtStartup
Automatic activation of a traverse range with startup
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Unchanged
No automatic activation of a traverse range (default setting).
Last
The traverse range last used is reactivated.
Default
A default traverse range is activated. Specify this with
MP_defaultRange.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_defaultRange
Default traverse range after control startup
Available from NCK software version: 597110-08.
Format: Selection menu
Options: List of traverse ranges from CfgWorkingRange.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1118 HEIDENHAIN Technical Manual TNC 640


Flexible assignment
of programmable
axes Settings in the configuration editor MP number
Channels
Kinematics
CfgKinSimpleModel
[key name of subkinematic]
progAxes 202802

With traverse range switchover you can flexibly assign the programmable
letters of an axis to a physical axis.
For this purpose specify a list of programmable axes to be used for this
kinematic in parameter CfgKinSimpleModel/progAxes.
Both the settings under CfgChannelAxes/progAxis and the axes for the
subkinematics under
CfgKinSimpleModel/progAxes are effective.
For more detailed information about modifying programmable axes with
kinematic switchover, see "MP_progAxes" on page 1194.

Display of axes on
the screen
Settings in the configuration editor MP number
System
DisplaySettings
CfgDisplayData
axisDisplay 100810
axisDisplayRef 100811

The parameters axisDisplay and axisDisplayRef enable you to define rules


for displaying the axes of a traverse range in the position and status display.
Observe the detailed information under "Display of axes on the screen" on
page 1034. An example for display rules for a machine with two working
spaces is shown under "Exemplary configuration for alternating table
machining" on page 1121.

January 2015 6.7 Traverse ranges 1119


6.7.2 Switching the traverse range

Select traverse In OEM cycles with FN17: SYSWRITE ID300 NR1 = "<Key>" or
range via NC macro FN17: SYSWRITE ID300 NR1 = QS<No> you can activate the traverse range
with the transferred key name. If switchover is to be implemented via an M
function, an NC macro must be saved for this M function.

Note

Traverse range switchover via the PLC program is not yet supported by the
current NC software.

Note

If you are migrating from the iTNC 530:


The command FN31: RANGE is not supported by the TNC 640.

Traverse range The TNC 640 implements the configured condition modifications with traverse
switchover process range switchover in a fixed sequence:
 Set PLC marker (MP_plcMarker) of the old traverse range to 0
 Execute CfgWorkingRange/axes:
Activate/deactivate axis/axes and/or switch parameter sets.
 Activate kinematic from CfgWorkingRange/kinCompositeModel
 Activate preset table from CfgWorkingRange/basisTrans
 Activate table touch probe TT from CfgWorkingRange/activeTT
 Set PLC marker (MP_plcMarker) of the new traverse range to 1

1120 HEIDENHAIN Technical Manual TNC 640


6.7.3 Machines with several working spaces / alternating table machining
Machines for alternating table machining usually have two separate work
spaces (A and B). Machining is either only in work space A, only in work space
B or in both work spaces. During machining in one work space, the machine
operator can prepare the workpiece for the next machining in the other work
space.
Physical axes (e.g. rotary axes on the machine tool table) can be fixed to one
of the two work spaces. If a programmable axis letter (e.g. "C" for a rotary axis
on the machine tool table) is to be assigned to different physical axes
according to the work space, then when changing the work space with the
kinematic, configuration of the programmable axes (CfgProgAxis) must also
be switched over.

Exemplary In this exemplary configuration the machine has the following characteristics:
configuration for
 Machine tool table with two rotary axes: CL (left work space) and CR (right
alternating table work space).
machining
 The X axis is positioned directly on the machine base, upon which a
traversing stand moves with axes Y and Z.
 The software end switches from X are switched over when the work space
is switched over. Other software end switches remain unchanged.
Proceed as follows to generate the configuration for this machine with
alternating table machining
 In the machine configuration, define all physical machine axes in Axes/
PhysicalAxis.
For the example machine the physical axes X, Y, Z, CL, CR and the spindle
S must be entered.
 List all physical axes in System/CfgAxes/axisList.
 Define the parameter sets for the single axes and spindle in Axes/
ParameterSets.The X axis in the example configuration has three parameter
sets:PXL for the left work space, PXR for the right work space and PXA for
the complete work space.
The three parameter sets only differ due to differently configured values in
the software end switches (CfgPositionLimits).
 Define the kinematic configurations in Channels/Kinematics.The example
machine has three kinematics in CfgKinComposModels:KCL contains the
linear axes and the left rotary table CLKCR contains the linear axes and the
right rotary table CR
K3 only contains the linear axes
 Define the programmable axes in CfgProgAxis.
Special characteristic: Configuration of the two rotary axes CL and
CRDefine a programmable axis with the key names CL and CR for each of
the physical axes CL and CR. In the parameter MP_axName of both axes
CL and CR, enter the value "C" for the C axis.The specific axis CL or CR is
then programmable in the active kinematic via the axis letter "C".
The other axis not contained in the active kinematics model becomes the
PLC axis and can be traversed via PLC positioning.
 Define three traverse ranges via CfgWorkingRange, e.g. with the freely
selectable key names RangeL, RangeR and RangeA.

January 2015 6.7 Traverse ranges 1121


Traverse range 1: RangeL
 Left work space
 Kinematic KCL with left rotary table CL
 Parameter set PXL with limited X axis traverse range for the left work space

Settings in the configuration editor


System
CfgWorkingRange
RangeL (key name of left traverse range)
kinCompositeModel: KCL
axes
[0]
axis: X
parSet: PXL

Traverse range 2: RangeR


 Right work space
 Kinematic KCR with right rotary table CL
 Parameter set PXR with limited X axis traverse range for the right work
space

Settings in the configuration editor


System
CfgWorkingRange
RangeR (key name of right traverse range)
kinCompositeModel: KCR
axes
[0]
axis: X
parSet: PXR

Traverse range 3: RangeA


 Common work space
 Kinematic remains unchanged
 Parameter set PXA with complete X axis traverse range

Settings in the configuration editor


System
CfgWorkingRange
RangeA (key name of complete traverse range)
axes
[0]
axis: X
parSet: PXA

1122 HEIDENHAIN Technical Manual TNC 640


 Finally, specify the settings for axis display on the screen. Define the rules
for displaying the axes in CfgDisplayData with parameter MP_axisDisplay
or MP_axisDisplayRef.
For position and status display for example, you can specify that the position
of the rotary table in the active kinematic is always displayed with the letter
"C". The position of the rotary table that is not included in the kinematics
model, i.e. it is a PLC axis, is displayed with the letters "CL" or "CR".

Settings in the configuration editor


System
DisplaySettings
CfgDisplayData
.
.
.
axisDisplay
[5]
axisKey: CL
rule: IfKinem
[6]
axisKey: CR
rule: IfKinem
[7]
axisKey: CL
name: CL
rule: ShowAlways
[8]
axisKey: CR
name: CR
rule: ShowAlways

Note

The display rules in MP_axisDisplay or MP_axisDisplayRef are


interpreted from top to bottom in the list. If several rules are defined for an
axis the first applicable rule is effective. Other rules are ignored.

January 2015 6.7 Traverse ranges 1123


Note

Specifying an axis identifier in parameter axisDisplay/name is optional. If


MP_name has no entry, then the axis name for position and status display
is derived from the programmable axis settings.

Note

With an alternating table machining configuration it is usually necessary to


set the parameter CfgEditorSettings/useProgAxes to FALSE. With this
setting all axes can be programmed, independent of the active in figuration.

1124 HEIDENHAIN Technical Manual TNC 640


6.7.4 Changing the milling heads
To change milling heads, in addition to configuring the physical head axes
exchangeable subkinematics (CfgKinSimpleModel) must be created for each
change head.

Configuring head Proceed as follows to prepare the TNC 640 for changing milling heads:
axes
 In Axes/PhysicalAxis create a key name for each physical head axis.
 Set the parameter Axes/PhysicalAxis/[key name of head axis]/CfgAxis/
deactivatedAtStart to TRUE
 In CfgAxes/axisList enter the head axes into the list.
 In Axes/CfgProgAxis create a key name for each programmable head axis.
 Configure parameter sets for the head axes in Axes/ParameterSets.
The parameter sets for the change heads must at least contain the following
configuration entities:
 CfgAxisHardware
 CfgFeedLimits
 CfgReferencing
 CfgPositionLimits
 CfgControllerAuxil
 CfgEncoderMonitor
 CfgPosControl
 CfgSpeedControl
 CfgCurrentControl
 CfgControllerTol
 CfgPowerStage
 CfgServoMotor
 CfgAxisComp
 CfgLaAxis
 Assign the parameter sets to the physical head axes with CfgAxis/parList.
 Create a subkinematic in CfgKinSimpleModel for the complete kinematic
description of the change head.

January 2015 6.7 Traverse ranges 1125


Example:
A kinematic model in CfgComposModel with the key name"HeadChange"
contains the subkinematic "HC_Head" that can be replaced when a head is
changed.

Settings in the configuration editor Comment


Channels
Kinematics
CfgKinComposModel Key name of kinematic model
HeadChange Head kinematicBasis kinematic
subKinList
HC_Head
HC_Base Empty subkinematic for decoupled head
activeSpindle: S
tiltingAllowed: TRUE Subkinematics for coupled head with
CfgKinSimpleModel head axes A and C
HC_Head

CfgKinSimpleModel
HC_Head

kinObjects
AX_A
AX_C
progAxes
A
C

 Create subkinematics and corresponding parameter sets in machine


parameter subfiles.
 The machine parameter subfiles can be loaded or unloaded in NC macros:
FN17: SYSWRITE ID1020 NR3 = <path> ; load
FN17: SYSWRITE ID1020 NR4 = <path> ; unload
The path can be transferred directly or as a Q string.

Head change Changing a milling head can be implemented as follows:


process
 Disconnect the drives for the corresponding axis/axes
 Switch over to a traverse range with three-axial kinematic without head axes
 Change the milling head.
 Read out the data from the head, derive or establish the configuration data
for the head axes (parameter sets) and the subkinematic
(CfgKinSimpleModel) for the head and save in a machine parameter
subfile.
 Load the machine parameter subfile of the connected red
 Switch to a traverse range with head
 Activate the drives for the new axis/axes

1126 HEIDENHAIN Technical Manual TNC 640


Changing the Using a kinematic switch-over, you can change the axis letter used to program
programmable axis a physical axis. If a head is changed, it might include other drives, but the
letter at run time motor connections remain identical.
When performing a kinematic switch-over, it is possible to freely assign the
head axes to any desired axis letter.
Exemplary configuration:
The physical axis with the key name "B" (CfgAxis) should be assigned to the
axis letter "C".
 Under CfgProgAxis, create a new key name for renaming, e.g. "B_to_C".
Specify MP_axName = C and enter the key name of the B axis in
MP_relatedAxis, in this case "B".
 Under PhysicalAxis, also create a new key name for renaming. Select the
same name as before, e.g. "B_to_C". Only add the configuration object
CfgAxisPropKin. All other objects (CfgAxis, CfgAxisSafety, CfgRollOver,
CfgMachDatumExtra) remain blank or grayed out.
 In the kinematics model, define a new CfgKinSimpleAxis configuration
object. Under MP_axisRef, enter the key name specified for renaming. For
the exemplary configuration, specify "B_to_C".
 Add the new CfgKinSimpleAxis to the kinematics of the corresponding
axis.
 In addition, enter the new CfgProgAxis or the key name "B_to_C" in the list
MP_progAxes of the associated CfgKinSimpleModel (or to the
MP_progList in CfgChannelAxes).

January 2015 6.7 Traverse ranges 1127


6.7.5 Comparison: Traverse range switchover / Changing the head on the iTNC 530 andTNC 640

Function iTNC 530 TNC 640


Number of traverse ranges 3 Number theoretically unlimited.
In practice, limits exist due to the
number of possible kinematic
configurations (max. 20) and the
number of parameter sets.
Configuration Switchable machine parameters CfgWorkingRange specifies
exist threefold what is switched
Traverse range following Fixed traverse range 1 Configurable via
control startup CfgRangeAtStartup
Switchover via NC FN31: RANGE FN17: SYSWRITE ID300 NR1
Switchover via PLC Module 9151 Not supported
Axis letter assignment to axis A string with axis letters CfgProgAxis specifies the
(MP100). The position of each assignment for an axis.
letter in the string defines to CfgKinSimpleModel/
which axis it belongs. progAxes specifies which
instances of CfgProgAxis are
effective. Limitations if the axis
letter of an axis changesa.
Query from PLC Query traverse range via module PLC status marker configurable
for each traverse range
Head change with complex  Head kinematic via own All configuration data of a head
machines kinematic table are combined in a machine
 Axis assignment specifically parameter subfile.
commanded usually via PLC or
NC
Other limitations None Modulo behavior of an axis
cannot be switched over
(planned)
a. For a configured axis (CfgAxis) a maximum of one axis name can exist (CfgProgAxis) and
therefore a maximum of one axis letter with which this axis can be programmed. No such
limitation exists for the position display.
There can be several CfgProgAxis configuration objects and therefore also CfgAxis objects
for one axis letter if only one of these is active at any time.

1128 HEIDENHAIN Technical Manual TNC 640


6.8 Software limit switches

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
swLimitSwitchPos 400501
swLimitSwitchNeg 400702

Define the software limit switches in the parameter object


CfgPositionLimits:
 The datum is the machine datum (MP_refPosition).
 If the TNC 640 detects the crossing of a software limit switch in a traverse
path, this path is not traversed and an error message is output.
 If a software limit switch is traversed, the TNC 640 stops the corresponding
axis and displays an error message. The axis can be departed in the opposite
direction from the software limit switch.
 The software limit switches can usually be overwritten by the NC program
(see below).
 The software limit switches can also be overwritten by the PLC.
 Limit-switch monitoring can be deactivated by entering 0 for positive and
negative limit values.
If you open the MP_swLimitSwitchNeg or MP_swLimitSwitchPos
parameter in the configuration editor (Machine Parameter Programming
operating mode) you can press the ACTUAL POSITION CAPTURE soft key to
apply the position value of an axis automatically.
The soft key displays a soft-key row showing the available axes. When you
press an axis soft key, the TNC 640 captures the position of the axis in the
REFNOML system.

Attention

Please note that the limit switches do not consider the following
compensations:
 Angle tolerances for rotary axes (TCPM, Cycle 32)
 Tolerances for linear axes (Cycle 32)
 Temperature compensation
 Compensations by the PLC program
 Compensation of reversal error
 Nonlinear axis error compensation
 Compensation by KinematicsComp

January 2015 6.8 Software limit switches 1129


MP_swLimitSwitchPos
Positive software limit switch
(compare to iTNC 530: MP910)
Available from NCK software version: 597110-01.
Format: Number
Input: –100 000 to 100 000 [mm] or [°] with max. 9 decimal places
Default: 0 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_swLimitSwitchNeg
Negative software limit switches
(compare to iTNC 530: MP920)
Available from NCK software version: 597110-01.
Format: Number
Input: -100 000 to 100 000 [mm] or [°] with max. 9 decimal places
Default: 0 [mm] or [°]
Access: LEVEL3
Reaction: RUN

Note

If positive and negative software limit switches = 0, limit-switch monitoring


is switched off.

6.8.1 Overwriting software limit switches


 Software limit switches can be overwritten with FN17: SYSWRITE ID230, e.g.
for automatic tool change. This function is effective only until the next
GOTO command (GOTO key or FN9 to FN12) or the end of the program.
Associated position data can for example be saved in the parameter object
CfgOemPosition or alternatively in a table.
For more information, see "Data transfer NC program <=> NC (FN17:
SYSWRITE and FN18: SYSREAD)" on page 2521.
 The software limit switches can be changed by switching the parameter set
of the axis:
• PLC Module 9434: Select the parameter set for an axis
• PLC Module 9435: Interrogate the selected parameter set for an axis
• Traverse range switchover, See "Traverse ranges" on page 1112

1130 HEIDENHAIN Technical Manual TNC 640


6.9 Lubrication pulse

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
lubricationDist 400503

The parameter object CfgPositionLimits is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)

 In MP_lubricationDist, you define the traverse distance at which the


lubrication pulse for the axis guideways is to be output. The NC reports in
NN_AxLubricationPulse when the entered distance in an axis has been
exceeded.
 Reset PP_AxLubricationDistReset after lubrication. This resets the
distance counter to 0.

Note

After the TNC 640 has been reset, the accumulated distance is reset.

MP_lubricationDist
Path-dependent lubrication of axis
(compare to iTNC 530: MP4050)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 000 [mm] or [°] with max. 9 decimal places
0= no output of lubrication pulse to PLC
Default: 100 [mm] or [°]
Access: LEVEL3
Reaction: RUN

PLC operand / Description Type

NN_AxLubricationPulse M
Lubrication pulse: Value in MP_lubricationDist
exceeded
0: Value not exceeded
1: Value exceeded
PP_AxLubricationDistReset M
Reset the accumulated distance:
0: Do not reset accumulated distance
1: Reset accumulated distance

January 2015 6.9 Lubrication pulse 1131


6.10 PLC axes
Axes that are not in an interpolation context can be used by the PLC as
required. The PLC can start more than one axis simultaneously, but they are
not interpolated with each other. As soon as an axis is not part of the active
kinematics, you can use the axis as PLC axis.

Note

Please keep in mind that the axis interpolation context can be changed
dynamically, for example by the activation of another kinematic model.

Stopping/Starting Module 9120 Position PLC axis


axes by PLC Module 9120 positions PLC axes that are assigned to the PLC. By entering a
target position (in the reference system), a feed rate and a flag register, the
positioning of a PLC axis is started. The axis is positioned completely
independently from other processes in the control, and there is no contour
interpolation with other axes.
Constraints:
 The specified axis must be activated via MP_axisMode = active and must
not be a part of the momentarily active kinematic (=auxiliary axis). The axis
must also not be in an interpolation context.
 The parameter values for rapid traverse, acceleration, etc. must be set
correctly.
 Positioning occurs with rotary axes in the direction of the shorter traverse
path if the target position was not transferred as an incremental value.
 The configured limit switches are always monitored. Module 9227 is
available for movements without limit-switch monitoring.
 The axis must be stationary. Any positioning movement must be aborted
beforehand with Module 9121.
 The feed-rate override is not offset.
 If no reference mark has been traversed, the positioning process builds on
the counter value as it was upon switch-on.
 For an auxiliary axis, only the most recently programmed auxiliary-axis
command of a PLC scan (Module 9120, 9121, 9123, 9125, or 9227) is
executed.
 A "positioning error" status set in this axis is cleared. The status must be
evaluated by Module 9122.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.

1132 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
PS B/W/D/K <Target position>
Input unit: [0.0001 mm]
PS B/W/D/K <Feed rate>
Input unit: [mm/min]
PS B/W/D/K <Mode>
Bit 0—Definition of the target position:
0: Absolute, i.e. relative to the machine datum
1: Incremental target position
CM 9120
PL B/W/D <Error code>
0: No error. Positioning was started.
1: Nonexistent or slave axis was transferred
2: Axis was not configured as an auxiliary axis or axis is still
in an interpolation context
3: Axis is already being positioned
4: Absolute position is outside of modulo range
5: Programmed axis not in closed loop
6: Invalid feed rate was programmed
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (positioning started)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or
see <Error code> above
NN_GenApiModule 1 Axis does not exist or slave axis
ErrorCode (W1022) transferred
2 Axis not configured as auxiliary axis,
absolute position outside modulo range,
open-loop axis programmed, or invalid
feed rate programmed
9 Axis is already being positioned

January 2015 6.10 PLC axes 1133


Module 9121 Stop PLC axis
The module stops a positioning movement that has been started by Module
9120 or 9123.
Constraints:
 The specified axis must be activated via MP_axisMode = active and must
not be a part of the momentarily active kinematic (=auxiliary axis). The axis
must also not be in an interpolation context.
 For an auxiliary axis, only the most recently programmed auxiliary-axis
command of a PLC scan (Module 9120, 9121, 9123, 9125, or 9227) is
executed.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
CM 9121
PL B/W/D <Error code>
0: Positioning is canceled
1: Nonexistent or slave axis was transferred
2: Axis not configured as auxiliary axis or axis still in
interpolation context
3: Axis is already stationary
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (positioning stopped)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or
see <Error code> above
NN_GenApiModule 1 Axis does not exist or slave axis
ErrorCode (W1022) transferred
2 Axis is not configured as an auxiliary axis
9 Axis is already stationary

1134 HEIDENHAIN Technical Manual TNC 640


Module 9122 Status query of a PLC axis
The module provides information on the present operating status of the axis.
Constraints:
 Changes in status due to commands which the PLC sends for controlling
the auxiliary axes (Modules 9120, 9121, 9123, 9125, 9227) are not
recognized until the next PLC scan.
 After switch-on, bit 1 (Traverse reference mark) is cleared. It is also possible
to position the axis without first traversing the reference mark.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
 Bit#7 is supported by all PLC modules with which positioning tasks for
auxiliary axes can be started
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
CM 9122
PL B/W/D <Status>
Bit 0 – axis in interpolation context?
0: Axis does not exist or is
in interpolation context
1: Axis is an auxiliary axis or axis is not in
interpolation context
Bit 1 – Reference mark
0: Reference mark not yet traversed
1: Reference mark traversed
Bit 2 – Positioning
0: Positioning inactive
1: Positioning active
Bit 3 – Direction of motion
0: Positive direction of motion
1: Negative direction of motion
Bit 4 – Positioning error
0: No positioning errors occurred
1: A positioning error has occurred
Bit 5 – Closed-loop or open-loop axis
0: Closed-loop axis
1: Open-loop axis
Bit 6 – Target position reached?
0: Target position not yet reached
1: Target position reached
Bit 7 – Positioning abort due to end switch?
0: Positioning abort due to limit switch
1: Positioning abort due to limit switch

January 2015 6.10 PLC axes 1135


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (status is transferred)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 1 Non-existing axis transferred
ErrorCode (W1022) 2 Transferred axis is not configured as an
auxiliary axis

Module 9123 Traverse the reference marks of PLC axes


The module starts a positioning movement in a defined direction. The
positioning movement is continued until a reference mark is found or until the
positioning movement is canceled by Module 9121.

Note

Use Module 9123 only if no conventional procedure for traversing the


reference marks is possible.

Constraints:
 The specified axis must be activated via MP_axisMode = active and must
not be a part of the momentarily active kinematic (=auxiliary axis). The axis
must also not be in an interpolation context.
 The parameter values for rapid traverse, acceleration, etc. must be set
correctly.
 When a reference point has been reached, the system checks for limit
switch overshoot!
 The axis must be stationary. Any positioning movement must be aborted
beforehand with Module 9121.
 The feed-rate override is not offset.
 For an auxiliary axis, only the most recently programmed auxiliary-axis
command of a PLC scan (Module 9120, 9121, 9123, 9125, or 9227) is
executed.
 A "positioning error" status set in this axis is cleared.
 The "find reference point" status is set for the axis.
 Any pre-existing reference point in this axis is cleared, but the numerical axis
value remains. It will not be reinitialized until the reference point is found.
 The positioning movement is interrupted as soon as the reference point is
found. However, due to the braking distance, the axis comes to a standstill
somewhat beyond the reference mark.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.

1136 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
PS B/W/D/K <Feed rate>
Input unit: [mm/min]
PS B/W/D/K <Mode>
Bit 0: Direction of traverse
0: Positive
1: Negative
CM 9123
PL B/W/D <Error code>
0: No error. Positioning was started.
1: Nonexistent or slave axis was transferred
2: Axis is still in interpolation context
(not configured as an auxiliary axis)
3: Axis is already being positioned
5: Programmed axis not in closed loop
6: Invalid feed rate was programmed
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (positioning implemented)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or
see <Error code> above
NN_GenApiModule 1 Axis does not exist or slave axis
ErrorCode (W1022) transferred
2 Axis not configured as auxiliary access,
open-loop axis programmed or invalid feed
rate programmed
9 Axis is already being positioned

January 2015 6.10 PLC axes 1137


Module 9124 Feed rate override for PLC axis
The override value set in this module influences the traversing speed of an axis
traversed by the PLC with Module 9120 or 9123.
Constraints:
 The axis must not be in an interpolation context.
 The override value is transferred as an integer (0 .. 10000). It may be in the
range of 0 % to 100.00 % (resolution 0.01 %).
 The last transmitted override value is accounted for at the beginning of
movement.
 After a reset or interruption of the PLC program the override value is set to
100.00 %.
 The override value can be changed during positioning.
 The module can be called in addition to a module from the group (9120/
9121/9123) during the same PLC scan.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
PS B/W/D/K <Override>
Input unit: 0 to 10 000, corresponds to 0 to 100 % in 0.01 %
steps.
CM 9124
PL B/W/D <Error code>
0: No error, override value was set
1: Nonexistent or slave axis was transferred
2: Axis is not defined as an auxiliary axis
3: Override value incorrect
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (override set)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or
see <Error code> above
NN_GenApiModule 1 Non-existing axis or slave axis transferred
ErrorCode (W1022) or erroneous override value
2 Axis is not defined as an auxiliary axis

1138 HEIDENHAIN Technical Manual TNC 640


Positioning of axes You start a PLC positioning movement with Module 9221, and you can
by PLC interrogate the status with Module 9222.
The following conditions apply to a PLC positioning command:
 Tool compensation is not included. Before a PLC positioning command you
must end any tool compensation.
 A PLC positioning movement is not displayed in the test graphic.

The NC cancels a PLC positioning movement under the following conditions:


 If in the Manual or Handwheel modes there is an NC STOP.
 If in the automatic operating modes there is an NC STOP and "internal stop."
 If there is an EMERGENCY STOP.
 If there is an error message that results in a STOP.

January 2015 6.10 PLC axes 1139


Module 9221 Start a PLC positioning movement
The module positions an axis. The target position and feed rate are transferred
in the module call. Limit switch interrogation can be activated in a separate
transfer parameter.
The axis is positioned regardless of any other processes in the control. In
particular, there is no interpolation with other axes.

Note

When calling the module for an NC axis during a strobe, the synchronization
with the advance calculation (strobe with MP_sync = SYNC_CALC) must
be configured for this strobe.

Constraints:
 The module must only be called if no program is running, or if an M/G/S/T/
T2/Q strobe is pending. No axis direction key should be pressed in manual
operating mode
 With rotary axes with transition to zero, positioning is via the shortest path
 If a parameter (e.g. target position, feed rate..) of an already initiated
positioning is to be modified, the positioning must be aborted and restarted
 An axis that is not configured as "active", or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
 The PLC positioning of several axes is with non-interpolatable positioning
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
PS B/W/D/K <Target position/increment>
in reference system, input unit: 0.0001 mm
PS B/W/D/K <Feed rate>
Input unit: mm/min
PS B/W/D/K <Mode>
Bit 0—Definition of the target position:
0: Absolute, i.e. relative to the machine datum
1: Incremental
Bit 1 – Software limit switch:
0: Inactive
1: Active
Bit 2 – reserved
Bit 3 – collision monitoring (only TNC 640):
0: Active
1: Inactive
CM 9221
PL B/W/D <Error code>
0: Positioning is being started
1: Open-loop axis, auxiliary axis or slave axis programmed
2: Inadmissible values for the feed rate or mode
3: Axis has not traversed the reference mark
4: No M/G/S/T/T2/Q strobe during started program
5: Programmed axis not in closed loop
6: Positioning already started

1140 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (positioning started)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or
see <Error code> above
NN_GenApiModule 2 Open-loop axis, auxiliary axis or slave axis
ErrorCode (W1022) programmed or impermissible values
programmed for <feed rate> or <mode>
9 PLC positioning already started
21 No M/G/S/T/T2/Q strobe with started NC
program
33 Axis has not traversed the reference mark

January 2015 6.10 PLC axes 1141


Module 9222 Status request of a PLC positioning movement
The module provides the PLC positioning status.
A status information is generated for a specific axis or for all axes informing
about the momentary condition of PLC positioning movements. The status
information can be queried for a specific axis or bit-coded for all axes.
Constraints:
 The status of an axis is maintained until this axis is assigned a new status
due to renewed PLC positioning.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/DK <Axis>
Index from CfgAxes/axisList
or bit-encoded output for all axes:
–1: Target position reached
–2: PLC positioning was started
–3: PLC positioning canceled
–4: Limit switch
–5: PLC positioning not possible
–6: PLC positioning temporarily stopped
–7: PLC positioning not started due to collision monitoring
(only TNC 640)
–8: PLC positioning has not reached touch point
CM 9222
PL B/W/D <Status>
0: No PLC positioning was started
1: Target position reached
2: PLC positioning was started
3: Due to cancelation, target position not reached
4: Target position is outside of traverse range
5: PLC positioning not possible (e.g. due to "free rotation")
6: PLC positioning temporarily stopped (stop in Automatic
operating modes)
7: PLC positioning not started due to collision monitoring
(only TNC 640)
8: PLC positioning has not reached touch point
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (status transferred)
Error (M4203) 1 Error (error code in
NN_GenApiModuleErrorCode)
NN_GenApiModule 1 Invalid status information requested
ErrorCode (W1022) 2 Status of open-loop axis, auxiliary axis or
slave axis transferred

1142 HEIDENHAIN Technical Manual TNC 640


Module 9224 Stop PLC positioning movements
The module stops the positioning movement of an NC axis that has been
started by Module 9220 or 9221.
Constraints:
 If a PLC strobe marker exists for the programmed axis, it is reset.
 It is still possible to stop PLC positioning movements by resetting the PLC
strobe markers.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/DK <Axis>
Index from CfgAxes/axisList
PS B/W/DK <Mode>
Not supported until now, 0 transferred
CM 9224
PL B/W/D <Error code>
0: Stop PLC positioning
1: Invalid axis was programmed
2: The axis is not being positioned by the PLC
3: Axis is not in motion
4: Axis is controlled by NC
5: Invalid mode
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (positioning stopped)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid axis, auxiliary axis or slave axis
ErrorCode (W1022) transferred
9 Axis is not being positioned by the PLC

January 2015 6.10 PLC axes 1143


Module 9227 Position auxiliary axes and NC axes
The module starts the positioning of an NC axis (PLC positioning like with
Module 9221) or the positioning of an auxiliary axis (like with PLC Module
9120). With Module 9227, acceleration and jerk can be programmed in
addition to the target position and feed rate parameters.
Further modes can be programmed for positioning NC axes (like with Module
9221):
 rapid traverse (keyboard with rapid traverse override only)
 active end switch queries
 deactivated collision monitoring
See also documentation for PLC Modules 9120 and 9221.
Conditions:
 The machine parameter configuration of an axis to be started with Module
9227 determines whether the positioning movement of an auxiliary axis or
an NC axis is started.
 An axis not configured as "active" or a momentarily deactivated axis is
treated as a non-existing axis.
Positioning of NC axes (PLC positioning):
 The module can only be called if no program is running, or if an M/G/S/T/T2/
Q strobe with SYNC_CALC synchronization is pending. No axis direction key
should be pressed in manual operating mode. The entered positions are
referenced to the machine datum. Rotary axes with transition to zero are
positioned by the shortest path.
 If a parameter (e.g. target position, feed rate..) of an already initiated
positioning is to be modified, the positioning must be canceled and
restarted.
 As soon as a PLC positioning with rapid traverse is active (bit 2 is set), all
active PLC positioning movements are at rapid traverse, and instead of the
feed-rate override the rapid-traverse override is effective.
 Error code 7 not possible (only with auxiliary axes).
 PLC positioning movements of several axes are traversed independently
and are non-interpolatable.
 Only TNC 640:
A deactivation of collision monitoring (bit 3) only has an effect if all axes
positioned by the PLC at the same time were started with collision
monitoring inactive.Furthermore, deactivation of collision monitoring (bit 3)
with PLC positioning does not affect Module 9064 feedback (collision
monitoring status). With active DCM the module still reads "Monitoring
active".
Positioning auxiliary axes:
 For axes with automatic reduction (modulo value in MP_isModulo)
traversing to the target position is always in the direction of the shorter
traverse path, apart from when the target position is specified as an
incremental value.
 The axis must be stationary. Any positioning movement must be interrupted
beforehand with Module 9121.
 The feed-rate override is not offset.
 If the axis was in the "search for reference mark" state before, this state is
canceled. The positioning movement always starts from the current counter
value.

1144 HEIDENHAIN Technical Manual TNC 640


 For an auxiliary axis, only the most recently programmed auxiliary-axis
command of a PLC scan (Module 9120, 9121, 9123, 9125, or 9227) is
executed.
 If the "Positioning error" status was set for this axis, it is canceled.
 Error code 3 and 4 not possible (only with NC axes).
 Testing the exceeding of limit switch limits is also implemented for auxiliary
axes.
 Auxiliary axes positioning movements are with non-interpolatable
positioning.
Call:
PS B/W/D/K <Axis>
PS B/W/D/K <Target position/increment>
in [0.0001 mm], ref system
PS B/W/D/K <Feed rate>
in [mm/min]
PS B/W/D/K <Acceleration>
in [mm/s2]
0: Value from MP_maxAcceleration is used
PS B/W/D/K <Jerk>
in [mm/s3]
0: Value is transferred but not evaluated. The value from
MP_manualFilterOrder is used.
PS B/W/D/K <Mode>
NC and auxiliary axes:
Bit 0 = 0: Absolute positioning
Bit 0 = 1: Incremental positioning
Bit 1 = 1: Software limit switch active
Only NC axes:
Bit 2 = 1: Rapid traverse override effective
Bit 3 = 1: DCM collision monitoring is deactivated
(only TNC 640)
CM 9227
PL B/W/D <Error code/Status>
0: Positioning is being started
1: Invalid axis was programmed
2: Invalid mode, feed rate, acceleration or jerk programmed
3: Axis not yet referenced (error code only available with NC
axes)
4: Program run, no NC strobe output (error code only
available with NC axes)
5: Axis is not in a closed loop (Module 9155)
6: Axis is already being positioned
7: Absolute position is outside of modulo range (error code
only available only for auxiliary axes)

January 2015 6.10 PLC axes 1145


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (positioning is being started)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or in <error
code/status> see above
NN_GenApiModule 1 Invalid value for <Axis> parameter
ErrorCode (W1022) 2 Invalid value for parameters <feed rate>,
<acceleration>, <jerk> or <mode>, axis is
open loop (Module 9155) or absolute
position is outside of modulo range
9 Axis is already being positioned
21 Program run, no NC-strobe output
33 Axis not yet referenced

1146 HEIDENHAIN Technical Manual TNC 640


6.10.1 Synchronizing Functions (Option #135)
The Synchronizing Functions software option includes functions that provide
advanced synchronization and coupling of axes or spindles.

Real-time coupling The option currently only includes a real-time coupling function
function (RealTimeCoupling, RTC).
The real-time coupling function allows the cyclic calculation of a position offset
for an axis from the actual and nominal values of any other axes in the system.
This enables you to realize complex simultaneous movements of several NC
or PLC axes. The interdependence of the axes must be defined in
mathematical formulae: See example below.

Configuring the
real-time coupling
function Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgRTCoupling
function 403401
typeOfOffset 403402
offsetFeed 403403
maxFeed 403404
maxAcc 403405
filterTime 403407
testMode 403406

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgDCM
reactionIfRTC 205301

In the CfgRTCoupling configuration object, you specify the settings for the
coupling function:
 Use a formula to describe the coupling function in the MP_function
parameter. A maximum of 256 characters are available for this.
 The MP_typeOfOffset parameter determines whether a possibly existing
offset is maintained or reduced after closing or opening the coupling with
MP_offsetFeed.
 Parameter MP_maxFeed specifies the maximum speed with which the
coupling is positioned. The component of CfgFeedLimits/maxFeed is
entered in percent.
If this value is exceeded, a warning is displayed. There is no limitation
because this might lead to contour damage.

January 2015 6.10 PLC axes 1147


 Parameter MP_maxAcc specifies the maximum acceleration with which
the coupling is moved. The component of CfgFeedLimits/
maxAcceleration is entered in percent.
If this value is exceeded, a warning is displayed. There is no limitation
because this might lead to contour damage.
 Use the MP_filterTime parameter to determine the time constant of the
mean-value filter for the formula result. If the parameter is not included in
the configuration or if it is set to 0, the filter is deactivated.
 MP_testMode – You can test a formula before actually using it. For this
purpose, activate test mode (MP_testMode=TRUE). If the test mode is
activated, the formula results will not be included in the calculation of the
nominal position value of an axis. Instead, they are only output to the RTC
channel of the integrated oscilloscope.
If the parameter is not included in the configuration or if it is set to FALSE,
test mode is not activated.

Closing / opening a Activate or deactivate the coupling function with Module 9228 (coupling
coupling function for auxiliary axes). Status and error conditions from Module 9228 can
be determined with Module 9229 (status of coupling function).
Constraints:
 Basically, the nominal position value of one or more axes is influenced.
 A coupling can only be effective on one axis in position control.
 The added values of the coupling can be seen in the display in the actual
values of the axis but not in the nominal values.

Note

 When closing an RTC coupling, the axis


to be influenced may not be moved.
 For each axis, only one coupling function can be fundamentally active.
 Modifying the coupling parameters (e.g. switchover of the parameter set)
has no effect with a closed coupling. Assuming new coupling parameters
is only effective when a coupling is closed.
 If an error occurs on the coupled axes (e.g. a position error) the coupling
must be opened before acknowledging the error.

Attention

If you are migrating from the iTNC 530


With NCK-based controls (TNC 640, TNC 620…) a position offset is defined
with the coupling function for the axis to be coupled. With the iTNC 530,
the result of the formula is an absolute nominal position value. Existing
functions of the iTNC 530 can therefore not be used 1:1.

1148 HEIDENHAIN Technical Manual TNC 640


Attention

RTC for machines with collision monitoring (DCM, option #40)


 There is no collision monitoring with an active coupling function (DCM
inactive)! This is indicated to the operator by a warning on the screen and
flashing of the DCM icon.
 Use
CfgDCM/reactionIfRTC to define the reaction to RTC commands with
activated DCM.
 If axes not in the active kinematic are influenced by the RTC, this has no
effect on dynamic collision monitoring (DCM remains active).

Attention

Opening a coupling
When a coupling is opened any offset existing is corrected. The original
position values are adopted again. When couplings are opened, positions
must therefore be specified where this is safe.

Attention

Program abortion with closed coupling


The real-time coupling function is used by some of the HEIDENHAIN
cycles. For this purpose, it is not necessary to enable option #135 because
these cycles internally allow to synchronize / couple the axes or spindles
while machining.
Any coupling closed by a HEIDENHAIN cycle will be opened when a
program is aborted! The affected axis will perform an actual-to-nominal
value transfer.
Couplings closed by the PLC will not be opened.

Monitoring of With a closed coupling, the system detects if the maximum permissible
dynamics dynamics values are exceeded and displays a warning.
 To determine the limits of the maximum permissible speed, the system
uses the minimum value in CfgFeedLimits/maxFeed and the preset of the
permissible axis speed from the PLC.
In addition, the percentage in "maxFeed" from the RTC command is taken
into account.

January 2015 6.10 PLC axes 1149


 To determine the limits of the maximum permissible acceleration, the
system uses the value in CfgFeedLimits/maxAcceleration.
In addition, the percentage in "maxAcc" from the RTC command is taken into
account.

Note

If the maximum permissible speed or acceleration is exceeded, a warning


is displayed, specifying the percentage by which the maximum value has
been exceeded.
There is no limitation because this might lead to contour damage.
If CfgRTCoupling/maxFeed or CfgRTCoupling/maxAcc is not included
in the configuration or if the value is 0, the system will use 100% of the
value in CfgFeedLimits/maxFeed or
CfgFeedLimits/maxAcceleration.

Limit-switch If the SW limit switches or the protection zones are violated, an EMERGENCY
monitoring STOP error message is displayed. Limit switches and protection zones are
treated in the same way (the system uses the minimum value of both). This
limit switch monitoring in a closed coupling cannot be deactivated. To
deactivate the general SW limit switch monitoring via a command and to exit
the working space, an existing coupling must first be opened.

Formula syntax Formulas are case-sensitive, so make sure to enter them correctly. Functions
are written in lowercase letters, variables are written in capitals.
The configuration editor checks the input formula. If the configuration editor
detects an error, e.g. an unknown function, a syntax error, etc., it issues an
error message.
Example:
function:="10.0*sin(rad(XACT8))+XNOM5/100-2*cos(rad(X1))"
 The trigonometric functions sin(), cos(), tan(), etc. require data input in
radians (360° = 2*pi).
 With NCK-based controls, values must be input into the formula in mm (e.g.
123.456), and not as 0.0001 mm (iTNC).
 In a formula, only a single axis may be referenced.

Possible calculation To build formulas, certain mathematical functions (See page 567) and variables
operations are available:

Variable Meaning
REFn, Nominal position value of the axis relative to the machine datum
XNOMn, in [mm or °]
Xn
XACTn Actual position value of the axis relative to the machine datum in
[mm or °]

n: Index from CfgAxes/axisList

1150 HEIDENHAIN Technical Manual TNC 640


Using tables To better describe the relations between axes, you can enter them into a two-
column table. The first column contains the reference values (interpolation
values), the second column contains the result. The controller performs
automatic linear interpolation between the interpolation values.
Table properties:
 File format: *.csv (values separated by semicolons [;])
 A maximum of 10 tables (0.. 9) can be created
 Fixed table names (RtcTab0.csv.. RtcTab9.csv)
 The values of the first column (reference values) must be in increasing
order;
HEIDENHAIN recommends to create tables with equidistant values.
Processing of a table that does not contain equidistant interpolation values
is far more complex. For this reason, the processor load will increases
accordingly.
 A maximum of 1.000 rows per table
 Default storage path %OEM%\table is preset
 Start comment lines with a semicolon in the first column.
 If the reference value reaches a value that is greater or smaller than the end
at the end of the table, the last value in the table will be preserved.
Example:
0;0
1;0.1
2;0.2
3;0.3
4;0.4
5;0.5
6;0.6
7;0.7
8;0.8
9;0.9
10;1
11;1.1
12;1.2

January 2015 6.10 PLC axes 1151


Syntax for table Use the following syntax to access the tables (RtcTab0.csv.. RtcTab9.csv):
access
Syntax Meaning
TABxXNOMn TABx = TAB0.. TAB9
XNOM = Reference value
n = Axis (index from CfgAxes/axisList) from which the reference
value is taken

Examples:

TAB4XACT7 The first column of table RtcTab4 is the actual position value
(XACT) of axis 7
TAB1XNOM3 The first column of table RtcTab1 is the nominal actual position
value (XNOM) of axis 3
As reference values, you can use the input values described above (REF,
XNOM, X, XACT).

Note

You can enter this syntax at any position of a formula.


Example: function:=5*(sin(TAB3XACT2)+100)

Note

The tables are loaded if the system finds a reference to a table while
interpreting a formula (closing a coupling). This means that you can edit the
tables at any time, as long as no coupling is active that uses this table.
It is possible to reference the same table from within multiple formulas.
This might e.g. be necessary when programming Gantry axes.
HEIDENHAIN however recommends to create a separate table for
each formula.

1152 HEIDENHAIN Technical Manual TNC 640


Machine MP_function
parameters Functional description for RTC
Available from NCK software version: 597110-08.
Format: String
Input: Formula (max. 256 characters), (1)
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN
(1) For the syntax for formula input in MP_function, see page 1150.

MP_typeOfOffset
Handling of position offset with RTC
Available from NCK software version: 597110-08.
Format: Selection menu
Options: None
When a coupling is opened or closed, any existing offset is
compensated using the value in MP_offsetFeed.
Keep
When a coupling is opened or closed, any existing offset
remains in effect, which means that a coupling can be closed
anywhere you like, without a compensating movement being
performed.
Default: None
Access: LEVEL3
Reaction: RUN

January 2015 6.10 PLC axes 1153


MP_offsetFeed
Maximum permissible speed when compensating the offset
Available from NCK software version: 597110-08.
Format: Number
Input: 0 to 9960 [mm/min] with max. 9 decimal places
Default: 960 [mm/min]
Access: LEVEL3
Reaction: RUN

MP_maxFeed
Maximum permissible speed for RTC
Available from NCK software version: 597110-08.
Format: Number
Input: 0 to 100 [%] with up to 9 decimal places
Default: 0 [%], (=value from CfgFeedLimits/maxFeed is used at a
100%), optional parameter
Access: LEVEL3
Reaction: RUN

MP_maxAcc
Maximum permissible acceleration for RTC
Available from NCK software version: 597110-08.
Format: Number
Input: 0 to 100 [%] with up to 9 decimal places
Default: 0 [%], (=value from CfgFeedLimits/maxAcceleration is used at
a 100%), optional parameter
Access: LEVEL3
Reaction: RUN

MP_filterTime
Mean-value filter for formula result
Available from NCK software version: 597110-09.
Format: Number
Input: 0 to 1 [s] with up to 9 decimal places
Default: 0 [s] (= filter deactivated), optional parameter
Access: LEVEL3
Reaction: RUN

MP_testMode
Activate the test mode for RTC
Available from NCK software version: 597110-09.
Format: Selection menu
Options: TRUE
Test mode is active.
The formula calculation result is only output in the integrated
oscilloscope (RTC channel) and is associated with the axis.
FALSE
Test mode is inactive.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

1154 HEIDENHAIN Technical Manual TNC 640


MP_reactionIfRTC
Reaction to RTC commands with active DCM
Available from NCK software version: 597110-09.
Format: Selection menu
Options: Cancel
The NC program is aborted and an error message is displayed.
None
RTC commands are being executed. DCM will be inactive
during this time. This is indicated by a warning.
Default: Cancel, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.10 PLC axes 1155


PLC modules Module 9228 Coupling function for auxiliary axes
Module 9228 is used to enable/disable the coupling of auxiliary axes with other
auxiliary or NC axes for positioning movements. The resulting motions must
be defined in a formula (coupling function) for each coupled axis. This formula
is to be transmitted to the module as a PLC string.
Constraints:
 The coupling function can only be activated at standstill.
 Coupling for an NC axis can only be activated while the NC channel is
inactive or while a strobe with synchronization of the look-ahead calculation
(SYNC_CALC) is pending.
 If an EMERGENCY STOP occurs the coupling is not deactivated
by the NC.
 An axis offset with activation can be maintained or corrected. The data
required for correcting are taken from the entity CfgRTCoupling.
Call:
PS B/W/D/K/S<Coupling function>
PS B/W/D/K <Coupling axis>
PS B/W/D/K <Mode>
Bit 0 = 0: Deactivate the coupling function
Bit 0 = 1: Activate the coupling function
Bit 1 = 0: Coupling function in the <Coupling function>
string is valid
Bit 1 = 1: Coupling function in CfgRTCoupling is valid
Bit 2 = 0: Existing axis offset is to be retained
Bit 2 = 1: Existing axis offset should be compensated (data
from CfgRTCoupling/typeOfOffset)
CM 9228
PL B/W/D <Error code>
0: Function performed
1: Invalid axis programmed (invalid axis number, slave axis)
2: Invalid <mode> programmed
3: Axis has not yet been homed
4: Invalid PLC string programmed as formula
5: Programmed axis not in closed loop
6: Axis is not stationary, auxiliary axis positioning (Module
912x) or "free rotation" (Module 9223) is active
7: Coupling function is already active/not active for
programmed axis
8: NC channel associated with the axis is active

1156 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in
NN_GenApiModuleErrorCode or in <error
code> see above
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode 2 Invalid axis or open loop axis programmed,
axis not stationary (auxiliary axis
positioning (Module 912x) or "free rotation"
(Module 9223) is active)
11 Invalid PLC string programmed for formula
28 Coupling function for the programmed
axis is already active / not active or the NC
channel associated with the axis is active
33 Axis not yet referenced

January 2015 6.10 PLC axes 1157


Module 9229 Status of coupling function
Module 9229 is used to determine the status and error conditions of Module
9228 (coupling functions). Furthermore, the module can calculate the position
value that was momentarily reached by selecting a coupling function.
Constraints:
 A one-time position calculation for an NC axis can only be performed while
the NC channel is inactive or while a strobe with synchronization of the look-
ahead calculation (SYNC_CALC) is pending.
 NN_GenApiModuleError is also set only with the <status/error> conditions
referencing NN_GenApiModuleErrorCode.
Call:
PS B/W/D/K/S<Coupling function>
Parameter only evaluated with mode 1 or mode 2.
PS B/W/D/K <Coupling axis>
PS B/W/D/K <Mode>
0: Status of the coupling function triggered via Module 9228
1: Unique position calculation
with coupling function from the <Coupling function>
string (only possible in submit / spawn job)
2: Unique position calculation
with coupling function from CfgRTCoupling/function
(only possible in submit / spawn job)
3: Status of axis offset
CM 9229
PL B/W/D <Status/Error>
Mode 0:
0: No coupling function active for programmed axis
1: Coupling function is active for programmed axis
2: Coupling function canceled
<Additional information> = 1: Canceled due to
computing error at run time
3: Syntax error in coupling function
<Additional information> = 1: RTC was already open
upon deactivation
<Additional information> = 2: RTC was already closed
upon activation
<Additional information> = 3: Internal management error
<Additional information> = 4: RTC active via geometry
<Additional information> = 5: Function error
<Additional information> = 6: No function available
<Additional information> = 7: Control option not set
5: Activation of a coupling function requested by the PLC
(but not yet completed)
6: Deactivation of a coupling function requested by the
PLC (but not yet completed)
Mode 1/2:
0: Position value was calculated
<Additional information> = Current calculated position
value
3: Syntax error in coupling function
<Additional info> see information under Mode 0
Mode 3:
0: No coupling function active
7: Coupling function is active; offset exists

1158 HEIDENHAIN Technical Manual TNC 640


8: Coupling function is active; no offset or offset has been
compensated
PL B/W/D <Additional information>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode 2 Invalid axis number or open loop axis
programmed, axis not stationary
11 Invalid PLC string programmed as formula
20 Call not in a submit/spawn job
28 NC channel associated with the axis is
active
33 Axis not yet above reference
45 Canceled due to error message from
operating system

January 2015 6.10 PLC axes 1159


Formula example

200 (-400/200)

0
-600 X -400

v = PLC axis
X = NC axis

Circle:
Dv=200-cos(asin(-(X0+400)/200))*200

Linear below 30°:


Dv=-(X0+400)*cos(rad(30))

1160 HEIDENHAIN Technical Manual TNC 640


6.10.2 Hirth coupling

Settings in the configuration editor MP number


Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
isHirth 300103
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
moveAfterRefType 400410

Hirth coupling describes a type of clamping of rotary axes and swivel heads.
Finely splined disks mesh together in order to create a rigid connection.
Use the parameter MP_isHirth to specify whether the axis is capable of Hirth
coupling. The parameter is optional. The Hirth axis is active as soon as you
insert the MP_isHirth parameter and enter a grid increment in [°] measured
from the machine datum.
Use the machine parameter MP_moveAfterRefType to specify the type of
movement after crossing the reference mark. For the Hirth axis you can
specify either positive or negative direction of approach to the next Hirth grid
position after a reference run.
Active Hirth axes are determined with PLC Module 9038 (reading of axis
status information), No. 4 With Module 9038 No. 5 you read the Hirth jog
increment from the machine configuration.
With Module 9125 you stop a PLC axis at the next Hirth grid position.
 Configure the exact positioning of the axis in the Hirth grid as PLC
positioning (Modules 9120, 9121, 9125 and 9122).

Manual Operation As soon as an axis direction key is pressed, the TNC 640 resets the marker in
mode NN_AxInPosition (axis in position).
 As soon as the axis-in-position bit is set again, compare the nominal position
with the Hirth grid and derive from it a PLC positioning command to the next
grid point.

Electronic For the current handwheel axis, the marker is reset in NN_AxInPosition (axis
Handwheel in position).
operating mode
As soon as you select another handwheel axis, the marker NN_AxInPosition
is set for the previous axis.
The Hirth axis can be positioned with the handwheel.
 Check the actual position with the Hirth grid and derive from it a PLC
positioning command to the next grid point.

January 2015 6.10 PLC axes 1161


Controlled The positions of the Hirth axis must be programmed in the grid.
positioning
 Check the positions in the PLC during program run.
 As soon as "axis in position" is reset, check the target position with the Hirth
grid.
 You must output a PLC error message if the target position is not on the
Hirth grid.

MP_isHirth
Axis with Hirth coupling
(compare to iTNC 530: MP420)
Available from NCK software version: 597110-02.
Format: Number
Input: Default grid increment in [°] or [mm] (depending on the axis
type) for Hirth coupling, measured from the machine datum.
If the parameter is inactive or the value 0 is entered, no Hirth
grid is supported.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

MP_moveAfterRefType
Type of axis movement after traversing the reference mark
Available from NCK software version: 597 110-02.
Format: Selection menu
Options: absolute
Absolute positioning
relative
Incremental positioning
HirthRasterPos
Approach next Hirth grid position in positive direction
HirthRasterNeg
Approach next Hirth grid position in negative direction
Default: absolute
Access: LEVEL3
Reaction: REF

1162 HEIDENHAIN Technical Manual TNC 640


Module 9125 Stop PLC axis at next Hirth grid position
A positioning started with Module 9120 or Module 9123 can be interrupted
with Module 9125 at the next grid position according to the configuration in
MP_isHirth.
Constraints:
 The specified axis must be activated via MP_axisMode = active and must
not be a part of the momentarily active kinematic (=auxiliary axis). The axis
must also not be in an interpolation context.
 For an auxiliary axis, only the most recently programmed auxiliary-axis
command of a PLC cycle (Module 9120, 9121, 9123, 9125, or 9227) is
executed.
 The axis is stopped at the next possible position in accordance with the
braking distance, the reference coordinates of this position being a multiple
of the value from MP_isHirth.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
CM 9125
PL B/W/D <Error code>
0: Positioning is canceled
1: Nonexistent or slave axis was transferred
2: Axis is not configured as an auxiliary axis
3: Axis is already stationary
4 Axis was not declared as a Hirth axis in MP_isHirth
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (axis stopped successfully)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or in <Error
code> see above
NN_GenApiModule 1 Axis does not exist or slave axis
ErrorCode (W1022) transferred
2 Axis was not configured as an auxiliary
axis or was not declared as a Hirth axis
9 Axis is already stationary

January 2015 6.10 PLC axes 1163


6.11 Axis-error compensation

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisComp
active 401801

The parameter object CfgAxisComp is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)

Axis error compensations are implemented in the form of control value


modifications of the position.
The TNC 640 compensates the following mechanically caused axis errors:
 Backlash
 Linear axis errors
 Nonlinear axis errors (direction-dependent)
• Screw-pitch error
• Axis sag
 Thermal expansion
 Sliding friction (for digital axes, compensation is carried out in the speed
controller)

You can activate either linear or nonlinear axis-error compensation per axis.
Backlash compensation can be activated in addition to linear axis-error
compensation.
As of NCK software version 597110-04, if nonlinear axis-error compensation
is active, MP_backLash can be used to activate backlash compensation in
addition to the compensation-value tables.
You can also add other types of compensation.
 In MP_active, you switch all compensations (except stiction) on or off.

1164 HEIDENHAIN Technical Manual TNC 640


MP_active
Switch all axis compensations on/off
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Backlash compensation, linear or nonlinear axis-error
compensation, reversal-error compensation and thermal
compensation are all active
off
Axis compensations are not active
Default: off
Access: LEVEL3
Reaction: RUN

January 2015 6.11 Axis-error compensation 1165


6.11.1 Backlash compensation

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisComp
backLash 401802
filterTime 401805
posCtrlRevErr 401806
posCtrlRevErrTime 401807
backlashDistance 401808
backlashTimeConst 401809
CfgControllerComp
compTimeLimit 401417

The parameter object CfgAxisComp is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)

Cause outside of During a reversal in axis direction, there is often a little play between the rotary
the control loop encoder and table. This play is referred to as backlash.
If the distance is measured using a speed encoder, the backlash
compensation compensates the play between the rotary encoder and the
table.
Positive backlash: The rotary encoder reading is ahead of the table. The table
traverse is too short.
Negative backlash: The rotary encoder reading is behind the table. The table
traverse is too long.

1166 HEIDENHAIN Technical Manual TNC 640


The compensation values for backlash can be calculated either using a fixed
time constant from MP_backlashTimeConst or dynamically depending on
the acceleration from MP_backlashDistance (only with digital drive control):
 Enter the backlash in MP_backLash.
 For time-dependent backlash compensation enter the time in which the
distance to be compensated should be traversed in
MP_backlashTimeConst.
 For acceleration-dependent backlash compensation enter the distance
within which the complete compensation value should be covered in
MP_backlashDistance. The compensation value is thus applied more
rapidly at high acceleration, and more slowly at low acceleration. This
ensures the at least 6 ms or at most 500 ms are required for the
compensation. This type of compensation is only active if no time constant
is defined in MP_backlashTimeConst. To prevent the compensation values
from changing too rapidly at very high speeds, you can manually limit
compensation value changes by entering a minimum time constant in
MP_compTimeLimit.
The value of the backlash is added to the position value at every reversal of
direction (even if it results from nonlinear axis-error compensation, for
example) and is considered by the position controller. The value of the kV
factor therefore influences the settling time for backlash compensation.

MP_backLash

Nominal value
Reversal point

MP_backLashTimeConst: small input value

MP_backlashTimeConst: large input value

MP_backlashTimeConst: = 0

Nominal value

January 2015 6.11 Axis-error compensation 1167


MP_backLash
Backlash compensation; backlash outside the control loop
(compare to iTNC 530: MP710)
Available from NCK software version: 597110-01.
Format: Number
Input: –1 to 1 [mm] or [°] with max. 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

MP_backlashDistance
Path for dynamic backlash compensation
(compare to iTNC 530: MP708)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 10 [mm] or [°] with max. 9 decimal places
0: Not active
Default: 0 [mm] or [°], optional parameter
Access: LEVEL3
Reaction: RUN

MP_backlashTimeConst
Time constant for dynamic backlash compensation
(compare to iTNC 530: MP709)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 1 [s] with up to 9 decimal places
If MP_backlashDistance=0 and MP_backlashTimeConst=0, the
compensation is run within 60 ms.
Default: 0 [s], optional parameter
Access: LEVEL3
Reaction: RUN

MP_filterTime
Time constant for axis error compensation and temperature
compensation
(backlash compensation no longer included as of NCK-SW
597110-06)
Available from NCK software version: 597110-03.
Format: Number
Input: 0 to 1000 [ms] with up to 9 decimal places
0: Compensation is output as a step
Default: 60 [ms], optional parameter
Access: LEVEL3
Reaction: RUN

1168 HEIDENHAIN Technical Manual TNC 640


MP_compTimeLimit
Time constant for band limitation of compensation value changes
(compare to iTNC 530: MP2690)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 1 [s] with up to 9 decimal places
0: Not active
Default: 0 [s], optional parameter
Access: LEVEL3
Reaction: RUN
Example:
MP_backLash: 0.03 mm
MP_backlashTimeConst: 15 ms
For every change in direction, a nominal speed command signal is output for
15 ms, which corresponds to a feed rate of 120 mm/min:

0.03 mm
= 120 mm/min
15 ms

Cause within the Only possible with digital drive control!


control loop
If a position encoder is used for direct distance measurement, the TNC 640
can compensate the play between the motor and the table. At the same time,
this compensates the reversal peaks in circular movements.

January 2015 6.11 Axis-error compensation 1169


Compensation:
 In MP_posCtrlRevErr enter the reversal error in [mm].
 In MP_posCtrlRevErrTime enter the time in which the distance to be
compensated should be traversed.

MP_posCtrlRevErr
Hysteresis compensation (path)
(compare to iTNC 530: MP750)
Available from NCK software version: 597110-03.
Format: Number
Input: –1 to 1 [mm] or [°] with max. 9 decimal places
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_posCtrlRevErrTime
Hysteresis compensation (time)
(compare to iTNC 530: MP752)
Available from NCK software version: 597110-03.
Format: Number
Input: 0 to 1000 [ms] with up to 9 decimal places
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1170 HEIDENHAIN Technical Manual TNC 640


6.11.2 Linear axis error compensation

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisComp
linearCompValue 401803
compType 401804

The parameter object CfgAxisComp is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)

Note

Linear axis error compensation is not available for rotary axes!

For every linear axis you can compensate a linear axis error.
 Positive linear axis error: The table moves too far.
 Negative linear axis error: The table moves too short a distance.

Error
[mm]

0.02
0.01
0
-0.01 Ref. mark 500 1000 Encoder
[mm]
-0.02

January 2015 6.11 Axis-error compensation 1171


Compensation:
 In MP_linearCompValue, enter the axis error [mm/m].
Linear axis-error compensation is not active for rotary axes.
 Use MP_compType to activate the linear axis error compensation.

MP_linearCompValue
Linear axis error compensation
(compare to iTNC 530: MP720)
Available from NCK software version: 597110-01.
Format: Number
Input: -1 to 1 [mm/m] with max. 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

MP_compType
Selection of linear/nonlinear axis error compensation
(compare to iTNC 530: MP730)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: linear
Linear axis error compensation is active.
non-linear
Nonlinear axis error compensation is active.
Default: linear
Access: LEVEL3
Reaction: RUN

Note

If nonlinear axis error compensation is activated (MP_compType =


nonlinear), linear axis error compensation is deactivated.

1172 HEIDENHAIN Technical Manual TNC 640


6.11.3 Nonlinear axis error compensation
Depending on the design of the machine, production tolerances, or external
factors (e.g. temperature) a non-linear axis-error can occur. Typical errors are
screw-pitch errors and axis sag.
These graphics show typical nonlinear axis errors:

It is best to determine nonlinear axis errors with a comparison encoder such


as the HEIDENHAIN VM 101.

Note

The TNC 640 can compensate screw-pitch error and axis sag
simultaneously.

Nonlinear axis-error compensation is effective with closed and also with open
control loops, and can be used for all axis types in MP_axisHw, e.g. digitally
controlled axes or display axes. With actual-to-nominal value transfer the
already compensated value is adopted as the nominal value. No movement
occurs.

January 2015 6.11 Axis-error compensation 1173


Nonlinear axis error compensation supports one compensation value group
each for the positive and negative directions of traverse.
The following graphic shows the trace of an axis sag error in the Z axis as a
function of Y (Z = f(Y)):

error in Z
[mm]

machine
datum datum
0
Y
[mm]

negative direction

positive direction

Compensation The compensation values for nonlinear axis error compensation are stored in
value tables the following tables:
 The tables of the *.COM type contain compensation values for a maximum
of 1024 interpolation points. A *.COM table is required for each axis and
spindle. It consists of the following columns:
• AXISPOS: Interpolation points that are assigned compensation values.
The interpolation points are given with respect to the machine datum.
Equidistant spacing between the interpolation points is necessary.
• BACKLASH: Compensation values for screw pitch errors in negative
direction of traverse. The BACKLASH column is defined for the axis for
which this compensation-value table is created. This way the backlash
can be compensated directly via the compensation-value table.
• Axis * – axis to which the table refers: Compensation values for
screw pitch errors in positive direction of traverse
• Axis * – adjoining axis: Compensation values for sag errors with
respect to the adjoining axis
• Spindle: The compensation values for a spindle are entered in this
column

1174 HEIDENHAIN Technical Manual TNC 640


 In the *.CMA table, the *.COM tables are assigned to the error-causing axis.
• ACTIVE: The character * activates the compensation value tables.
• * axis: File name of the *.COM file with the compensation values of
this axis.
• Spindle: File name of the *.COM file with the compensation values of
this spindle.
You will find the path of the *.CMA tables in the parameter object System/
Paths/CfgTablePath/TABCMA (standard name of the file: config.cma). The
*.CMA file contains the file names of the *.COM files. The directory path of
the *.COM tables is entered in the parameter object System/Paths/
CfgOemPath/oemTable.

Entering The following information must be entered in the <*.COM> tables:


compensation
 In the AXISPOS column, enter the interpolation points for the compensation
values values. The positions are given with respect to the machine datum
(MP_refPosition).
 If required, enter the compensation values measured in the negative
direction of traverse in the BACKLASH column.
 Enter the compensation values to which the interpolation points belong in
the column of the axis for which a dependency relationship exists. The
name of the column is the name from CfgAxes/axisList (see Table Format).

Example: The following dependencies apply to the Y axis and Z axis:


 Ball screw pitch error in Z and Y: Z = F(Z) and Y = F(Y)
 Axis sag in Z depending on Y
 Range of traverse: Z axis = 800 mm, Y axis = 500 mm
 Start point for compensation values: Z = –200 mm, Y = –90 mm
 Desired spacing of compensation points: 5 mm
Number of compensation points:
500 mm-
--------------------- = 100 Compensation points in Y axis
5 mm
800 mm-
---------------------
5 mm
= 160 Compensation points in Z axis

January 2015 6.11 Axis-error compensation 1175


How to access the tables:
 Switch to the Programming operating mode.
 Press the MOD key.
 Enter the code number 95148.
 Change to the program manager (PLC: drive becomes visible)
 In the PLC:/table drive, open the tables *.COM and *.CMA
Entries:

Axis Y:
Screw-pitch
error in Y axis,
axis sag error in
Z axis

Axis Z:
Screw-pitch
error in Z axis

1176 HEIDENHAIN Technical Manual TNC 640


Assigning the General relationship for *.CMA tables:
compensation [Axis in column from *.com] = F(Axis in column from *.cma, in which *.com
value tables to the is entered)
axes
Enter the compensation-value tables in a table of the type <*.CMA> (standard
name config.cma).
(for table formatting, see the chapter Tables):
 Enter a column for each axis to be compensated. The column names must
match the axis keys from CfgAxes/axisList.
 Enter the names of the compensation-value tables (*.com) line-by-line in the
appropriate axis columns.
You can assign more than one compensation value table to each axis,
however only one table can be active.
 Activate the compensations with an * in the column ACTIVE, which can be
entered via the table editor or via the PLC (SQL server).
All compensations in this line become active.
Example:
Z axis = F(Y axis); axis sag compensation
Y axis = F(Y axis); nonlinear compensation
The first line is active.
Entries:

CMA table

January 2015 6.11 Axis-error compensation 1177


Activating error Three requirements must be fulfilled for activating nonlinear axis error
compensation compensation:
 Activate the general compensation procedures with MP_active =ON
 Activate the axis-specific nonlinear axis error compensation with
MP_compType = non-linear (See "Linear axis error compensation" on page
1171)
 In the config.cma file, activate a line with an * in the ACTIVE column or with
Module 9095. The active line can be interrogated using Module 9035.

Note

 The following functions only use the nominal position, without taking the
compensation values into account:
• Dynamic collision monitoring (DCM)
• Limit-switch monitoring

Module 9095 Activate axis-error compensation


Module 9095 activates a line in the selected file (*.CMA) and assigns the
arguments for the compensation value tables (*.COM). Multiple
measurement series (e.g. x=f(), y=f()..) can be stored in the compensation
value tables. After the module has been executed, the argument is assigned.
In this way the screw pitch error x=f(x) and axis sag x=f(y) can be
compensated simultaneously, for example.
Constraints:
 The transferred line remains selected as the active line even after a control
reset.
 Once the NC program has started, the module operates only during the
output of an M/G/S/T/T2/Q strobe.
 The nominal axis values may change slightly when the compensation value
table is switched over.
Call:
PS B/W/D/K <Active line>
CM 9095
PL B/W/D <Error code>
0: Compensation was selected
1: Line was not found in the *.CMA table
2: Compensation value table (*.COM) is missing
3: Compensation value table > 1024 entries
4: Maximum total number of compensation points
exceeded
5: Too many compensation value tables (>10)
6: *.CMA file does not exist
7: Call was not from a submit job
8: Call during running program without strobe
10: *.CMA file is protected

1178 HEIDENHAIN Technical Manual TNC 640


Module 9035 Read NC status information
Module 9035 reads status information. A function number specifying the
desired status information is transferred.
Function number 19: Display active line in the *.CMA file

Note

The line number is displayed even if the active line does not contain any
*.COM file.

Call:
PS B/W/D/K <19>
Display active line of the *.CMA file
CM 9035
PL B/W/D <Active line number>
0: Line number
–1: No *.CMA file active

Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 The transferred input parameter selects no
ErrorCode status information available in the software
version used
20 An information was requested in the cyclic
PLC program that is only readable in the
SUBMIT/SPAWN job.

Special case: For a rotary axis with modulo counting method (MP_isModulo = TRUE), only
Modulo rotary axis the compensation values for the entries of 0° to +360° are effective, relative
to the machine datum. Therefore, the datum for the nonlinear compensation
must lie within the 0° to +360° range. To compensate a full circle, set the
compensation value datum to the machine datum.
This special rule does not apply with rotary axes without modulo counting
method. Compensation values in the *.COM table can also have negative
values on rotary axes without modulo counting method.

Special case: Separate compensation tables can be created for master axes and slave axes.
Master and slave
axes

January 2015 6.11 Axis-error compensation 1179


6.11.4 Compensation of thermal expansion

Settings in the configuration editor MP number


System
PLC
CfgPlcPeriphery
tempCompensation 103405
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisComp
active 401801

The parameter object CfgAxisComp is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
To compensate thermal expansion, exact measurements of machine thermal
behavior as a function of temperature (e.g., the center of axis expansion, the
amount of the expansion) are necessary. Since the thermal expansion of the
axes is largely proportional to the temperature, you can determine the amount
of expansion by multiplying the temperature value by a certain expansion factor.
The temperature values measured by the Pt100 thermistors are transferred
using Module 9003. With Module 9231 you activate compensation of thermal
expansion according to the principle of "lag tracking".
Compensation:
 Activate the general compensation procedures with MP_active = ON (See
"MP_active" on page 1165).
 Transfer the distance to be compensated to Module 9231. At the same
time, "lag tracking" becomes active. This means that the actual position is
offset by a certain value per PLC cycle until the complete value is
compensated.
 Define the amount of compensation per PLC cycle for lagged-tracking axis
error compensation MP_tempCompensation
For gantry axes, the compensation value must be transferred separately for
each axis.
Temperature compensation when using tilting axes is defined in the machine
parameter MP_temperatureComp in the kinematics model, See "Temperature
compensation in the kinematics model" on page 1216.

MP_tempCompensation
Compensation of thermal expansion
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 to 359999.640 [mm/min]
0 = Compensation not active
Default: 0
Access: LEVEL3
Reaction: NOTHING

1180 HEIDENHAIN Technical Manual TNC 640


Module 9231 Compensation of thermal expansion
Thermal expansion is compensated by Module 9231. The axis number and the
compensation value are transferred.
The module activates lag tracking. This means that the actual position is offset
by a certain value per PLC cycle until the complete value is compensated. The
increment of change per PLC cycle must be defined in
MP_tempCompensation.
This does not change the value in the actual position display.
Constraints:
 The module functions only in the cyclic PLC program.
 The compensation values are internally run for the other axes.
 The machine parameter CfgAxisComp/active of the corresponding axis
must be on "on".
 The machine parameter CfgPlcPeriphery/tempCompensation of the
corresponding axis must not be equal to 0.
Call:
PS B/W/D/K <Axis index>
Index from CfgAxes/axisList
PS B/W/D/K <Compensation value>
Range: –30000 to +30000 [1/10 µm]
CM 9231
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid value for <Axis index> or
ErrorCode <Compensation value> parameter.
24 Module was called in a spawn or submit job

January 2015 6.11 Axis-error compensation 1181


6.11.5 Compensation of static friction

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
vCtrlIntTime 400903

The parameter object CfgSpeedControl is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
 Analog axes (MP_axisHw=Analog)

In machines with a great deal of static friction (stiction), a high integral-action


component can accumulate over time if there is a position error at standstill.
This can result in a jump in position when the axis begins moving. In such
cases you can limit the integral-action component of the speed controller in
MP_vCtrlIntTime:
 Enter a limit in MP_vCtrlIntTime. Realistic input values: 0.1 to 2.0

MP_vCtrlIntTime
Limit of integral factor of the speed controller
Available from NCK software version: 597 110-01.
Format: Number
Input: 0.000 000 000 to 30 [s]
Default: 0 [s]
Access: LEVEL3
Reaction: RUN

1182 HEIDENHAIN Technical Manual TNC 640


6.11.6 Compensation of sliding friction

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compFriction0 401401
compFrictionT1 401402
compFrictionT2 401403
compFrictionNS 401404

The parameter object CfgControllerComp is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
 Analog axes (MP_axisHw=Analog)

CC 61xx, CC 424

Note

Machine parameters MP_compFrictionT1 and MP_compFrictionT2 now


function with respect to distance rather than time (unit: [mm] or [°]).

With the CC 61xx and CC 424, this makes it possible to compensate quadrant
transitions independently from velocity, acceleration, and diameter.
The CC calculates the distance to the zero crossover of the speed. The
compensation current is reduced starting from the distance before the zero
crossover defined in MP_compFrictionT1. After the zero crossover, the
compensation current is increased again. MP_compFrictionT2 defines the
point after the zero crossover at which 63 % of the compensation current is
reached.
 In MP_compFrictionT1, define the distance before the reversal point from
which a reduction of the current from MP_compFriction0 is to go into
effect.
 In MP_compFrictionT2, define the distance after the reversal point from
which the current from MP_compFriction0 is to go into effect again.

January 2015 6.11 Axis-error compensation 1183


MP_compFriction0
Friction compensation at low speed
(compare to iTNC 530: MP2610.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 30 [A] with up to 9 decimal places
Default: 0 [A], optional parameter
Access: LEVEL3
Reaction: RUN

MP_compFrictionT1
Distance before the reversal point for reducing the current from
MP_compFriction0
(compare to iTNC 530: MP2612.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 [mm] or [°] with max. 9 decimal places
The following units of measure apply:
MP_compFrictionT1 = [s] if MP_compFrictionT2 = 0
(same behavior as CC 422)
MP_compFrictionT1 = [mm] if MP_compFrictionT2 > 0
0: No friction compensation
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_compFrictionT2
Distance after the reversal point for current from
MP_compFriction0
(compare to iTNC 530: MP2614.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
0: No friction compensation
Default: 0 [mm] or [°], optional parameter
Access: LEVEL3
Reaction: RUN

1184 HEIDENHAIN Technical Manual TNC 640


PLC module Module 9311 Dynamically change values for friction compensation
Module 9311 is used at run-time to prescribe other values for the friction
compensation. The original values from MP_compFriction0,
MP_compFrictionT1 and MP_compFrictionT2 are temporarily overwritten in
the DSP. The values in the machine configuration remain unchanged.
Call:
PS B/W/D/K <Axis index>
PS B/W/D/K <Current in [mA]>
0...30000 replaces value in MP_compFriction0
PS B/W/D/K <Path in [0.1 µm]>
0...10000 replaces value in MP_compFrictionT1
PS B/W/D/K <Path in [0.1 µm]>
0...10000 replaces value in MP_compFrictionT2
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (new values assumed for axis
Error number)
1 Error in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value as replacement for
ErrorCode MP_compFriction0, MP_compFrictionT1
or MP_compFrictionT2
2 Invalid value for parameter
<Axis index>
19 Function not supported by the DSP board
(e.g.
CC 422)
24 Module was called in a submit or spawn
job

January 2015 6.11 Axis-error compensation 1185


6.12 Machine kinematics
Machine parameters in the TNC 640 describe the machine kinematics. It is a
precondition that the kinematic models consist of translation axes and rotation
axes which are linked to each other. This structure can also be used for
configuring axes that are not perpendicular with respect to each other.
Multiple sets of kinematics can be configured for one machining channel.
Multiple sets of kinematics are needed, for example, if different spindles are
used on a milling machine.
The kinematics description consists of a transformation chain, starting from
the tool reference point, to the swivel head, the linear axes and the tilting
table, all the way to the last axis or transformation.
The transformation chain consists of
 fixed lengths (machine dimensions)
 variable lengths (linear axes)
 fixed rotations (machine conditions)
 variable rotations (rotary axes)
starting from the tool reference point (e.g. spindle housing, swivel head,
machine base, linear axes, machine frame, tilting table, rotary table). Each
translation is described.
All machine axes in the kinematic model are described in the position REF=0
(machine center).

1186 HEIDENHAIN Technical Manual TNC 640


Example 1: Preconfigured kinematics in the factory default setting of the
NC software
Below is an illustration of a machine with three linear axes X, Y, and Z. The
kinematics properties of the machine have been preconfigured in the factory
default setting of the NC software.
Starting from the machine base, the Z axis is in the direction of the tool, and
the Y axis followed by the X axis are in the direction of the machine table.

Z+


X+

Y+

January 2015 6.12 Machine kinematics 1187


To configure the 3-axis example machine you must specify the following
settings in the configuration editor. These settings were already performed for
the factory default setting of the NC software.

Settings in the configuration editor MP number


Channels
Kinematics
CfgKinComposModel
K3 (Key name of the kinematics model)
subKinList K3.202901
[0]: K_ZYX
activeSpindle: S K3.202902
tiltingAllowed: (optional) K3.202904
CfgKinSimpleModel
K_ZYX (Key name of the subkinematics)
kinObjects K_ZYX.202801
[0]: MachAxisZ
[1]: Base
[2]: MachAxisY
[3]: MachAxisX K_ZYX.202802
progAxes
CfgKinSimpleAxis
MachAxisX (key name of the machine axis) MachAxisX.202701
dir: X MachAxisX.202702
axisRef: X
MachAxisY (key name of the machine axis) MachAxisY.202701
dir: Y MachAxisY.202702
axisRef: Y
MachAxisZ (key name of the machine axis) MachAxisZ.202701
dir: Z MachAxisZ.202702
axisRef: Z
CfgKinAnchor
Base (key name of the machine base) Base.203701
kindOfAnchor: MachBase
Channels
ChannelSettings
CH_NC (key name of the machining channel)
CfgKinList
kinCompositeModels: K3 CH_NC.203001
CfgActivateKinem
kinemToActivate: K3 CH_NC.204001
kinemAtStartup CH_NC.204002

1188 HEIDENHAIN Technical Manual TNC 640


6.12.1 Configuring the machine kinematics
Specify the machine kinematics as well as the resulting transformation model,
starting from the machine reference point (REF 0, e.g. traverse block with
M91).
 Set the axes to the machine datum
Basic procedure: Work your way "from the bottom up" through the folders of
the kinematic configuration (System/Channels/Kinematics).
 Configure a machine base
Define the fixed points in the kinematics chain with the CfgKinAnchor
configuration object. A machine base is such a fixed point.
 Create a key name (= folder) for the machine base under CfgKinAnchor,
e.g. Base. Select the value MachBase for the parameter MP_kindOfAnchor.
You will need the machine base later for the configuration of subkinematics.

MP_kindOfAnchor
Fixed point in the kinematics chain
Available from NCK software version: 597 110-03.
Format: Selection menu
Options: MachBase
Specifies a fixed point in the kinematics chain.
In the desired subkinematics (CfgKinSimpleModel), enter the
machine base (e.g. with the key name "Base") at the appropriate
position in the list, i.e.:
MachAxisZ
MachAxisY
Base
MachAxisX
Default: –
Access: LEVEL3
Reaction: RUN

January 2015 6.12 Machine kinematics 1189


 Now define the machine axes in the kinematics chain
Define via CfgKinSimpleAxis the point at which a machine axis becomes
effective in the kinematics sequence. Movements by the indicated axis
(MP_axisRef) change via the entry MP_dir the positions of previously defined
axes or objects relative to subsequent axes or objects. The start of the
sequence is always the tool reference point.
 Define under CfgKinSimpleAxis a key name (= folder) for each machine
axis, e.g. MachAxisX. In MP_dir, enter the direction and in MP_axisRef the
axis from System/CfgAxes/axisList to which the machine axis belongs.

MP_dir
Direction of the machine axis
Available from NCK software version: 597110-03.
Format: Selection menu
Options: X, Y, Z, A, B, C
With this entry you specify the direction of the machine axis in
the local coordinate system, which is given by the previous
coordinate transformations.
The entries X and A have an identical effect and specify the
local X direction as the machine axis.
Y and B stand for the local Y direction, Z and C for the local Z
direction. The machine parameter CfgAxis\isAng of the
assigned axis specifies whether the machine axis is a linear or
rotary axis.
Default: –
Access: LEVEL3
Reaction: RUN

1190 HEIDENHAIN Technical Manual TNC 640


MP_axisRef
Reference to the associated machine axis
Available from NCK software version: 597110-03.
Format: String
Input: Max. 18 characters
Enter the key name of the corresponding axis from System/
CfgAxes/axisList.
Default: –
Access: LEVEL3
Reaction: RUN

 Now define the transformations in three dimensions


Starting from the tool reference point, define in sequence the shifts or
rotations via the linear, rotary and tilting axes to a center point of a (rotary)
table.
 Enter the shifts and rotations under CfgKinSimpleTrans. Define key names
for the transformations. Create a folder for each transformation. A
transformation is performed in the axis direction entered under MP_dir in
the current kinematics sequence by the value entered in MP_val. This can
be a linear translation as well as a rotation about an axis.

Example: Translation of the coordinate system around the Z axis by –15 mm:
MP_dir = Z
MP_val = –15
Enter in MP_val the value for the transformation. For linear axes (X, Y, Z, ...)
the value is entered in [mm] or for rotary axes (A, B, C) in [°]. Example:
MP_val = 47.092 [mm] or
MP_val = 45.05 [°]
The units are not entered. The TNC 640 interprets the units of measurement
from the axis designation indicated in MP_dir.

January 2015 6.12 Machine kinematics 1191


As a rule, the TNC 640 takes changes in the mechanical offset into account,
meaning that these changes do not have to be compensated with a PLC
datum shift.

MP_dir
Direction of the transformation
Available from NCK software version: 597110-03.
Format: Selection menu
Options: X, Y, Z, A, B, C
The selection of X, Y and Z indicates that it is a shift of the
coordinate system in X, Y or Z direction. If A, B, or C is indicated,
then it is a rotation of the coordinate system about the A, B or
C axis.
Default: –
Access: LEVEL3
Reaction: RUN

MP_val
Value of the transformation
Available from NCK software version: 597110-03.
Format: Number
Input: –999 999 999 to +999 999 999 [mm] or [°]
Default: –
Access: LEVEL3
Reaction: RUN

1192 HEIDENHAIN Technical Manual TNC 640


 Now define the subkinematics
Subkinematics can be included separately, and so increase the flexibility of the
machine kinematics. On machines with exchangeable components (e.g.
adapter spindles or angle heads) you can use the subkinematics in multiple
kinematics models.
Subkinematics are defined under CfgKinSimpleModel:
 Create a folder (= key name of the subkinematics) for each subkinematics
under CfgKinSimpleModel. Under MP_kinObjects you describe the
structure of the subkinematics. Then, in sequence from the tool to the
machine base you enter the names of the kinematics objects comprising the
subkinematics. Kinematics objects can be machine axes (key names from
CfgKinSimpleAxis), transformations (key names from CfgKinSimpleTrans)
and fixed points (e.g. the machine base key name from CfgKinAnchor).

MP_kinObjects
List of key names of objects in the kinematics chain
Available from NCK software version: 597110-03.
Format: Array [0 to 49]
Default: –
Access: LEVEL3
Reaction: RUN
 Specify a list of programmable axes in the optional parameter
MP_progAxes if you wish to modify the programmable axes with activation
of this subkinematic. The axes defined in CfgKinSimpleModel/progAxes are
effective in addition to the axes configured in CfgChannelAxes/progAxis.

January 2015 6.12 Machine kinematics 1193


MP_progAxes
Programmable axes
Format: Array [0]...[11]
Input: Programmable axes for this subkinematic. For a kinematic
model, the programmable axes are created by combining the
corresponding lists CfgKinSimpleModel/progAxes and
CfgChannelAxes/progAxis.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

Note

MP_progAxes enables you to modify the list of active programmable axes


for run-time, e.g. via:
 Kinematic switch-over as part of a traverse range switchover, See
"Traverse ranges" on page 1112.
 Kinematic switchover via MP subfile, e.g. via NC command or loading in
the configuration editor.

MP_progAxes enables you to modify the assignment between a


programmable axis letter and a physical axis:
The programmable axis letters are generated from the entries in CfgProgAxis/
axName for all configured instances of CfgProgAxis contained in the
momentarily valid list of programmable axes.
A configuration entity CfgProgAxis is assigned to a physical axis when a
CfgAxis with the same key name has been configured for this. With axes
partly operated as spindles (multi-role axes), assignment via CfgProgAxis/
relatedAxis is also possible.
Proceed as follows for example to optionally assign one from two existing
physical axes to an axis letter:
 Create two CfgProgAxis configuration entities that contain this axis letter in
the parameter MP_axName and that reference two different physical axes.
 With the active kinematic, activate one of the two versions of CfgProgAxis
via MP_progAxes.
Note

Observe that a programmable axis letter in each active kinematic can only
be used once.

1194 HEIDENHAIN Technical Manual TNC 640


 Now collect the subkinematics to form a kinematic model
Define kinematic models under CfgKinComposModel.
 Create a folder (= key name) for the kinematic model under
CfgKinComposModel. Via MP_subKinList you enter the subkinematics
that comprise the kinematic model. The list must be in the sequence from
the tool [0] to the machine table. It is also possible to enter just one
subkinematics. Enter under MP_activeSpindle the name of the spindle
(from System/CfgAxes/axisList) that belongs to the kinematic model. If
tilting of the working plane is allowed for the kinematic model, enter the
value TRUE in the parameter MP_tiltingAllowed.

MP_subKinList
List of key names of the subkinematics
Available from NCK software version: 597110-03.
Format: Array [0 to 5]
Input: Selection menu of the subkinematics from
CfgKinSimpleModel. Enter the subkinematics of which the
machine kinematic consists of from the tool towards the
workpiece.
Default: –
Access: LEVEL3
Reaction: RUN

January 2015 6.12 Machine kinematics 1195


MP_activeSpindle
Key name of the active spindle of this kinematics model
Available from NCK software version: 597 110-03.
Format: String
Input: The name of the spindle can be taken from System/CfgAxes/
axisList, e.g. S, Spindle1, etc.
Default: –
Access: LEVEL3
Reaction: RUN

MP_tiltingAllowed
Tilting the working plane is allowed
Available from NCK software version: 597 110-04.
Format: Selection menu
Options: TRUE
Tilting the working plane is allowed with this kinematic model.
FALSE
Tilting the working plane is not allowed with this kinematic
configuration. The TNC 640 displays an error message.
Default: No value, optional parameter (= TRUE)
Access: LEVEL3
Reaction: RUN
 Last step: Assign the configured kinematics models to the machining
channel.
The settings for the machining channel (ChannelSettings/CH_NC) must
include the kinematic models valid for this channel:
 Open the CfgKinList configuration object. Enter in the
kinCompositeModels list parameter the key names of the kinematic
models for the machining channel.
 Open the CfgAcitvateKinem configuration object. From the selection
menu of the MP_kinemToActivate parameter, select the key name of the
kinematics model to be activated.

1196 HEIDENHAIN Technical Manual TNC 640


 In MP_kinemAtStartup you can enter the key name of a default kinematic
model that is activated during every start-up of the control (regardless of
which key name is entered in MP_kinemToActivate).
 In MP_enableSelection, you can specify whether the end user may select
the kinematics for the program run operating modes using the MOD menu.
With MP_enableSelection, the kinematics selection via MOD can be
allowed (default behavior, Available setting), blocked (Prohibited setting)
or allowed only after entering the KINEMATIC keyword (Password setting).
You can use CfgChangePassword to replace the KINEMATIC keyword by
any desired OEM password, See "Changing HEIDENHAIN code numbers"
on page 1887.

MP_kinCompositeModels
List of key names of kinematic models for this machining
channel
Available from NCK software version: 597110-03.
Format: Selection menu
Options: Key names from Channels/Kinematics/CfgKinComposModel
Default: –
Access: LEVEL3
Reaction: RUN

MP_kinemToActivate
Kinematics to be activated / Active kinematics
Available from NCK software version: 597110-03.
Format: Selection menu
Options: Key names from Channels/Kinematics/CfgKinComposModel
Select the key name of the kinematics model to be activated.
You can also see from this parameter which kinematics model
is currently active.
Default: –
Access: LEVEL1
Reaction: RUN

MP_kinemAtStartup
The kinematics to be activated during control start-up
Available from NCK software version: 597110-06.
Format: Selection menu
Options: Key name of the kinematic model from CfgKinComposModel
Default: –
Access: LEVEL1
Reaction: RUN

January 2015 6.12 Machine kinematics 1197


MP_enableSelection
Kinematics selection via the MOD key
Available from NCK software version: 597110-09.
Format: Selection menu
Options: Specifies whether the kinematics selection by the end user via
the MOD key is available.
If the parameter is not set, kinematic selection is available.
Possible settings:
Available
Kinematics selection in the MOD menu is available.
Prohibited
Kinematics selection in the MOD menu is blocked.
Password
Kinematics selection via the MOD menu available after entering
the KINEMATIC keyword. With CfgChangePassword, the
keyword KINEMATIC can be replaced by any desired OEM
password.
Default: No parameter, value optional (= Available)
Access: LEVEL1
Reaction: RUN

Note

If you need to, you can switch the kinematics model via the NC program:
FN17: SYSWRITE ID290 NR1 (See "Data transfer NC program <=> NC (FN17:
SYSWRITE and FN18: SYSREAD)" on page 2521).

Note

As an alternative you can configure the kinematics with the PC software


KinematicsDesign. Registered customers can download the software from
HESIS-Web Including Filebase on the Internet at http://
hesis.heidenhain.de. The User’s Manual is included with the software as
online help.

The following examples are intended to convey how the configuration data
illustrates the machine kinematics.

1198 HEIDENHAIN Technical Manual TNC 640


Example 2: Rectangular double swivel head

Z1 = 200.4 mm
Z2 = 3.1 mm
X1 = 201.5
Y1 = 1.9 mm
1 to 4:
Sequence of
transformation

January 2015 6.12 Machine kinematics 1199


Settings in the configuration editor
Channels
Kinematics
CfgKinComposModel
K_HEADDBL
subKinList
[0]: K_HEAD1
[1]: K_ZYX
activeSpindle: S
CfgKinSimpleModel
K_HEAD1
kinObjects
[0]: T_Z1
[1]: T_Y1
[2]: MachAxisA
[3]: T_X1
[4]: T_Z2
[5]: MachAxisB
K_ZYX
.
.
.
CfgKinSimpleTrans
T_Z1
dir: Z
val: 200.4
T_Z2
dir: Z
val: 3.1
T_X1
dir: X
val: 201.5
T_Y1
dir: Y
val: –1.9
CfgKinSimpleAxis
MachAxisA
dir: X
axisRef: A
MachAxisB
dir: Y
axisRef: B
.
.
.

1200 HEIDENHAIN Technical Manual TNC 640


Example 3: Double swivel head 45° with A and B axis

Z1 = 99.91 mm
Z2 = 152.41 mm
B1 = –45°
B2 = 45°
C1 = +90°
C2 = –90°
X1 = –1.2 mm
X2 = 0.8 mm
1 to 8: Sequence of transformation

January 2015 6.12 Machine kinematics 1201


Step-by-step instructions for configuring the swivel head:
Step 1: (transformations 1 and 2)

 Translation from tool-reference point to rotary axis A.


Settings in the configuration editor:

Channels
Kinematics
CfgKinSimpleModel
K_HEAD
kinObjects
[0]: T_X1
[1]: T_Z1
CfgKinSimpleTrans
T_Z1
dir: Z
val: 99.91
T_X1
dir: X
val:: –1.2

1202 HEIDENHAIN Technical Manual TNC 640


Step 2: (transformations 3 and 4)

 Rotation for aligning the coordinate system, in order to define the rotary
axis A.
Settings in the configuration editor:

Channels
Kinematics
CfgKinSimpleModel
K_HEAD
kinObjects
.
.
[2]: T_C1
[3]: T_B1
[4]: MachAxisA
CfgKinSimpleTrans
.
.
T_C1
dir: C
val: 90
T_B1
dir: B
val: –45
CfgKinSimpleAxis
MachAxisA
dir: X
axisRef: A

January 2015 6.12 Machine kinematics 1203


Step 3: (transformations 5 and 6)

 Rotation back to the machine coordinate system.


Settings in the configuration editor:

Channels
Kinematics
CfgKinSimpleModel
K_HEAD
kinObjects
.
.
[5]: T_B2
[6]: T_C2
CfgKinSimpleTrans
.
.
T_B2
dir: B
val: 45
T_C2
dir: C
val: –90

1204 HEIDENHAIN Technical Manual TNC 640


Step 4: (transformations 7 and 8)

 Translation to rotary axis B.


Settings in the configuration editor:

Channels
Kinematics
CfgKinSimpleModel
K_HEAD
kinObjects
.
.
[7]: T_X2
[8]: T_Z2
[9]: MachAxisB
CfgKinSimpleTrans
.
.
T_Z2
dir: Z
val: 152.41
T_X2
dir: X
val:: 0.8

January 2015 6.12 Machine kinematics 1205


Settings in the configuration editor:

Channels
Kinematics
CfgKinSimpleAxis
.
.
MachAxisB
dir: Y
axisRef: B

1206 HEIDENHAIN Technical Manual TNC 640


Complete transformation chain:

Settings in the configuration editor


Channels
Kinematics
CfgKinComposModel
K_HEAD_45DEG
subKinList
[0]: K_HEAD
[1]: K_ZYX
activeSpindle: S
CfgKinSimpleModel
K_HEAD
kinObjects
[0]: T_X1
[1]: T_Z1
[2]: T_C1
[3]: T_B1
[4]: MachAxisA
[5]: T_B2
[6]: T_C2
[7]: T_X2
[8]: T_Z2
[9]: MachAxisB
K_ZYX
.
.
.
CfgKinSimpleTrans
T_Z1
dir: Z
val: 99.91
T_Z2
dir: Z
val: 152.41
T_B1
dir: B
val: –45
T_B2
dir: B
val: 45
T_C1
dir: C
val: 90
T_C2
dir: C
val: –90
T_X1
dir: X
val:: –1.2
T_X2
dir: X
val:: 0.8

January 2015 6.12 Machine kinematics 1207


Settings in the configuration editor
Channels
Kinematics
CfgKinSimpleAxis
MachAxisA
dir: X
axisRef: A
MachAxisB
dir: Y
axisRef: B
.
.
.

1208 HEIDENHAIN Technical Manual TNC 640


6.12.2 Reading / changing the kinematics in the NC program
The READ KINEMATICS and WRITE KINEMATICS functions are used to read
and modify elements of the currently active kinematics in the NC program. In
the NC program you cannot define this function (soft keys: program functions,
kinematic functions) until you have entered the code number 555 343.
Machine axes ("MachAxis"), transformations ("Trans"), fixed points ("Base") and
collision objects ("CMO") are elements of the transformation chain that can be
read with the TNC 640 by means of READ KINEMATICS. WRITE KINEMATICS
is used to overwrite the AXIS and COORD elements under
CfgKinSimpleTrans.
READ KINEMATICS
Syntax:
READ KINEMATICS NOTE_QS0 MODE_Q0 RESULT_Q1
KEY “KEY;AXIS;DIR;COORD“ TO QS1
 NOTE_QS (OUTPUT):
The function stores the key names of the relevant objects of the kinematic
chain in this string variable. You need these key names if you want to use
WRITE KINEMATICS to describe these transformation elements again.
 MODE_Q (INPUT):
Call mode. Permissible values are:
0: Increment read-pointer (next line)
1: Set the read-pointer to the beginning of the transformation chain (first
line)
 RESULT_Q (OUTPUT):
In "Result", the function provides information about possible errors.
0: No error
1: End of kinematics
3: Other problem
 KEY (INPUT):
The key words (separated by semicolon) whose entries are to be read are
transferred in "Key." On the TNC 640 the key words have the following
meaning:
• KEY: Type of object in the kinematic chain (MachAxis, Trans, Base,
CMO)
• AXIS: Referenced axis (MP_axisRef under CfgKinSimpleAxis) or
direction of a transformation (MP_dir under CfgKinSimpleTrans)
• DIR: Direction of a machine axis (MP_dir under CfgKinSimpleAxis)
• COORD: Value of the transformation (MP_val under
CfgKinSimpleTrans)
• LOCERRX to LOCERRC: Values for position errors (KinematicsComp)
• RESETLOCERR, ERRONTOOLSIDE: Effect of the position error
description (KinematicsComp)
 TO QS (OUTPUT):
The requested data is returned, separated by a semicolon. The sequence
depends on the sequence of the "KEY" key words.

January 2015 6.12 Machine kinematics 1209


WRITE KINEMATICS
Syntax:
WRITE KINEMATICS NOTE_QS0 RESULT_Q1 KEY “AXIS;COORD“ = QS1
 NOTE_QS (INPUT):
Key names of a specific transformation element under CfgKinSimpleTrans.
The corresponding key names can be determined beforehand with READ
KINEMATICS.
 RESULT_Q (OUTPUT):
In "Result", the function provides information about possible errors.
0: No error
2: Key not found
3: Other problem
 KEY (INPUT):
The key words (separated by semicolon) whose entries are to be
overwritten. With the TNC 640 the following key words under
CfgKinSimpleTrans can be overwritten:
• AXIS: Direction of a transformation (MP_dir under CfgKinSimpleTrans)
• COORD: Value of the transformation (MP_val under
CfgKinSimpleTrans)
 =: (INPUT)
A string that contains the new entries is to be transferred as value. The
entries are separated by a semicolon. The sequence depends on the
sequence of the "KEY" key words.

1210 HEIDENHAIN Technical Manual TNC 640


6.12.3 Finding/activating kinematics through the PLC
Module 9097 Activate kinematics configuration
With Module 9097, the PLC activates a kinematic configuration. The kinematic
model must be entered under CfgKinComposModel in the machine
configuration. It must also be in CfgKinList of the NC machining channel.
Constraints:
 The module is not executable in the cyclic PLC program.
 While the module is being executed you must not abort the submit job with
a CAN command.
 Selection is not possible with a running NC program.
Call:
PS B/W/D/K <Index from CfgKinList>
PS B/W/D/K <Mode setting>
0: Parameter currently has no function
(Mode must be 0)
CM 9097
PL B/W/D <Error condition>
0: Kinematic configuration was activated
1: Invalid mode setting was transferred
2: Axis does not exist in CfgKinList
6: Call was not from a submit/spawn job
7: Call during running program without strobe
8: Configuration data CfgKinList is not defined
12: No NC channel defined, or more than one defined
13: Names of collision objects not unique
Error code:

Marker Value Meaning


M4203 or 0 Kinematic configuration was activated
NN_GenApiModule 1 Error code in NN_GenApiModuleError
Error
W1022 or 2 Invalid mode setting programmed.
Index in CfgKinList does not exist.
NN_GenApiModule Configuration data CfgKinList is missing
ErrorCode 20 Module was not called in a spawn or
submit job
21 Call during already started program
without strobe

January 2015 6.12 Machine kinematics 1211


Module 9098 Find active kinematics configuration
The PLC uses Module 9098 to find the active kinematics configuration. Both
the index from CfgKinList as well as the key name of the kinematic model can
be interrogated.
Constraints:
 The module is not executable in the cyclic PLC program.
Call:
PS B/W/D/K <String number for key name of the kinematics model>
0...15: String number for key name
(the index from CfgKinList is also acquired)
–1: Only find index from CfgKinList; do not acquire the name
CM 9098
PL B/W/D <Index from CfgKinList>
–1: Index could not be acquired
Error code:

Marker Value Meaning


M4203 or 0 Kinematic configuration was selected
NN_GenApiModule 1 Error code in
Error NN_GenApiModuleErrorCode
W1022 or 2 Invalid parameter programmed for string
NN_GenApiModule number
ErrorCode 20 Module was not called in a spawn or
submit job
30 Configuration data CfgKinList or
CfgActivateKinem is not defined, or the
entry from CfgActivateKinem was not
found in CfgKinList
58 No NC channel configured, or more than
one configured

1212 HEIDENHAIN Technical Manual TNC 640


6.12.4 Kinematic switch-over
For switchover of the kinematics during activation/deactivation of axes, the
TNC generally provides the following options:
 Automated via M function
 User parameters
 PLC input (indexing head)
 OEM start-up cycle
 PLC soft key

Switching the The kinematics can be switched via M functions without connecting or
kinematics via disconnecting physical axes as follows:
M function
 Switch the kinematics in the M function macro via the function FN17: ID290
NR1. The value corresponds to the index of the kinematics from
CfgChannelAxes -> kinCompositeModels available in the NC channel.
 In addition to this, call PLC Module 9226 within the M function, to specify a
new status (e.g. "closed-loop axis" or "deactivated axis") for an NC axis via
the PLC program.
 Deactivating an axis within the kinematics leads to error, which is why the
following sequence for calling the functions within the respective M
function macro must be followed.
Example of deactivating an axis:

BEGIN PGM M350 MM


FN17: SYSWRITE ID290 NR1 =VALUE (switch kinematics)
M350 (M function with PLC module 9226 for deactivating an axis)
END PGM M350 MM

Example of activating an axis:

BEGIN PGM M351 MM


M351 (M function with PLC module 9226 for activating an axis)
FN17: SYSWRITE ID290 NR1 =VALUE (switch kinematics)
END PGM M351 MM

Note

Using this M function means a manipulation of the PLC program. It should


be programmed and tested by the OEM. PLC Module 9226 can only be
called once within the M function. The M function is acknowledged as soon
as the correct axis status (NN_AxLogNumber) is returned.

January 2015 6.12 Machine kinematics 1213


Switching the The kinematics can also be switched via user parameters without connecting/
kinematics via disconnecting physical axes and without involvement of the PLC. The XML
user parameters files user123.xml or userparam.xml are available for this, See "User
parameters" on page 614.
Example 1:
In shipping condition, the user parameters (user123.xml) only permit selecting
the kinematics for the machine operating modes. The parameter for selecting
the kinematics for the simulation channel can be integrated with the following
expansion:
<Node Name=“Simulation“>
<Keylist Name=“ChannelSettings“ Keyfilter=“CH_S*“>
<Entity Name=“CfgActivateKinem“/>
</Keylist>
</Node>

Example 2:
The following expansion in the userparam.xml file integrates the parameter for
activation and deactivation of the C axis and for defining its position:
<Node Name=“Achs-Mode for Axis C“>
<SimpleAttribute Keyfilter=“C“ Name=“axisMode“ Entity=“CfgAxis“/>
</Node>
<Node Name=“Kinematic“>
<Node Name=“Center-C_Table in Y“>
<SimpleAttribute Keyfilter=“K01_T_Y“ Name=“val“
Entity=“CfgKinSimpleTrans“ DialogRes=“DB_ID_OEMTXT_1“/>
</Node>
<Node Name=“Center-C_Table in X“>
<SimpleAttribute Keyfilter=“K01_T_X2“ Name=“val“
Entity=“CfgKinSimpleTrans“ DialogRes=“DB_ID_OEMTXT_2“/>
</Node>
</ConfigtreeLayout>

Note

Please note that modifications in the userparam.xml and user123.xml files


may be overwritten during a software update.

1214 HEIDENHAIN Technical Manual TNC 640


Kinematic As of version Basic-NCK-V04-04 of the PLC basic program, you can switch an
switchover via optional additional axis via a PLC input if an available PLC input
PLC input (I_additional_axis_mounted) has been configured.
The additional axis may only be connected and disconnected while the power
is off. Otherweise the error message "0245 Selection additional axis" is
displayed.
Any optional additional axes must be deactivated during switch-on, i.e. the
parameter MP_deactivatedAtStart=TRUE must be set.
When the PLC program has been compiled and the control has been initialized
(NN_GenNcInitialized = 1; StartUp cycle completed) the condition of the
"I_additional_axis_mounted" PLC input is checked:
 PLC input = 1: Axis connected, kinematics with additional axis
is activated
 PLC input = 0: Axis disconnected, kinematics without additional axis
is activated

Switching the Optional additional axes can also be activated via the OEM startup cycle if an
kinematics via OEM available PLC input (I_additional_axis_mounted) has been configured.
startup cycle The additional axis may only be connected and disconnected while the power
is off. Otherweise the error message "0245 Selection additional axis" is
displayed.
Any optional additional axes must be deactivated during switch-on, i.e. the
parameter MP_deactivatedAtStart=TRUE must be set.
When the PLC program has been compiled the state of the
"I_additional_axis_mounted" PLC input is checked.
 PLC input = 1: Axis is connected and is activated,
MG_kin_additional_axis is set in addition
 PLC input = 0: Axis is disconnected and remains deactivated,
MG_kin_additional_axis is reset in addition
During the execution of the OEM startup cycle (path under CfgSystemCycle/
OEM_STARTUP), the corresponding kinematic model is activated via function
FN17: SYSWRITE ID290 NR1 depending on the MG_kin_additional_axis
PLC operand.

Switchover by As this possibility is only permitted for manual tilting axes, the corresponding
PLC soft key PLC soft key may only be visible in Manual mode. When the PLC soft key is
pressed, the kinematics of the manual tilting axis is switched via PLC Module
9097.

January 2015 6.12 Machine kinematics 1215


6.12.5 Temperature compensation in the kinematics model

Settings in the configuration editor MP number


Channels
Kinematics
CfgKinSimpleTrans
[Key name of the translation]
realTimeComp 202603
temperatureComp 202604

A change in temperature always causes a change in length. For tilting axes,


thermal growth of the spindle head must therefore be compensated in the X,
Y and Z linear axes.
The following temperature compensation is possible on the TNC 640:
 Permanent temperature compensation in the kinematics model (kinematic
temperature compensation):
• MP_temperatureComp
By referencing PLC operands, using constants and mathematical
operations, you can change the values in the kinematics model.
Changing these values leads to compensation movements of the
translation axes. To define these values, use MP_temperatureComp.
• MP_realTimeComp
You can change values in the kinematic model via the PLC. Changing
these values leads to compensation movements of the translation axes.
To make changes, enter the given name of a PLC operand via
MP_realTimeComp, see next page.
• You can only use one of these possibilities. It is not possible to enter
values in MP_temperatureComp and MP_realTimeComp at the same
time.

Note

 The temperature compensation via MP_realTimeComp is a restricted


version of the temperature compensation performed in the kinematics
model. It is not possible to enter a formula; and to define values, you
need to use the fixed PLC operands described below,, see page 1218.
Formula calculations must be performed in the PLC program.
 Compared to this, the temperature compensation in the kinematics
model via MP_temperatureComp provides many more options. There,
you can preset compensation values directly in the machine parameters
using any desired PLC operands, constants and mathematical
operations. HEIDENHAIN therefore recommends to perform
temperature compensation in MP_temperatureComp, see page 1220.
 Please note that values from MP_realTimeComp and
MP_temperatureComp with the same algebraic sign are antagonistic.
The effect of the value in MP_temperatureComp is consistent with
other settings in the kinematics chain, e.g. the value from
CfgKinSimpleTrans/MP_val.

1216 HEIDENHAIN Technical Manual TNC 640


A temperature change can also have the effect that structural elements of the
kinematics chain rotate relatively to each other. A coordinate system of the
kinematics chain can thus not only be shifted by an additional value via
MP_temperatureComp or MP_realTimeComp, but it can also be rotated by
an additional value. Such additional rotations are also compensated in the X, Y
and Z linear axes.
The compensation values specified in MP_temperatureComp or
MP_realTimeComp are monitored every second and value changes are
reported to the position controller.
The unit for values transferred via MP_temperatureComp to the position
controller is 1 mm or 1 degree.
The unit for values transferred via MP_realTimeComp to the position
controller is 1/10000 mm or 1/10000 degree.
Using Module 9041 #8, you can read values indicating how much the main
axes (X, Y, Z) are repositioned due to kinematic compensations (temperature
compensation and KinematicsComp).

Note

 The following functions only use the nominal kinematics, without taking the
compensation values in MP_temperatureComp and
MP_realTimeCompinto account.
• Dynamic collision monitoring (DCM)
• Limit-switch monitoring
• Inverted kinematics (calculation of rotary axis positions based on the
required tool orientation)
 If this type of temperature compensation is activated, it is effective in any
situation, no matter whether movements are performed using the
reference system (M91) or the input system. The compensation is always
effective for the position of the TCP, always taking the current tool length
and the position of the rotary axes into account for the calculation. The
angular error of the tool will not be compensated because this could cause
large, undesirable movements.

January 2015 6.12 Machine kinematics 1217


Compensation via With MP_ realTimeComp, you need to use the fixed PLC operands described
MP_realTimeComp below. Please note that this restriction does not apply if you use
MP_temperatureComp.

PLC operand / Description Type

DG_PP_HeadXKinComp D
Spindle head: compensation value for positive X direction

DG_PP_HeadXKinCompNeg D
Spindle head: compensation value for negative X direction

DG_PP_HeadYKinComp D
Spindle head: compensation value for positive Y direction

DG_PP_HeadYKinCompNeg D
Spindle head: compensation value for negative Y direction

DG_PP_HeadZKinComp D
Spindle head: compensation value for positive Z direction

DG_PP_HeadZKinCompNeg D
Spindle head: compensation value for negative Z direction

DG_PP_TableXKinComp D
Machine table: compensation value for positive X direction

DG_PP_TableXKinCompNeg D
Machine table: compensation value for negative X direction

DG_PP_TableYKinComp D
Machine table: compensation value for positive Y direction

DG_PP_TableYKinCompNeg D
Machine table: compensation value for negative Y direction

DG_PP_TableZKinComp D
Machine table: compensation value for positive Z direction

DG_PP_TableZKinCompNeg D
Machine table: compensation value for negative Z direction

1218 HEIDENHAIN Technical Manual TNC 640


The predefined PLC operands listed in the table must be used to specify axis
compensation values.
 Enter the PLC operand in the respective translation of the kinematic
configuration in MP_realTimeComp.
 Define all 12 PLC operands in your machine PLC project, even if you are not
using all 12 operands.
 Direct formula input in MP_realTimeComp is not supported. Arithmetic
calculations must therefore be done in the PLC program.
Please note that this restriction does not apply if you use
MP_temperatureComp.

Note

Please note the following when using MP_realTimeComp:


The value transfer via the PLC operands to the position controller must be
made in 1/10000 mm or 1/10000 degrees.

January 2015 6.12 Machine kinematics 1219


Compensation via You can preset compensation values directly in the machine parameters by
MP_temperature referencing any desired PLC operand and using constants and mathematical
Comp operations.
When referencing any PLC operand, precede the operand name with the ID
plc_, e.g. MP_temperatureComp = plc_DG_PP_TempCompX
To build formulas, certain mathematical functions (See page 567) and variables
are available:

Type Prefix Identifier


Value of a PLC variable PLC_ Names of the globally defined PLC
variables

Note

Please note the following for MP_temperatureComp:


As the unit for the value transfer to the position controller, use mm or
degree (integers).

Using the FN function ID 290 NR5, you can deactivate / activate the
temperature compensation features in the kinematics model, e.g. in an NC
macro, see page 2521.
If you deactivate the compensation in a TOOL CALL, make sure that the
current state is saved first and then reset before running the
OEM_TCALL_TS_PRE macro. Restore the old state only after the
OEM_TCALL_TS_POST macro has been terminated.

Note

Please note that this FN function will also be executed in a block scan,
unless you explicitly prevent it.

In addition, when you enter the code number 211258, additional soft keys are
displayed in manual mode that can be used to activate or deactivate
KinematicsComp and / or the temperature compensation in the kinematics
model (MP_temperatureComp or MP_realTimeComp).

1220 HEIDENHAIN Technical Manual TNC 640


Example In most cases you will use the following formula to calculate length changes
in your PLC project:

Δl = l ⋅ ΔT ⋅ α

Δl: Change in length


l: Length
ΔT: Change in temperature
α: Coefficient of linear expansion (steel: e.g. 11.5 · 10–6 1/K)
Example:

Z1

Z1 = +300 mm (at 20 °C)


αsteel = 11.5 · 10–6 1/K (coefficient of expansion of steel)
DG_Temp_SpindleHead: Temperature measured by a Pt100 thermistor

January 2015 6.12 Machine kinematics 1221


The following compensation procedures are available (please note the
different algebraic signs):
 Currently used procedure:
Input in MP_temperatureComp, the formula and PLC operand can be
entered directly into the MP and are offset there:
MP_temperatureComp = 3.45e–3 * (plc_DG_Temp_SpindleHead – 20)
 Previously used procedure:
Value for PLC operand in MP_realTimeComp (calculated with PLC
program)
MP_realTimeComp = DG_PP_HeadZKinComp
DG_PP_HeadZKinComp must be calculated in the PLC program:
DG_PP_HeadZKinComp = -300 * 11.5e–6 * (DG_Temp_SpindleHead – 20)
Better would be:
= -3.45e–3 * (DG_Temp_SpindleHead – 20)
If the front part of the spindle gets warmer by 40 K, it results in a spindle length
growth of
–6 1
Δl = 300 mm ⋅ 40 K ⋅ 11.5 ⋅ 10 ---- = 0.138 mm
K

1222 HEIDENHAIN Technical Manual TNC 640


Exemplary PLC program section (only required if MP_realTimeComp is
used):
*-------------------------
* Temperature compensation
*-------------------------

#define DG_PP_HeadXKinComp D
#define DG_PP_HeadXKinCompNeg D
#define DG_PP_HeadYKinComp D
#define DG_PP_HeadYKinCompNeg D
#define DG_PP_HeadZKinComp D
#define DG_PP_HeadZKinCompNeg D
#define DG_PP_TableXKinComp D
#define DG_PP_TableXKinCompNeg D
#define DG_PP_TableYKinComp D
#define DG_PP_TableYKinCompNeg D
#define DG_PP_TableZKinComp D
#define DG_PP_TableZKinCompNeg D

#define DG_Temp_SpindleHead D
#define DG_Temp_Increase_SpindleHead D
#define KL_Spindle_TemperatureCoefficient K +0.00000115
#define KG_Translation_Z_20degr K +300

GLOBAL Tilting_Temperature_Comp
;----------------------------
LBL Temperature_Comp
;----------------------------

L DG_Temperature_SpindleHead
- K+20
= DG_Temp_Increase_SpindleHead

L KG_Translation_Z_20degr
x DG_Temp_Increase_SpindleHead
x KL_Spindle_TemperatureCoefficient
x k+10000 ; unit of measure for value transfer is 1/10000 mm or °
= DG_PP_HeadZKinComp

January 2015 6.12 Machine kinematics 1223


MP_temperatureComp
Formula for real-time kinematic compensation
Available from NCK software version: 597110-09.
Format: String
Input: The coordinate system is additionally shifted or rotated by the
value calculated with the formula. References to PLC operands,
constants and mathematical operators are allowed.
Unit of measure for the value transfer to the position controller:
1 mm or 1 degree, Grad, max. 240 characters
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_realTimeComp
PLC operand for real-time kinematic compensation
Available from NCK software version: 597110-05.
Format: String
Input: The coordinate system is additionally shifted or rotated by the
value that the PLC operand contains.
Unit of measure for the value transfer to the position controller:
1/10000 mm or 1/10000 degrees
The following PLC operands can be used and must have been
defined in the PLC program:
DG_PP_HeadXKinComp
DG_PP_HeadXKinCompNeg
DG_PP_HeadYKinComp
DG_PP_HeadYKinCompNeg
DG_PP_HeadZKinComp
DG_PP_HeadZKinCompNeg
DG_PP_TableXKinComp
DG_PP_TableXKinCompNeg
DG_PP_TableYKinComp
DG_PP_TableYKinCompNeg
DG_PP_TableZKinComp
DG_PP_TableZKinCompNeg
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1224 HEIDENHAIN Technical Manual TNC 640


6.12.6 KinematicsOpt
Accuracy requirements are becoming increasingly stringent, particularly in the
area of 5-axis machining. Complex parts are required to be manufactured with
precision and reproducible accuracy even over long periods.
KinematicsOpt (software option #48) is an important component that helps
you meet these complex requirements: A 3-D touch probe cycle measures the
rotary axes on your machine fully automatically, regardless of whether they
are used in rotary-table or head configurations. A calibration sphere is fixed at
any position on the machine table, and measured with a resolution that you
define. In the cycle definition, you only have to define for each rotary axis the
area that you want to measure.
From the measured values, the TNC 640 calculates the static tilting accuracy.
The software minimizes the spatial error arising from the tilting movement
and, at the end of the measurement process, automatically saves the machine
geometry in the respective machine constants of the kinematics table.

Note

Please also note the important information in the User's Manual for Cycle
Programming of the TNC 640 regarding the use of cycles for
KinematicsOpt!

Functions  Testing the static tilting accuracy by probing different points on a calibration
sphere with a 3-D workpiece touch probe
 Optimizing the static tilting accuracy by adjusting the kinematics description
 Backing up and restoring the kinematics data that can be changed with this
software

January 2015 6.12 Machine kinematics 1225


Prerequisites

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of machining channel]
CfgKinematicsOpt
maxModification 204801
maxDevCalBall 204802
mStrobRotAxPos 204803

 The software options #48 (KinematicsOpt), #8 (Advanced Function Set 1)


and #17 (Touch probe functions) must be enabled.
 NCK software version 597110-03 or higher must be installed.
 The 3-D touch probe used for the measurement must be calibrated.
 A calibration sphere with an exactly known radius and sufficient rigidity must
be attached to the machine table.
 The kinematics description of the machine must be complete and correct.
The transformation values must be entered with an accuracy of approx.
1 mm.
 All machine axes involved must have adequate positioning accuracy.
 The geometry of the machine must have been measured.
 The machine datum (MP_refPosition) must be defined for the rotary axes
(is not measured in the cycle).
 The machine parameters MP_maxModification, MP_maxDevCalBall and
MP_mStrobeRotAxPos must have been defined (CfgKinematicsOpt).
 The cycles use the value entered in MP_isHirth to determine whether a
rotary axis is a Hirth axis.

1226 HEIDENHAIN Technical Manual TNC 640


Kinematics In the optimizing mode, the linear offsets (compensation translations) are
description adjusted to the kinematics description. Please note that two compensation
translations defining the position (not the angular position) of the rotary axis
must be defined for every rotary axis. The TNC 640 can find a suitable
compensation translation even beyond two rotary axes. As soon as a
translation is not parallel to the rotary axis to be optimized it can be accepted
as a compensation translation.
If further axes lie between the rotary axis to be measured and the translation,
then the translation must be parallel to the other rotary axes.
Example of changes in the kinematics description with a B head and C table:

Key name of the Value in MP_dir Value in MP_dir


translation/axis in (compensation)
CfgKinSimpleTrans and
CfgKinSimpleAxis
TransX1 +0.01 +0.006
TransY1 +0 No changes
TransZ1 +250.02 +250.034
MachAxisB No changes
MachAxisZ No changes
MachAxisY No changes
MachAxisX No changes
TransZ2 -655.045 No changes
TransX2 +440.01 +440.006
TransY2 +250.02 +250.034
MachAxisC No changes
TransX3 +0 No changes

Tolerance limit In MP_maxModification you can enter the maximum permissible amount of
change for the cycles used in KinematicsOpt. The amount of change prevents
you from accidentally changing the machine kinematics too much with
KinematicsOpt.
Whenever optimization requires a change greater than what is permitted in
MP_maxModification, a message appears and the change must be
confirmed with NC start.

January 2015 6.12 Machine kinematics 1227


Sphere radius In MP_maxDevCalBall you can enter the maximum permissible deviation of
the calibration sphere radius. The sphere radius is measured and checked with
KinematicsOpt. This monitoring feature also detects incorrect probing caused
by contamination.

MP_maxModification
KinematicsOpt: Amount of change
(compare to iTNC 530: MP6600)
Available from NCK software version: 597110-05.
Format: Number
Input: 0.010 to 1.000 [mm]
Default: 0.05 [mm]
Access: LEVEL3
Reaction: NOTHING

MP_maxDevCalBal
KinematicsOpt: Radius deviation of the calibration sphere
(compare to iTNC 530: MP6601)
Format: Number
Input: 0.010 to 0.100 [mm]
Default: 0.02 [mm]
Access: LEVEL3
Reaction: NOTHING

Danger

After optimization the position of the presets relative to the workpiece may
have changed.
It is essential that you check or reset the datum points.

PLC positioning Some rotary axes cannot be moved by the NC, e.g. Hirth axes that can be
positioned only by the PLC.
In MP_mStrobeRotAxPos, you can enter an M number that is used for
positioning all rotary axes. This M function will be executed instead of the
positioning movements through the NC. The rotary-axis angles required for
this are saved in the Q parameters Q120 to 122. As a result, a positioning
movement must always be initiated by an M macro. This is a very simple
example of how this M macro may look like:
BEGIN PGM MM
FN 19: PLC =+4 / Q120 ;the PLC positions the A axis
FN 19: PLC =+6 / Q122 ;the PLC positions the C axis
END PGM MM

Note

Only local Q parameters (QL) are allowed in the M macro and in the NC
programs called by the M macro. Otherwise, there is a great potential
danger of collision during the further execution of the cycle.
The cycles cannot verify that the correct position has been reached.

1228 HEIDENHAIN Technical Manual TNC 640


Be sure to remember while programming that the rotary axes must be pre-
positioned to 0° degrees before the execution of the cycles if you use a PLC
positioning movement. Since, in this case, there is also a great danger of
collision if automatic presetting is used, this prerequisite must be confirmed
by the operator.
This macro is called from all KinematicsOpt cycles when rotary axes are
positioned. If an M function macro is specified, the target coordinates, not the
rotary-axis positioning movement, are saved in the Q parameters 120 to 122
(axis angles) and the M function is called. The M function must ensure the
correct positioning of the rotary axes to the nominal positions, as defined in
Q120 to Q122.
Please keep in mind that you must not perform any transformations in the
macro, and that you may only use QL parameters (no QS parameters from 0
to 99)!

MP_mStrobeRotAxPos
KinematicsOpt: Number of the M-function macro for positioning
the rotary axes
(compare to iTNC 530: MP6602)
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 999
–1: Function inactive
Default: -1
Access: LEVEL3
Reaction: NOTHING

Unselecting a With expansion of the measured points to 0-12 it is possible to "conceal" a


rotary axis rotary axis in KinematicsOpt (0 = axis deselected). The angle of incidence of
this axis is considered nevertheless.

Note

Please note that all transformations are effective incrementally.


Compensation values for one axis lead to a corresponding shift in all
subsequent positions of the axes.
By deselecting an axis, it is completely removed from the optimization with
KinematicsOpt.

January 2015 6.12 Machine kinematics 1229


Positioning The positioning direction of the rotary axis to be measured is determined from
direction the start angle and the end angle. Because +270° is identical to –90° for
example, the same angles can result in different measuring positions.
Examples:
Start angle = –90°
End angle = +90°
Measuring points = 4
Angle increment = (end angle – start angle) / (measuring points – 1)
= (90° - -90°) / 3
= +60°
Therefore: P1 = –90°; P2 = –30°; P3 = +30°; P4 = +90°
Start angle = +270°
End angle = +90°
Measuring points = 4
Angle increment = (end angle – start angle) / (measuring points – 1)
= (90° - 270°) / 3
= -60°
Therefore: P1 = –90°; P2 = –120°; P3 = –210°; P4 = –270°

Backlash and You can activate backlash measurement for all rotary axes in the input
positioning errors parameter Q432 during programming. You must enter an angular value that is
greater than the actual backlash of the rotary axes.
Additionally, the positioning error of the rotary axis is always determined.
These data basically depend on the radius of the measuring circle and the
accuracy of all other axes involved.

Log function The Cycles 451 and 452 save log files in the PLC:\ directory, from which you
can see the results of the individual measuring points. TNCscope can be used
for a graphic evaluation (import the table). On the Extras -> Info tab, you can
display additional information about the measurement and a short legend of
the individual measured data.
The files are saved as TCHPR45x_<axis name>.A in PLC:\ . The columns created
may vary depending on the conditions for measurement.
Data with the designation REF are to be understood with respect to the
machine coordinate system. Data with the designation ERROR are measured
errors in the coordinate system of the rotary axes. Data with the designation
OPT are the errors in the coordinate system of the rotary axis to be expected
after an optimization.
The data can be imported for evaluation (e.g. in TNCscope, Excel).

TNCscope: Open the file in TNCscope by selecting:


 File – Import Table. Then select the file to be opened.
 The Import Table dialog box opens.
 Select Fixed sampling interval and enter the value 1 ms in the Time unit
field.
 Select "/" as the column separator and confirm your entry with OK.

1230 HEIDENHAIN Technical Manual TNC 640


Measured and optimized deviations (simulated measured data / displayed with
TNCscope):

January 2015 6.12 Machine kinematics 1231


Optimized deviations as a function of the position of the rotary axis (simulated
measured data / displayed with TNCscope):

 Programming station
The cycle recognizes whether a programming station is being used.
Because it is not possible to measure real data on a programming station,
the measured data are simulated.

1232 HEIDENHAIN Technical Manual TNC 640


Touch probe cycle Use this cycle to save the values of the active kinematics description in order
450 (SAVE to be able to restore the active kinematics description if required. For a
KINEMATICS) detailed description of Cycle 450 SAVE KINEMATICS, refer to the User's
Manual for Cycle Programming of the TNC 640. The TNC 640 stores the saved
data in the file TNC:\table\450.KD.

Note

You can save and restore the TNC:\table\450.KD file through a backup with
TNCbackup (a feature of TNCremo).

All axis and transformation entries containing numerical values are saved.
When restoring the data, the compensation limit from MP_maxModification
is also considered, independently of whether it is a translation or a rotation.

Touch probe cycle The MEASURE KINEMATICS cycle enables you to check and, if required,
451 (MEASURE optimize the kinematics of your machine. Use the 3-D TS touch probe to
KINEMATICS) measure any calibration sphere that you have attached to the machine table.

Note

HEIDENHAIN recommends using the KKH 250 (ID 655475-01) or KKH 100
(ID 655457-02) calibration sphere. These calibration spheres have
especially high rigidity and were specifically designed for machine
calibration. Please contact HEIDENHAIN if you have any questions in this
regard.

For a detailed description of Cycle 451 MEASURE KINEMATICS, refer to the


User's Manual for Cycle Programming of the TNC 640.

January 2015 6.12 Machine kinematics 1233


6.13 Tilting axes
Swivel heads and tilting tables are often used on milling machines for 5-axis
machining and to machine workpieces from several sides.
Suitable NC programs are written with a CAD system or directly at the TNC
640 using the "Tilt working plane" (PLANE, TCPM, Cycle 19) function. The user
programs the part program in the X/Y plane and the TNC 640 interpolates the
proper axes. All path functions, cycles, "datum setting" and "probing" can be
applied in the transformed working plane.

6.13.1 "Tilt working plane" function (software option #8)

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgRotWorkPlane
rotateWorkPlane 201201
planeOrientation 201202
autoMoveAxes 201204
rotPreference 201206
autoCorrectVector 201207

The user defines the position of the working plane in Cycle 19, Tilt Working
Plane or through the Plane function (see User’s Manual). Then the TNC 640
performs a coordinate transformation.
You can use the 3D ROT soft key to activate the tilted working plane
separately for the Manual Operation and the Program Run, Single Block and
Program Run, Full Sequence operating modes.
With the CfgRotWorkPlane configuration object you can define the function
of the tilted working plane cycle.
With the MP_rotateWorkPlane machine parameter you permit the machine
operator to use the tilted working plane function. Set the parameter to On to
show the 3D ROT soft key.

MP_rotateWorkPlane
Permit tilting of the working plane
Available from NCK software version: 597 110-03.
Format: Selection menu
Options: On
"Tilt Working Plane" function permitted
Off
"Tilt Working Plane" function not permitted
Default: On
Access: LEVEL3
Reaction: RESET

1234 HEIDENHAIN Technical Manual TNC 640


Assignment of With the MP_planeOrientation machine parameter you define whether the
input values input applies to the position of the tilted axes ("RotAxValues" selected) or the
(Cycle 19) position of the working plane ("SpaceAngles" selected).

MP_planeOrientation
Orientation of the working plane
Available from NCK software version: 597 110-03.
Format: Selection menu
Options: RotAxValues
In Cycle 19 the coordinate system of the working plane is
calculated from the axis values of the rotational axes (A, B, C).
SpaceAngles
In Cycle 19 the coordinate system of the working plane is
interpreted as a spatial angle.
Default: RotAxValues
Access: LEVEL3
Reaction: RESET

Automatic After the coordinate transformation, the Z axis remains parallel to the
positioning tool axis, perpendicular to the X/Y plane.
With the MP_autoMoveAxes parameter you define whether the "Tilt working
plane" function automatically positions the tilting axes and the linear axes. In
this case the user can enter the feed rate and set-up clearance in the cycle.
The TNC 640 then moves automatically to the set-up clearance and
interpolates the tilting and principal axes so that the tool point remains in the
same position in the tilted coordinate system.

MP_autoMoveAxes
Automatic positioning of the rotational axes
Available from NCK software version: 597 110-03.
Format: Selection menu
Options: NoMove
No automatic positioning
MoveRotAxesOnly
Automatic positioning of the rotational axes
AutoMoveAllAxes
Automatic positioning of rotational and translation axes
Default: AutoMoveAllAxes
Access: LEVEL3
Reaction: RESET

January 2015 6.13 Tilting axes 1235


Realization of tilt On machines with C tables and tool axis Z, the spatial angle C not equal to 0
condition (spatial (with A = 0 and B = 0) can be realized through a rotation of the coordinate
angle C not equal to system or a rotation of the table. Specify the desired behavior in the parameter
0, Cycle 19 and MP_rotPreference.
Plane)
MP_rotPreference
Cycle 19 and PLANE function: Realization of the tilt position
Available from NCK software version: 597 110-04.
Format: Selection menu
Options: If the first rotary axis in a tilting movement is under that table
and parallel to the tool direction, you have the following options:
CoordRot
The spatial angle C is realized through a rotation of the table.
The TNC 640 sets the rotary axis to the value 0.
TableRot
The TNC 640 aligns the rotary axis so that the X axis of the
working plane is parallel to the X axis of the machine. At the
same time, the angle is saved in Q122. This makes it possible,
for example, to machine a workpiece by always using the same
axis for paraxial linear blocks in the X/Y plane.
NoPref
No definition—default value. If, when the Plane function is
called, CoordRot is not explicitly defined, the TNC 640 always
conducts the process described under TableRot.
Default: NoPref
Access: LEVEL3
Reaction: RESET

1236 HEIDENHAIN Technical Manual TNC 640


Automatic vector Use the parameter MP_autoCorrectVector to specify whether the vectors
compensation are to be compensated automatically if the working plane was defined using
two vectors (PLANE VECTOR) and the basis vector and the normal vector are
not perpendicular to each other. If this is the case and vector compensation is
active, the control continues program run without an error message.

MP_autoCorrectVector
If the basis and normal vectors are not perpendicular to each
other for PLANE VECTOR, you can define the following possible
reactions for the control:
Available from NCK software version: 597 110-05.
Format: Selection menu
Options: FALSE
The control indicates a programming error by outputting an error
message.
TRUE
The control automatically corrects the basis vector with
consideration of the normal vector, which remains unchanged.
Default: FALSE
Access: LEVEL3
Reaction: RESET

January 2015 6.13 Tilting axes 1237


Reading of 3D-ROT PLC Module 9045 makes the relevant data for the "Tilt working plane" function
data available to the integrated PLC as well. This module provides the following
data:
 Tilt angles (A, B, C)
 Tilted axes (A, B, C)
 The operating mode in which the "Tilt working plane" function is active
When querying the 3D-ROT data via Module 9045 the data are saved in four
consecutive double words beginning with the specified start address [n].

Note

Ensure that the addresses are available on the TNC 640, and that the given
target address is a double word address.

The data are output in the following format:


 D[n+0]: Tilt angle A (unit 0.0001°)
 D[n+4]: Tilt angle B (unit 0.0001°)
 D[n+8]: Tilt angle C (unit 0.0001°)
 W[n+12]: Currently tilted axes (bit-encoded)
Bit 0: Axis A tilted
Bit 1: Axis B tilted
Bit 2: Axis C tilted
 W[n+14]: "Tilt working plane" is active in operating mode
Bit 0: Tilting active in Program Run operating mode
Bit 1: Tilting active in Manual operating mode
Module 9045 Read the data from 3-D ROT
Call:
PS B/W/D/K <Target address double-word number [n]>
CM 9045
Error code:

Marker Value Meaning


NN_GenApiModuleError 0 3-D ROT data read
(M4203) 1 3-D ROT data not read

1238 HEIDENHAIN Technical Manual TNC 640


Conditions and Conditions:
constraints
 The display position in the status window is referenced to the tilted
coordinate system.
 In the combination of coordinate transformation cycles the sequence of
activation must agree with the sequence of deactivation.
 The tool radius compensation in the working plane and the tool length
compensation parallel to the tool axis is active.
 For machining with tilting tables, the coordinate system remains parallel to
the machine coordinate system.
Constraints:
 PLC positioning movements are always parallel to an axis of the machine
coordinate system (Cycle 19 has no influence).
 A datum shift via the PLC also works with the "Tilt working plane" function.
 The axis designations for the tilting axes are limited to A, B and C. Each
designation can be used only once.
 With an active Cycle 19 "Tilt working plane,” it is not possible to position
with M91 or M92.
If the position of the working plane is entered, only the following tilting axes
combinations with tool axis Z are permissible:
 Double swivel head 45°: Axis sequence A fixed; B or C variable; A fixed;
B or C variable
 Rectangular double swivel head: Axis sequence A or B variable; C variable
 Rotary or tilting table: Axis sequence C variable; A or B variable
 Swivel head and rotary table: Axis sequence A or B variable; C variable
 Tilting table 45°: Axis sequence C variable; A fixed; B variable; A fixed
 Rectangular double swivel head: Axis sequence A variable; B variable
 Universal swivel head: Axis sequence A fixed; B –90°; A variable; B +90°; A
fixed; C variable
 Swivel head and rotary table: axis sequence B variable, A variable
 Swivel head and rotary table: Axis sequence C fixed, A fixed, B fixed –90°,
A variable, B fixed +90°, A fixed, C fixed, C variable
With tool axis Y:
 Rotary or tilting table: Axis sequence B variable; A variable
 Double swivel head 45° and rotary table: Axis sequence A fixed; C variable;
A fixed; B variable
 Rotary or tilting table: Axis sequence A or C variable; A or C variable
 Swivel head 45° and rotary table: Axis sequence A +45°, B variable, A –45°,
C variable
With tool axis X:
 Universal swivel head: Axis sequence B fixed; A variable; B fixed; C variable

January 2015 6.13 Tilting axes 1239


6.13.2 Virtual tool axis (VT)

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgRotWorkPlane
enableVTaxis 201208

MP_enableVTaxis on the TNC 640 is used to activate the active tool-axis


direction as "virtual tool axis VT" in manual operation and during handwheel
superimposition in automatic mode. For control of the virtual tool axis via the
HR 5xx/HR 410 handwheels, an axis key can be assigned on the handwheel
using MP_selectAxes, See "MP_selectAxes" on page 2138.
The following must be considered when using the virtual tool axis VT:
 MP_enableVTaxis must be set to TRUE
 DCM (Dynamic Collision Monitoring) must be deactivated.
 An axis key of the handwheel must be assigned to the virtual tool axis
(select VT_Axis) in MP_selectAxes
 If an HR 5xx is used, the axis VT can be selected in the axis menu.
 When an HR 410 handwheel is connected, the axis VT can be selected via
PLC module 9036 (selection parameter 6 (handwheel axis); value 999).
 If selection parameter 9 (handwheel axis) is set, PLC Module 9035 returns
the value 999 if the virtual tool axis VT is active.

MP_enableVTaxis
Virtual tool axis
(compare to iTNC 530: MP7641 bit 4)
Available from NCK software version: 597 110-06.
Format: Selection menu
Options: TRUE
Permit virtual tool axis on handwheel
FALSE
Do not permit virtual tool axis on handwheel
Default: TRUE
Access: LEVEL3
Reaction: RESET

1240 HEIDENHAIN Technical Manual TNC 640


6.14 Parallel axes

Settings in the configuration editor MP number


Axes
PhysicalAxis
[Key name of the axis]
CfgAxisPropKin
parAxComp 300205

The axes U, V and W are secondary axes parallel to the principal axes X, Y and
Z, respectively. Principal axes are permanently assigned to the secondary
axes.

+Z

+W +Y

+V

+X
+U

Principal axis Parallel axis Rotary axis


X U A
Y V B
Z W C

The TNC 640 supports various methods for treating movements of parallel
axes. With the plain-language commands PARAXCOMP and PARAXMODE the
machine operator can specify how the TNC 640 should behave when
positioning parallel axes and which axes are used in machining.

Note

Please see the User's Manual Conversational Format for details.

In parameter MP_parAxComp you define the default setting for the treatment
of parallel axes. The machine operator can overwrite this setting in the NC
program. After startup, however, the given default configuration always
becomes effective.

January 2015 6.14 Parallel axes 1241


Possible settings:
 MP_parAxComp = off:
Compensation and display function is deactivated for parallel axes.
Example: If a secondary (parallel) axis W is moved, the Z axis does not
compensate the movement. The position display does not show the value
of the W axis. HEIDENHAIN does not recommend using this setting for
machines with parallel axes.
 MP_parAxComp = Display:
Display function for parallel axes is active.
Example: Movements of a secondary (parallel) axis W are added in the
position display to the corresponding principal axis (in this case Z) (sum
display). The position display therefore always shows the relative distance
from the tool to the workpiece—regardless of whether the principal or
secondary axis is moved.
 MP_parAxComp = Move
Compensation for parallel axes is active. The TNC 640 compensates the
movement of parallel axes via compensation movements in the
corresponding principal axis
For example, if a parallel-axis movement is performed in the negative W-axis
direction, the principal axis Z is moved simultaneously in the positive
direction by the same value. The relative distance from the tool to the
workpiece therefore remains the same.
Application in gantry-type milling machine: Retract the spindle sleeve to
move the cross beam down simultaneously.

MP_parAxComp
Compensation of parallel linear axes
Available from NCK software version: 597 110-04.
Format: Selection menu
Options: Off
Compensation and display function is deactivated for parallel
axes.
Display
Display function for parallel secondary axes is active.
Move
Compensation for parallel axes is active.
Default: No value, optional parameter (= off)
Access: LEVEL3
Reaction: RESET

1242 HEIDENHAIN Technical Manual TNC 640


6.15 Gantry/synchronized axes

Conventions For synchronized axes:


 Master and slave axes can be either linear or rotary axes.
 An axis cannot be both master and slave at the same time.
 More than one slave axes can be assigned to a master axis.
 The slave axis cannot be moved separately.
 After the TNC 640 starts up, only one static coupling of axes can be
automatically active. During run time, dynamic couplings can be activated
only over the PLC.
 In a closed gantry coupling, the feed rate enable is always set for the slave
axis, regardless of what is prescribed for this axis by the PLC.
 If the master and slave axes are to be moved without a feed-rate enable, the
IN_POSITION bit is set to zero. This requests a feed-rate enable from the
PLC.
 The values for rapid traverse, acceleration, jerk, software limit switches,
feed rate for reference mark traverse, and manual feed rate are also taken
over from the input values of the master axis for the slave axis.
 The minimal values of the software limit switches of master and slave axes
are taken into account.
 It is possible to separately open or close each configured coupling of axes.
 When operating with following error, the kv factors for master and slave
must be the same.
 Linear and nonlinear axis error compensation as well as temperature
compensation must be entered separately for each axis.
 The nonlinear axis-error compensation can be used separately for master
and slave axes.
 For the nonlinear axis-error compensation, master and slave axes may be
dependent on each other.
 The nominal value display of the slave axis shows the nominal value of the
master axis.
 The nominal position of the slave axis is calculated from the nominal position
of the master. The actual position of the master has no influence on the
nominal position of the slave.
 If a coupled axis is stopped because of an error message, all other axes
coupled with this axis are also brought to a stop.

Note

The number of slave axes in master-slave torque control and gantry


combinations is restricted by the controller unit on which the master axis is
configured. The slave axes and the master axis must be configured on the
same drive-control motherboard (DSPs). Thus, up to five slave axes are
possible per CC 61xx.

January 2015 6.15 Gantry/synchronized axes 1243


6.15.1 Gantry axes
In gantry axes, tandem tables, etc., two servo-controlled axes are coupled so
that they can move only simultaneously. The main axis is referred to as the
master, and the tracking axis as the slave.
Because the configuration of a gantry coupling is implemented only via the
slave axis, it is permitted to hang several slaves onto a master. However, a
gantry slave axis cannot at the same time serve as a gantry master axis.
The function is effective during control both with following error and with
velocity feedforward and can be used for digital and analog drive control.

Activating gantry In principle you can couple axes with each other statically without intervention
axes by the PLC in the startup phase or dynamically with Module 9126 during
program run. In both cases, however, it is necessary to configure the axis
coupling beforehand in the machine parameters.

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
masterAxis 402301
mode 402302
type 402303
typeOfOffset 402304
posOffset 402305
offsetFeed 402306
maxPosDiff 402307
ultimatePosDiff 402308
scalingFactor 402309
accFilterTime 402315
compOnlySlave 402317

1244 HEIDENHAIN Technical Manual TNC 640


Static activation of To activate a static axis position coupling, i.e. during startup of the TNC 640
gantry axes and without action by the PLC, proceed as follows:
 Assign a master axis to the slave axis. In MP_masterAxis, enter the key
name of the master axis from the list parameter MP_axisList of the entity
CfgAxes.

Note

The master and slave axes must be on the same drive-control main board,
which means that both axes need to be controlled by the same DSP. In this
way, you can flexibly assign the master and slave axes to the PWM outputs
X51 to X56 of a CC 6106. On controller units with more than one drive
control board (CC 6108, CC 6110), the master axis and the slave axis both
need to be assigned to either the A connections or the B connections.
Mixed connection is not permitted.

 In MP_mode, define the type of coupling. Select a position for the position
coupling.
 To keep a static coupling of the axes, enter in MP_type the value Static.
Both static and dynamic axis couplings can be closed and reopened at any
time by the PLC with Module 9126.
 Use MP_typeOfOffset to configure the treatment of the position offset
between the master and slave axes. The input values None and Actual cause
the position offset at the time of coupling closing to remain as a static offset.
In this case there is no compensating movement on stationary axes.
Select Parameter if a compensating movement by the value from
MP_posOffset is to take place immediately when the coupling is closed.

The standard procedure for this is:


 Set MP_typeOfOffset = Parameter, MP_posOffset = 0 and
MP_scalingFactor = 1. The slave position is then calculated:

SlavePos = MasterPos

 After crossing over the reference marks, the master and slave axes are
positioned to the same value. The basic setting can be corrected with
MP_refPosition. The fine adjustment is then made via the nominal currents
of the master and slave axes and is also entered in MP_refPosition.
 With closed coupling, except when compensating an offset, the difference
between the actual positions of master and slave axes is monitored. In
MP_maxPosDiff, enter the value of the permissible position difference with
closed coupling between the master and slave axes. If this difference
exceeds the value entered here, the TNC 640 issues a clearable emergency
stop error message (monitoring only when MP_scalingFactor= ±1 active).
The position of the master is converted with the following factors for the
comparison:

ActlPosMaster = actual position of the master * scalingFactor - posOffset

January 2015 6.15 Gantry/synchronized axes 1245


The following additional settings can be made for special cases:
 If in MP_typeOfOffset you have selected the input value Parameter, enter
in MP_posOffset a position offset that is moved to and held. After the
reference run, this value is used as absolute position offset.
 In MP_offsetFeed specify the speed at which the configured offset is to be
attained.
 Input a maximum position difference value in MP_ultimatePosDiff, up to
which the closing of a coupling of master and slave axis should still be
possible. If it is attempted to close a coupling where the momentary
position difference between the master and slave axis is larger than this
parameter value, an emergency stop error message is displayed before the
coupling is closed. This serves to monitor a mechanical coupling.
Also if the coupling is closed, a non-clearable emergency stop error
message appears if the position difference between master and slave
exceeds the value from MP_ultimatePosDiff.
The monitoring can be canceled by entering zero.
 MP_compOnlySlave enables you to configure whether the output of the
torque balancing controller (= speed correction value) is uniformly
distributed on the master and slave or whether it is only applied to the slave.
 Use MP_scalingFactor to influence the target position of the slave axis
depending on the master position. Enter any positive or negative value in
MP_scalingFactor in order to specify the position of the slave axis
according to the following equation:

SlavePos = MasterPos * scalingFactor - posOffset

The PLC can overwrite the factor when commanded. With a closed coupling
this parameter can no longer be changed.

Note

The above equation always applies with respect to the reference system of
both axes. Programmable shifts (e.g. preset) are not taken into account.
However, the coupling is also influenced by shifting the reference point.

Note

On modulo axes only ±1 is can be entered in MP_scalingFactor. Please


note that modulo axes can be coupled exclusively with other modulo axes.

1246 HEIDENHAIN Technical Manual TNC 640


 If a coupling is closed while the master is moving, the slave axis is first
accelerated to the velocity of the master at the slave axis’s maximum
possible acceleration from MP_maxAcceleration. This is conducted by
means of a linear, filtered ramp. In MP_accFilterTime enter the time
constant of the triangle filter used that helps to smooth the velocity values.
Useful input values range from 30 ms to 100 ms.

Note

Several parameter sets can be used to define various couplings for a slave.
When a coupling is closed the data of the momentarily active parameter set
is copied and maintained for the duration of the coupling. When a
parameter set is switched, it does not go into effect until the coupling is
opened and closed again.

Dynamic activation With Module 9126 you can couple axes dynamically, i.e. during program run.
by the PLC In this case, however, it is also necessary to configure the axis coupling
beforehand in the machine parameters.
 Configure the axis coupling in the machine parameters with the exception
of MP_type as described in the previous section on the static activation of
gantry axes.
 In MP_type, enter the value Dynamic to make it possible to dynamically
couple the axes.
 Close the coupling of a slave axis with a master axis by calling Module 9126.
 Module 9126 enables you to also overwrite the values for the coupling
factor and position offset configured in MP_scalingFactor and
MP_posOffset.
When closing a coupling and assigning the feed rate release to the slave axis,
the same process is always implemented:
 The slave axis accelerates with the acceleration specified in
MP_maxAcceleration until the velocity of the master axis is reached.
During this, the slave axis evaluates its own software limit switches. If the
position of the master axis cannot be reached, the TNC 640 issues an
emergency stop error message.
 If the velocity of the master axis is reached, the position offset is reached
by the programmed or configured nominal offset at half the maximum
acceleration. Here an acceleration or deceleration of the master axis is
allowed.
 If the programmed offset is reached, the slave nominal position is calculated
cyclically (see MP_scalingFactor).
To prevent the immediate correction of a possible position offset, the PLC of
the slave axis can revoke the feed rate release.

Attention

Also when a coupling is closed, the feed rate enabling is effective for the
slave. If the enabling is revoked for the slave during movement of the
master and slave, the slave brakes at the configured acceleration
(MP_maxAcceleration) and stops. If the release is assigned again, the slave
accelerates again to the speed of the master and then corrects the position
offset.

January 2015 6.15 Gantry/synchronized axes 1247


If a coupling is closed with SYNC_CALC (interpreter stop) within a strobe, the
geometry and the look-ahead are automatically informed about this coupling.
You modify the SW limit switch monitoring and permissible dynamics under
consideration of all axes participating in the gantry coupling. This ensures that
the traverse range cannot be exceed by any coupled axis.
However, if a coupling is closed without SYNC_CALC, ensure that the slave
axis has at least the same acceleration capability as the master axis. Software
limit switch monitoring is then performed for the movements commanded by
the PLC in the interpolator and under consideration of the master and slave.
For movements commanded by the NC program, only the masters’s software
limit switch is monitored.
If you open an existing coupling without SYNC_CALC while the master axis is
in motion, the slave axis will be braked to a stop at the maximum possible axis
deceleration from MP_maxAcceleration.

Opening a coupling With Module 9126 you can also reopen axis couplings already existing. If an
of gantry axes axis coupling is commanded open by the PLC with Module 9126, the following
actions are taken:
 The coupling is opened
 The slave axis is braked to a stop at the velocity configured in
MP_maxAcceleration
 The status bits of the slave axis are reset
 If the last slave axis of a master axis is decoupled, the status bits of the
master axis are also reset

Master-slave The TNC 640 monitors the synchronism of the coupled axes. If the position
position deviation difference of the master and slave axes exceeds the maximum permissible
value, the TNC 640 issues an emergency stop error message.
 In MP_maxPosDifference of the slave axis, enter the maximum
permissible difference in positions between the master and slave.
If an offset is caused in the axes through an emergency stop, they will be
synchronized after the emergency stop.
The current position difference between master and slave axis can be
displayed in the oscilloscope by means of new channels for all axes.

Homing of gantry For gantry axes, the master axis must always be homed first when the TNC
axes 640 starts up. Then, all coupled slave axes are automatically homed. You
configure the procedure for homing separately for all axes in MP_refType.
This makes it possible with gantry axes as well to use differing encoder types
for master and slave axes.
Not until all coupled axes have been homed and come to a stop can the
position control loop be closed.

1248 HEIDENHAIN Technical Manual TNC 640


MP_masterAxis
Assign a master axis to the slave axis.
(compare to iTNC 530: MP850.x)
Available from NCK software version: 597110-04.
Format: Selection menu
Options: Key name of the master axis from CfgAxes/axisList
Default: 0
Access: LEVEL3
Reaction: RUN

MP_mode
Mode of the coupling
Available from NCK software version: 597110-04.
Format: Selection menu
Options: None
Axis has no coupling
Position
Axis coupled via gantry (position coupling)
Torque
Torque coupling
Default: None
Access: LEVEL3
Reaction: RUN

MP_type
Type of coupling
Available from NCK software version: 597110-04.
Format: Selection menu
Options: Static
Static coupling – is automatically closed in the start-up phase
without PLC involvement.
Dynamic
Dynamic coupling – is closed only by PLC command.
Default: Static
Access: LEVEL3
Reaction: RUN

January 2015 6.15 Gantry/synchronized axes 1249


MP_typeOfOffset
The parameter specifies how the position offset between
master and slave axis is treated.
(compare to iTNC 530: MP860.x, bit 0)
Available from NCK software version: 597110-04.
Format: Selection menu
Options: None / Actual
The offset when a coupling is closed is retained as static offset.
There is no compensating movement on stationary axes.
Parameter
After the reference run, the value of the MP_posOffset
parameter is taken as the absolute position offset. When the
coupling closes, there is an immediate compensating
movement.
Default: None
Access: LEVEL3
Reaction: RUN

MP_posOffset
Value of the position offset with closed coupling
(compare to iTNC 530: MP855.x)
Available from NCK software version: 597110-04.
Format: Number
Input: Position offset in millimeters [mm] or degrees [°] that is
compensated and maintained if MP_typeOfOffset = Parameter
is set
Max. 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

MP_offsetFeed
The velocity with which an offset between the master axis and
the slave axis is compensated for
(compare to iTNC 530: MP1330.x)
Available from NCK software version: 597110-04.
Format: Number
Input: Velocity in [mm/min] or [°/min] with up to 9 decimal places
Default: 999.996 [mm/min] or [°/min]
Access: LEVEL3
Reaction: RUN

1250 HEIDENHAIN Technical Manual TNC 640


MP_maxPosDiff
Synchronization monitoring – deletable emergency stop
message
(compare to iTNC 530: MP855.x)
Available from NCK software version: 597110-04.
Format: Number
Input: Permitted offset in [mm] or [°] with up to 9 decimal places
Default: 0 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_ultimatePosDiff
Synchronization monitoring – non-deletable emergency stop
message
Available from NCK software version: 597110-04.
Format: Number
Input: Maximum permitted offset in [mm] or [°] with up to 9 decimal
places
Default: 0 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_compOnlySlave
Distribution of the speed compensation value to master axis
and slave axis
(compare to iTNC 530: MP2912.x)
Available from NCK software version: 597110-06.
Format: Number
Input: 0: Distribution of the speed compensation value to master axis
and slave axis
1: Send speed compensation value only to slave axis
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_scalingFactor
Scaling factor for calculating the slave position
Available from NCK software version: 597110-04.
Format: Number
Input: Any values, even negative values (on modulo axes only ±1 is
can be entered)
Default: 1
Access: LEVEL3
Reaction: RUN

January 2015 6.15 Gantry/synchronized axes 1251


MP_accFilterTime
Time constant for filtering the acceleration curve
Available from NCK software version: 597110-04.
Format: Number
Input: 0 to 200 [ms]
Default: 30 [ms]
Access: LEVEL3
Reaction: RUN

Module 9126 Configure axis coupling


This module enables you to close or open the coupling of a PLC axis as a slave
on another axis.
A dynamic coupling of a master axis must be configured in the parameters. If
the coupling is not possible, the TNC 640 will issue an error message.
When the coupling is activated the coupling factor can be specified. The
coupling factor is calculated as a fraction of the transferred factors and must
be unequal to zero.
The coupling factor or position offset cannot be modified with an already
closed coupling.
Call:
PS B/W/D/K <Number of the axis>
PS B/W/D/K <Numerator of the coupling factor>
PS B/W/D/K <Denominator of the coupling factor>
PS B/W/D/K <Position offset in 0.0001 mm or 0.0001°>
PS B/W/D/K <Mode>
0: Open the coupling
1: Close the coupling
2: Close the position coupling,
use the transferred coupling factor
3: Close the position coupling,
use transferred position offset
4: Close the position coupling,
use transferred coupling factor and position offset
5: Close the position coupling,
maintain the position offset valid at the time of coupling
6: Close the position coupling,
use the transferred coupling factor and
maintain the position offset valid at the time of coupling
CM 9126

1252 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 Coupling is being opened or closed
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 The given number of the axis is invalid or the
ErrorCode axis has been deactivated
2 The given mode or coupling factor is invalid
6 The coupling is already opened or closed
9 Axis is being positioned or is assigned to an
NC channel

Module 9127 Status of the axis coupling


With this module you can interrogate the status of the coupling of an axis with
another axis.
Call:
PS B/W/D/K <Number of the axis>
PS B/W/D/K <Mode>
0: Interrogate the condition of master / slave
1: Interrogate the type of coupling for the master
2: Interrogate the type of coupling for the slave
3: Interrogate the coupling factor
CM 9127
PL (B/W)/D <Status>
<Mode 0>: (Bit-encoded. An axis can be both master and
slave at the same time!)
Bit 0 =1: Axis is master for coupling
Bit 1= 1: Axis is slave for coupling
Bit 2 = 1: Coupling is closed (in addition to bit 1)
<Mode 1>: (Bit-encoded. An axis can be master to multiple
slaves!)
Bit 0 =1: Coupling is active through torque control
Bit 1 = 1: Coupling is active through position control
Bit 2 = 1: Coupling is active through spindle synchronism
<Mode 2>: (bit-coded)
Bit 0 =1: Coupling is active through torque control
Bit 1 = 1: Coupling is active through position control
Bit 2 = 1: Coupling is active through spindle synchronism
<Mode 3>
Rounded coupling factor in 0.0001

January 2015 6.15 Gantry/synchronized axes 1253


Error code:

Marker Value Meaning


NN_GenApiModule 0 Status provided
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 The entered number of the axis is invalid
ErrorCode 2 The entered mode is invalid

1254 HEIDENHAIN Technical Manual TNC 640


6.15.2 Master-slave torque control
In master-slave torque control, two motors (master and slave) are
mechanically coupled. Because of the coupling, only one position encoder is
required. The motor to which the position encoder is assigned is the master.
Axes can be controlled in pairs in the torque-master-slave-control, whereby
you must keep in mind that the master and slave axis must be on the same
speed controller circuit board.
In principle there are two applications:
 Minimization of mechanical play through mutual tensioning
 Distribution of torque with a rigid coupling

Gear wheel

Rack

Motor

Minimization of mechanical play through mutual tensioning

Coupling

Motor Motor

Shaft

Distribution of torque with a rigid coupling

January 2015 6.15 Gantry/synchronized axes 1255


Method of function Position control is deactivated in the slave axis. The nominal velocity of the
master axis is at the same time the nominal velocity of the slave axis. The
speed controllers of both axes remain independent. The manipulated variables
coming from the speed controllers, i.e. the nominal torque current values, are
weighted with the torque constants of the motors and compared with each
other. In addition, a tensioning torque (MP_torqueBias) can be introduced at
this comparison point.The parameter MP_compOnlySlave can be used to
distribute the output of the torque balancing controller (= speed correction
value) equally to the master and slave (MP_compOnlySlave = 0) or only to the
slave (MP_compOnlySlave = 1).
The result at the comparison point is fed to a torque balancing controller that
amplifies it proportionally (MP_propGain). The manipulated variable of the
balancing controller is a speed compensation value that is added to the current
speed value.

Speed
encoder

CompOnlySlave

Torque Position encoder


Torque
controller bias
P-factor MP_torqueBias
MP_propGain

Torque
distribution
MP_torqueDistrFactor

Speed
encoder

1256 HEIDENHAIN Technical Manual TNC 640


Conventions The following applies for a master-slave combination:
 For a master-slave combination, no more than one common position
encoder is required.
 Linear and nonlinear axis error compensation as well as temperature
compensation is not possible separately for both axes.
 Nonlinear axis-error compensation cannot be entered separately for master
and slave axes. Here the values of the master axis are always used.
 When operating with following error, the kv factor for the master axis must
be used.

Gantry axes in It is possible to run gantry axes in master-slave torque control. The gantry
master-slave master and gantry slave axes are at the same time torque master axes and
torque control have one torque slave axis each.
A gantry axis can also serve as a torque master axis at the same time, but a
torque slave axis cannot at the same time be a gantry master axis.

Gantry master axis

Axis 1 Axis 3

Torque master axis Torque slave axis

Torque master axis Torque slave axis

Axis 2 Axis 4

Gantry slave axis

January 2015 6.15 Gantry/synchronized axes 1257


Activation of For torque coupling, static or dynamic coupling is possible. You can open and
master-slave close this coupling by switching parameter sets. PLC Module 9126 is not
torque control supported. If you have configured a torque-master-slave coupling, it will be
automatically activated after the control startup.

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
masterAxis 402301
mode 402302
type 402303
torqueBias 402310
propGain 402311
inverseVelocity 402314

 Assign the appropriate master axis to the slave axis. In MP_masterAxis,


enter the key name of the master axis from the list parameter MP_axisList
of the entity CfgAxes. It must be noted that the master and slave axis must
be on the same speed controller circuit board.
 In MP_mode, define the type of coupling. Select the Torque entry for the
torque coupling.
 At present, only a static coupling is possible for the torque coupling.
Therefore, in MP_type, enter the value Static.
 Therefore, in MP_posEncoderInput, enter the value None for the slave.
Axes for which master-slave torque control is active cannot be switched by
the PLC to single-axis operation during operation.
To perform dynamic coupling at control runtime, you need to switch between
parameter sets in order to switch between MP_mode = NONE and MP_mode
= Torque. In MP_type, enter the value Static. During the switchover, the
drive motors must be at standstill and switched off.

1258 HEIDENHAIN Technical Manual TNC 640


Setting the master-  For the master and slave axes you must select in MP_inverseVelocity the
slave torque control same or the opposite direction of rotation, depending on the application
for minimizing (MP_signCorrActualVal has no effect on the slave).
mechanical play  Adjust the current controller for the master and slave axes, See
"Commissioning" on page 1688.
 Not on the CC 61xx:Enter the following preliminary values into the machine
parameters for the slave axis:
MP_torqueBias = approx. 20% to 25% of the rated torque of the motor
MP_propGain = 0.03
 Enter MP_vCtrlIntGain (I factor of speed controller) = 50 or, if you have one,
an empirical value for your motor.
 Adjust the P and I factors of the speed controller for the master and slave
axes at the same time, See "Commissioning" on page 1688. It is not
permissible to commission the master and slave axes separately, since the
motors must be tensioned during commissioning.
 If you do not reach the desired rise time (approx. 10 ms), you can increase
the P factor with the aid of a filter. Here the band-rejection filter is preferable
to the low-pass filter.
 To find the center frequency for the band-rejection filter, slowly increase the
P factor to the oscillation limit and find the frequency with the integrated
oscilloscope.

Note

For low-frequency oscillations (< approx. 200 Hz) you should not use a filter,
because it may have a negative influence on the dynamics of the control.
For the mid-range frequency (approx. 200 Hz to approx. 400 Hz) ensure that
you do not excite any low-frequency oscillation.
The higher the frequency of the oscillation (> approx. 400 Hz), the less
negative will be the influence of high damping on the dynamics.

Note

For identical motors, the factors of the speed controller should be identical
to ensure identical dynamic behavior.

January 2015 6.15 Gantry/synchronized axes 1259


Test the tensioning torque:
 With the integrated oscilloscope, record the nominal current (I nominal) of
the master and the slave axes at standstill.
 Send a step to the speed controller and, with the integral oscilloscope,
record the nominal current of the master and slave axes.
 If there is a discontinuity in the course of the nominal current, increase the
tensioning torque for the slave axis in MP_torqueBias.

ΔInoml = Inoml master – Inoml ΔInoml = Inoml master – Inoml

Discontinuity

Inoml master
Inoml slave

Inoml master Inoml slave

Note

The lower the ratio of the total mass moment of inertia (transmission,
machine table, etc.) to the motor mass moment of inertia, the smaller the
required tensioning torque is (MP_torqueBias).

Test the P factor of the torque controller:


 With the integrated oscilloscope, record the actual speed value V (N ACTL)
 Increase the P factor in MP_propGain for the slave axis up to the oscillation
limit.
 Enter in MP_propGain for the slave axis 50 % of the resulting value.

1260 HEIDENHAIN Technical Manual TNC 640


Setting the master-  For the master and slave axes you must select in MP_inverseVelocity the
slave torque control same or the opposite direction of rotation, depending on the application
for torque (MP_signCorrActualVal has no effect on the slave).
distribution in a  Adjust the current controller for the master and slave axes, See
rigid design "Commissioning" on page 1688.
 Enter the following temporary values in the machine parameters for the
slave axis:
MP_torqueBias = 0
MP_propGain = 0.03
 Enter MP_vCtrlIntGain (I factor of speed controller) = 50 or, if you have one,
an empirical value for your motor.
 Deactivate the slave axis in MP_axisMode
 For the master axis, adjust the P and I factor of the speed controller, See
"Commissioning" on page 1688.
 If you do not reach the desired rise time (approx. 10 ms), you can increase
the P factor with the aid of a filter. Here, the band-rejection filter is preferable
to the low-pass filter.
 To find the center frequency for the band-rejection filter, slowly increase the
P factor to the oscillation limit and find the frequency with the integrated
oscilloscope

Note

For low-frequency oscillations (< approx. 200 Hz) you should not use a filter,
because it may have a negative influence on the dynamics of the control.
For the mid-range frequency (approx. 200 Hz to approx. 400 Hz) ensure that
you do not excite any low-frequency oscillation. The higher the frequency
of the oscillation (> approx. 400 Hz), the less negative will be the influence
of high damping on the dynamics.

 Deactivate the master axis in MP_axisMode


 In MP_masterAxis enter the value 0 and for MP_mode, select the entry
None
 Set the speed controller and the filter parameters for the slave axis in the
same manner as for the master axis, See "Commissioning" on page 1688.

Note

For identical motors, the speed controller factors should be identical to


ensure identical dynamic behavior.

January 2015 6.15 Gantry/synchronized axes 1261


Test the P factor of the torque controller:
 In MP_axisMode reactivate the master and slave axes
 With the integrated oscilloscope, record the actual speed value V (N ACTL)
 Increase the P factor in MP_propGain for the slave axis up to the oscillation
limit.
 For the slave axes, enter 50 % of the resulting value in MP_propGain

MP_torqueBias
Tensioning torque between master and slave for master-slave
torque control (entry for the slave axis)
(compare to iTNC 530: MP2900.x)
Available from NCK software version: 597110-04.
Format: Number
Input: –1000 to 1000 [Nm] with max. 9 decimal places
Default: 0 [Nm]
Access: LEVEL3
Reaction: RUN

MP_propGain
P factor of the torque controller for master-slave torque control
(entry for the slave axis)
(compare to iTNC 530: MP2910.x)
Available from NCK software version: 597110-04.
Format: Number
Input: 0.001 bis 1666.6665 [1/(Nm · min)] with max. 9 decimal places
Default: 0.001 [1/(Nm · min)]
Access: LEVEL3
Reaction: RUN

MP_inverseVelocity
Reversal of the algebraic sign of the nominal speed value
Available from NCK software version: 597110-04.
Format: Selection menu
Options: FALSE
Algebraic sign reversal inactive
TRUE
Algebraic sign reversal active
Default: FALSE
Access: LEVEL3
Reaction: RUN

1262 HEIDENHAIN Technical Manual TNC 640


6.15.3 Brake test for synchronized axes
As a prerequisite for the brake test of a synchronized axis, all servo drives of
the axis must be switched on and the brakes must be open. The test can only
be performed if all relevant servo drives are switched on.

Note

Before performing the brake test, ensure via the PLC program that all servo
drives of a synchronized axis are switched on and the holding brakes are
open.

The brake test is activated (> 0) or deactivated (= 0 or parameter deleted)


separately for each servo drive via MP_testBrakeCurrent.
An additional test torque is applied to the servo drive during the brake test. You
define this test torque via a multiplier for the motor stall current with
MP_testBrakeCurrent, See "Automatic test of the motor brake" on page
1541. This test torque exerts additional load on the holding brake of the servo
drive. The axis is prevented from moving during the brake test and the brake
test is considered to have been passed only if the brake withstands this load.
HEIDENHAIN recommends:

Note

 Note the constraints for the brake test of synchronized axes and adapt
your PLC program to the conditions.
 Test the behavior of the PLC program and the brake test on the machine.

The TNC 640 runs the brake test for synchronized axes as follows:
Behavior during the brake test of synchronized axes:
The function reads the machine configuration to detect which servo drives are
operated together as a synchronized axis and which must therefore be
handled separately in the brake test. CfgAxisCoupling is used to configure
servo drives to a synchronized axis. The brakes and drives of the synchronized
axis are tested simultaneously. It is ensured, however, that the same algebraic
sign is used for the test torque of all drives.
The sign is determined for all servo drives of the synchronized axis based on
the entry for the holding torque of the master in MP_compCurrentOffset
(401405). If no value is entered in MP_compCurrentOffset, the current
holding torque of the master is used.

January 2015 6.15 Gantry/synchronized axes 1263


There are two possibilities for starting the brake test. In both cases the
function described above is used to test the brakes of synchronized axes
simultaneously:
 Automatic brake test:
The brake test takes place automatically during the power-up test of the
control, as soon as all servo drives of the respective synchronized axis have
been switched on.
 Brake test via PLC module:
The brake test can be activated axis-specifically by the PLC program with
PLC module 9143. The slave drives of a synchronized axis are tested
simultaneously with the master. As a prerequisite for the brake test of a
synchronized axis, all servo drives of the axis must be switched on and the
brakes must be open.
Alternative behavior:
Testing the brakes of a synchronized axis successively

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
autoBrakeTest 402316

Additionally, you can activate a changed brake test sequence with


MP_autoBrakeTest. The setting MP_autoBrakeTest = with Master causes
the brake test to be performed together with the master axis. If
MP_autoBrakeTest = off, the servo drives of a synchronized axis are tested
successively rather than simultaneously. As a result, the brake test is
performed individually for all servo drives of a synchronized axis.
All brakes and servo drives of the synchronized axis are tested successively,
one after the other, at the specified test current. For the brakes and servo
drives that are not part of the momentary test, but are configured as
connected to the servo drive to be tested, the current is set during the test so
that the servo drive is not moved. The brakes of these servo drives must be
open for this purpose. This way, each time only the brake of an individual servo
drive is tested, without the other servo drives or brakes of the synchronized
axis having an effect on the test.
To be able to use this brake test sequence, the individual brakes of the
synchronized axis must not be combined. It must be possible to control the
brakes individually.

1264 HEIDENHAIN Technical Manual TNC 640


There are also two possibilities for starting the brake test. In both cases the
function described above is used to test the brakes of synchronized axes
sequentially:
 Automatic brake test:
The brake test takes place automatically during the power-up test of the
control, as soon as all servo drives of the respective synchronized axis have
been switched on. Depending on the setting in MP_autoBrakeTest, the
brakes of the slave drives are tested either sequentially or together with the
master.
 Brake test via PLC module:
The brake test can be activated axis-specifically by the PLC program with
PLC module 9143. Depending on the setting in MP_autoBrakeTest, the
brakes of the slave drives are tested either sequentially or together with the
master. As a prerequisite for the brake test of a synchronized axis, all servo
drives of the axis must be switched on and the brakes must be open.

MP_autoBrakeTest
Motor brake test for synchronized axes.
(compare to iTNC 530: MP860, bit 2)
Available from NCK software version: 597110-05.
Format: Selection menu
Options: off
The brake is tested separately for this axis.
with Master
The brake for this axis is tested at the same time as the master
axis.
Default: off
Access: LEVEL3
Reaction: RUN

Constraints for the brake test:


As a prerequisite for the brake test of a synchronized axis, all servo drives of
the axis must be switched on and the brakes must be open. The test can only
be performed if all relevant servo drives are switched on.

Note

Before performing the brake test, ensure via the PLC program that all servo
drives of a synchronized axis are switched on and the holding brakes are
open.

For slave drives for which the brake test has been disabled via
MP_testBrakeCurrent, the current is adjusted so that the servo drive is not
moved while the other servo drives of the synchronized axis are being tested.

January 2015 6.15 Gantry/synchronized axes 1265


Since the algebraic sign of the test torque cannot be determined until the
drives are feedback-controlled and the brakes are open, an appropriate waiting
time must be specified for the start of the brake test of synchronized axes. The
time set in MP_vCtrlSwitchOnDelay (400929) is used for this. The value for
MP_vCtrlSwitchOnDelay must equal the time that passes until the brake is
really open after the controller has been switched on. The same time must be
entered in MP_vCtrlSwitchOnDelay for all servo drives of a synchronized
axis. For the CC61xx controller unit the time in MP_vCtrlSwitchOnDelay is
taken into account each time the controller is switched on.
In general, the following applies to the brake control: If the brakes are
controlled by the PLC, and not by the inverters, the PLC module 9159 (drive
controllers are switched off) transmits the status message to the PLC program
regarding the closing of the brakes during the brake test.

Note

HEIDENHAIN recommends the sequential brake test of synchronized axes


for all machines on which a brake test for synchronized axes made
(MP_autoBrakeTest = off).
 Test the behavior of the PLC program and the brake test on the machine.

1266 HEIDENHAIN Technical Manual TNC 640


6.16 Reference marks

6.16.1 Definition
The position value (the coordinates) of an axis position is defined with respect
to a freely chosen datum. When the axes are moved, the ACTUAL position is
calculated incrementally. An interruption in power causes the reference
between the axis position and the position value to be lost.
HEIDENHAIN linear encoders are designed with one or more reference marks.
The reference marks identify an axis position at a known distance from the
machine datum. The position of the freely selectable datum is defined with
respect to the machine datum.
The datum and the actual position can be reproduced as soon as the reference
marks are traversed.
HEIDENHAIN recommends position encoders with distance-coded reference
marks. With distance-coded reference marks, the position value can be
reestablished after traverse of a short distance over any two reference marks.

+Z REF value REF value


–44.985 0
Workpiece
datum 10 20 30 40
0 +X
Workpiece

Machine table
Position encoder

Reference mark
Machine datum

January 2015 6.16 Reference marks 1267


6.16.2 Traverse the reference marks
The reference marks must be traversed after any interruption in power.
Specify which axes are homed, and in which sequence, in MP_refAllAxes or
MP_refAxis.
 Press the machine START button: The reference marks are automatically
traversed (MP_refAllAxes=True).
or:
 Press the machine axis-direction buttons: The user determines the
sequence of the axes (MP_refAllAxes=False).
After the reference marks have been traversed:
 The software limit switches are activated.
 The most recently set datum or workpiece datum and the machine datum
are reproduced.

Distance between For position encoders with distance-coded reference marks, the machine
the scale reference datum is defined with respect to the scale reference point, which is at the first
point and the reference mark after the beginning of the measuring length. On angle
machine datum encoders, the scale reference point is marked:
 In MP_refPosition, enter the distance between the scale reference point
and the machine datum.
For position encoders without distance-coded reference marks but with more
than one reference mark, every reference mark to be traversed must be
evaluated.
 For each reference mark to be traversed, create another parameter set, and
enter in MP_refPosition the distance between the scale reference point
and the reference mark.
 Activate the parameter set that corresponds to the traversed reference
mark.

Assigning a In some cases it may be necessary to assign a new reference value to an axis,
reference value e.g. if an axis is mechanically fixed and the encoder is moved. A typical
application is, for example, with (Hirth) clamped axes
Since due to the mechanical fixing the position of the axis cannot be changed,
you can assign it a new reference value.
 Enter the new reference value in Module 9147.

1268 HEIDENHAIN Technical Manual TNC 640


Module 9147 Assign a reference value to an axis
Module 9147 is used to enter a new reference value for an axis. Several axes
can also be given to a new reference value in one cycle.
If an axis is assigned a new reference value, the corresponding bit is set
NN_AxReferenceAvailable (W1032).

Note

When calling the module for an NC axis during a strobe, the synchronization
with the look-ahead calculation (strobe with MP_sync = SYNC_CALC) must
have been configured for this strobe.

Constraints:
 The module functions only in the cyclic PLC program.
 The module can only be run when the control is not active
(NN_ChnControlInOperation = 0) or if an M/S/T/G/ strobe is pending.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/D/K <Axis number>
Index from CfgAxes/axisList
PS B/W/D/K <New reference value in 0.1 µm>
CM 9147
Error code:

Marker Value Meaning


NN_GenApiModuleError 0 No error
(M4203) 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModuleError 2 Invalid axis number given
Code (W1022) 21 Strobe missing or control active
(NN_ChnControlInOperation = 1)
24 Module was called in a spawn or submit
job

January 2015 6.16 Reference marks 1269


Encoders with Position encoders and speed encoders with EnDat interface can be connected
EnDat interface to the TNC 640. With these encoders there is no need to traverse the
reference marks. The position value is only read when the TNC 640 is
switched on. It cannot be read again.
When connecting a position encoder with EnDat interface, or a speed encoder
with EnDat interface as a position encoder:
 Enter in MP_refType = Mode5 for the respective axis.

Note

If use of multiturn encoders with EnDat interfaces results in overflows, the


corresponding information is stored temporarily. If the control is
exchanged, MP_refPosition must be re-adjusted.

1270 HEIDENHAIN Technical Manual TNC 640


Renewed Module 9220 Cross reference marks
traversing of the The module starts the reference mark traverse in an axis or servo-controlled
reference marks spindle. If the reference mark has already been evaluated, it can be evaluated
again by this module. The module can be called in all operating modes.
Constraints:
 Software limit switches are not effective.
 The sequence of functions is determined by MP_refType.
 The velocity and the direction for traversing the reference marks are either
taken from MP_refFeedHigh and MP_refDirection (CfgReferencing) or
they are defined in the module.
 An axis cannot be started for referencing until all other axes are in position.
 If an axis is started for reference point traverse although the reference mark
has already been traversed, NN_AxReferenceAvailable is reset and the
reference mark is evaluated again. The same constraints apply as when
traversing the reference mark for the first time.
 If the spindle is started for reference point traverse, the marker
NN_SpiReferenceAvailable is set.
 The spindle must be started from a standstill to traverse the reference mark.

Note

The direction of traverse should be defined in the module only in


exceptional cases. Since the reference end positions are not considered in
this case, the limits of the traverse range may be violated.

Call:
PS B/W/D/K <Axis/spindle>
Index from CfgAxes/axisList
PS B/W/D/K <Feed rate/shaft speed>
0: Feed rate/shaft speed from CfgReferencing/refFeedHigh
>0: Feed rate in mm/min or shaft speed in 1/1000 min–1
PS B/W/D/K <Direction of traverse>
–1: Negative direction
0: Direction from CfgReferencing/refDirection
1: Positive direction
CM 9220
PL B/W/D <Error code>
0: Reference mark traverse is commanded
1: Non-existent axis or open-loop spindle
2: Inadmissible values for the feed rate / direction
3: Incorrect operating mode
4: Reference traverse already started
5: Axis is already being positioned or the spindle is in motion
6: Other axis is already being positioned
8: Programmed axis not in closed loop

January 2015 6.16 Reference marks 1271


6.16.3 Defining the process of traversing the reference marks

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
refType 400401
onTheFly 400414
refPosition 400403
endatDiff 400405
refFeedLow 400406
refFeedHigh 400407
refDirection 400408
posEndcoderRefDist 400416
moveAfterRef 400409
moveAfterRefType 400410
moveAfterRefPos 400411
moveAfterRefFeed 400412
refAuxFunctions 400415

The parameter object CfgReferencing is not required for:


 Virtual axes (MP_axisMode = Virtual)
You define the process of traversing the reference marks in the following
machine parameters:
 In MP_refType you select the functional sequence (type of reference
marks) for each axis.
 The setting in MP_onTheFly defines whether the reference run can only be
started with NC Start or also with the axis direction keys or, for the spindle,
with M3, M4.
 In MP_refAxis, define the sequence of axes for traversing the reference
marks.
 In MP_refDirection and MP_refFeedHigh (for rotary encoders also in
MP_refFeedLow) you define the direction and velocity for traversing the
reference marks.
Further characteristics can be configured in the other machine parameters of
the CfgReferencing parameter object.

1272 HEIDENHAIN Technical Manual TNC 640


MP_refType
Functional sequence for traversing the reference mark
(compare to iTNC 530: MP1350)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: None
No evaluation of the reference mark.
If the reference run with the spindle is performed via a trip dog,
this value must be set.
Mode 1
Encoder with one reference mark (rotational or linear).
Sequence: Adopt reference point at any time;
if trip dog is traversed: reverse direction of traverse
Mode 2
Encoder with more than one reference mark (not distance-
coded, rotational or linear)
Sequence: Move quickly onto the dog, move away slowly, then
adopt the reference point
Mode 3
Distance-coded encoder (rotational or linear)
Sequence: After crossing over 2 reference marks, adopt the
reference point; if trip dog is traversed: reverse direction of
traverse
Mode 5
Encoder with EnDat interface; reference run is not required
Mode 10
Encoder with one or more reference marks (not distance-coded,
rotational or linear)
Sequence: Move quickly onto the dog, move away quickly,
move slowly onto dog, adopt the reference point
Mode 11
Reserved
Default: None
Access: LEVEL3
Reaction: REF

MP_onTheFly
Reference mark evaluation "on the fly"
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
Evaluate the reference mark with any movement of the axis/
spindle (e.g. movement via axis direction keys in Manual
Operation mode).
FALSE
Evaluate the reference mark only in "Pass over reference points"
mode.
Default: TRUE
Access: LEVEL3
Reaction: REF

January 2015 6.16 Reference marks 1273


Direction and In MP_refDirection you specify the direction of traverse. If the axis traverses
velocity the reference-end-position trip dog, and PP_AxReferenceEndPosition is set,
the direction of traverse is reversed.
In MP_refFeedHigh and MP_refFeedLow, define the velocity for traversing
the reference marks.
It depends on the entry in MP_refType whether the low or high reference-run
velocity is used.

MP_refDirection
Direction for traversing the reference marks
(compare to iTNC 530: MP1320)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: positive
Positive traverse direction
negative
Negative traverse direction
Default: negative
Access: LEVEL3
Reaction: REF

MP_refFeedLow
Low velocity for traversing the reference mark
(compare to iTNC 530: MP1330)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 36 000 000 [mm/min] or [°/min]
Default: 600 [mm/min] or [°/min]
Access: LEVEL3
Reaction: REF

MP_refFeedHigh
High velocity for traversing the reference mark
(compare to iTNC 530: MP1330)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 36 000 000 [mm/min] or [°/min]
Default: 1 200 [mm/min] or [°/min]
Access: LEVEL3
Reaction: REF
The parameter MP_refSwitchActive defines the status of the trip dog for
reference end position.

1274 HEIDENHAIN Technical Manual TNC 640


MP_refSwitchActive
Active level of the trip dog for reference end position
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: high
Reference-end-position trip dog is active if
PP_AxReferenceEndPosition = 1
low
Reference-end-position trip dog is active if
PP_AxReferenceEndPosition = 0
Default: high
Access: LEVEL3
Reaction: REF

January 2015 6.16 Reference marks 1275


Encoder with one Functional sequence if MP_refType = Mode1
reference mark
Brief description of the sequence:
 Evaluate the reference mark at any time
 Move slowly to trip dog (if there is one)
 Move away slowly from trip dog

reference
marks

closed trip dog


open "Reference end
position"

traverse direction MP_refDirection

Press NC start

No Yes
"Reference end position"
trip dog
closed?

Axis moves in
traverse direction from
MP_refDirection at the speed
from MP_refFeedLow

Axis moves in
inverted traverse direction from
"Reference end position" MP_refDirection at
trip dog Yes the speed from
is closed before reference mark MP_refFeedLow
has been traversed

No

Reference mark is traversed

Axis stops

1276 HEIDENHAIN Technical Manual TNC 640


Encoder with more Functional sequence if MP_refType = Mode2
than one reference
Note: For linear measurement using a rotary encoder, a reference pulse is
mark (not distance-
produced at each revolution of the encoder. Ensure that during machine
coded)
switch-on the same reference pulse is always evaluated. This can be realized
with the trip dog for reference end position.
Brief description of the sequence:
 Move quickly to trip dog (if necessary)
 Move away slowly from trip dog
 Then evaluate reference pulse

Reference pulse

Desired reference pulse

Closed Trip dog


"Reference end position"
Open

Traverse direction MP_refDirection

Press NC start

No "Reference end position" Yes


trip dog
closed?

Axis moves in traverse direction


from MP_refDirection
at the speed from
MP_refFeedHigh to
"reference end position" trip dog

Axis moves in inverted traverse


direction from MP_refDirection
"Reference end position" Yes at the speed from
trip dog MP_refFeedLow to
closed? "reference end position" trip dog

No "Reference end position"


trip dog
open?
Yes

Reference pulse is evaluated

Axis stops

January 2015 6.16 Reference marks 1277


Position encoder Functional sequence if MP_refType = Mode3
with distance-
coded reference
marks
reference
marks

trip dog
closed "Reference end
open position"

traverse direction MP_refDirection

Press NC start

Yes "Reference end position" No


trip dog
closed?
Axis moves in
traverse direction from
MP_refDirection at
the traverse speed from
MP_refFeedLow

Axis moves in inverted


"Reference end position" traverse direction from
trip dog is MP_refDirection at
Yes
closed before two successive the traverse speed from
reference marks MP_refFeedLow
have been traversed

No

Two successive reference marks have been traversed

Axis stops

1278 HEIDENHAIN Technical Manual TNC 640


Variant of Mode 2, Functional sequence if MP_refType = Mode10
particularly for
Brief description of the sequence:
turning
applications  Move quickly to trip dog (if necessary)
 Move away quickly from trip dog
 Move slowly to trip dog
 Then evaluate reference pulse

Measure
length

desired reference impuls

closed
open "Reference
end position"
trip dog

traverse direction MP_refDirection

Press NC start

No "Reference end position" Yes


trip dog
closed?

Axis moves in traverse direction


from MP_refDirection
at the speed from
MP_refFeedHigh to
"reference end position" trip dog

Axis moves in inverted traverse


direction from MP_refDirection
Yes at the speed from
"Reference end position"
trip dog MP_refFeedHigh to
closed? "reference end position" trip dog

"Reference end position" No


trip dog
open?
Yes
Axis moves in traverse direction
from MP_refDirection
at the speed from
MP_refFeedLow to
"reference end position" trip dog

"Reference end position" No


trip dog
closed?
Yes

Reference pulse is evaluated

Axis stops

January 2015 6.16 Reference marks 1279


Additional
configuration
options Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
refAuxFunctions
refSwitchLowActive 400415.01101
endatSerial 400415.01102
moveOnAfterSwitch 400415.01103
doubleRef 400415.01104
doubleRefOffset 400415.01105
externRefPulse 400415.01106

Use these optional machine parameters to configure additional functions.

Double reference During the double reference run, the absolute position is first output via the
run EnDat interface of the speed encoder. If at a later time the reference mark of
the position encoder is traversed, the control will continue to work with this
reference.
For this purpose, configure the position encoder of the axis for which the
double reference run is to be used, as follows:
 Configure MP_refType appropriately for the encoder
 Set MP_doubleRef = FALSE
 Delete the machine parameter MP_doubleRefOffset
 Set MP_refPosition = 0
Then put the respective axis into operation:
 Start the control and perform referencing in the usual way.
 Set MP_refPosition to the appropriate value
 Set MP_doubleRef = TRUE
 Restart the control and reference the axis
 When traversing the reference mark (MP_doubleRefOffset without value)
of the position encoder for the first time, the value determined is
automatically applied to the machine parameter MP_doubleRefOffset. A
message also informs you that the modified configuration should be
checked.

1280 HEIDENHAIN Technical Manual TNC 640


MP_refSwitchLowActive
Trip dog (reference end position) is low active
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
Trip dog (reference end position) is low active (0)
FALSE
Trip dog (reference end position) is high active (1)
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

MP_endatSerial
The EIB (External Interface Box) makes it possible to connect
encoders with incremental 1 VPP signals to the purely serial
EnDat 2.2 interface of the control
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
The encoder is connected via the HEIDENHAIN EnDat interface
box (EIB)
FALSE
No EIB is used.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

MP_moveOnAfterSwitch
After dog, continue for half of distance from
MP_distPerMotorTurn
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
After reaching the trip dog, the axis moves further for half the
distance from CfgAxisHardware/MP_distPerMotorTurn. Only
then is the evaluation of the reference mark activated.
FALSE
Reference-mark evaluation is activated immediately after
actuation of trip dog.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

January 2015 6.16 Reference marks 1281


MP_doubleRef
Double referencing is active
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
Double reference run: During the double reference run, the
absolute position is first output via the EnDat interface of the
speed encoder. If at a later time the reference mark of the
position encoder is traversed, the control will continue to work
with this reference
FALSE
No double reference run
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

MP_doubleRefOffset
Distance between speed and position encoder for double
reference run.
Available from NCK software version: 597110-06.
Format: Number
Input: –100 000 to 100 000 [mm] or [°] with max. 9 decimal places
Default: 0 [mm] or [°], optional parameter
Access: LEVEL3
Reaction: REF

MP_externRefPulse
Referencing with external reference signal
Available from NCK software version: 597110-06.
Format: Selection menu
Options: off
The reference signal of the connected speed encoder or the
position encoder is used
spindleRef
During the reference run, the control evaluates the reference
signal at the –SP.REF+ and –SP.REF– inputs at X9 of the
external PL.
Default: off, optional parameter
Access: LEVEL3
Reaction: REF

1282 HEIDENHAIN Technical Manual TNC 640


6.16.4 "Traverse Reference Points" operating mode

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
refPosition 400403
moveAfterRef 400409
moveAfterRefType 400410
moveAfterRefPos 400411
moveAfterRefFeed 400412

The parameter object CfgReferencing is not required for:


 Virtual axes (MP_axisMode=Virtual)
In NN_OmgReference, the NC informs the PLC of the Pass Over Reference
Point operating mode. In NN_AxReferenceAvailable, the NC reports
whether the reference marks of this axis were traversed.
If you switch the operating mode before all reference marks are traversed, the
TNC 640 identifies this state and prompts you to traverse the remaining
reference marks.

Reference end To prevent the axes from violating their traverse limits when traversing the
position reference marks, each axis requires a trip dog (at the reference end position).
The trip dogs must be installed by the machine tool builder at the ends of the
traverse range. The switch signals from the trip dogs are sent to free PLC
inputs. The PLC program must gate these PLC inputs with
PP_AxReferenceEndPosition for "reference end position." Setting the
reference end position causes a reversal of the traverse direction from
MP_refDirection.

PLC operand / Description Type

NN_AxReferenceAvailable M
0: Reference mark not traversed
1: Reference mark traversed
PP_AxReferenceEndPosition M
0: Trip dog not triggered
1: Trip dog triggered

January 2015 6.16 Reference marks 1283


Machine datum MP_refPosition defines the position of the machine datum relative to the
reference point of the scale. For encoders with distance-coded reference
marks, the position is relative to the scale reference point; for encoders with
EnDat interface, relative to the absolute encoder datum.

MP_refPosition
Position of the machine datum
(compare to iTNC 530: MP960, MP3430)
Available from NCK software version: 597110-01.
Format: Number
Input: -100 000 to 100 000 [mm] or [°] with max. 9 decimal places
Default: 0 [mm] or [°]
Access: LEVEL3
Reaction: REF

Positioning after The axis can automatically be moved to a certain position after reference mark
reference mark traverse is completed. This behavior is activated with the machine parameter
traverse MP_moveAfterRef.
Define the following information for positioning after reference mark traverse:
 The type of movement after finding the reference mark:
absolute, relative or positioning on the Hirth grid
 In MP_moveAfterRefPos, the end position.
 In MP_moveAfterRefFeed, the feed rate.

1284 HEIDENHAIN Technical Manual TNC 640


MP_moveAfterRef
Activate movement after finding the reference mark
Available from NCK software version: 597110-02.
Format: Selection menu
Options: on
Positioning after reference-mark traverse is active
off
No positioning after reference-mark traverse
Default: off
Access: LEVEL3
Reaction: REF

MP_moveAfterRefType
Type of movement after finding the reference mark
Available from NCK software version: 597110-02.
Format: Selection menu
Options: absolute
Absolute positioning. This function is mainly intended for
positioning rotary tables. Please ensure that no collision occurs
as a result of this positioning. The software limit switches are
already active.
relative
Incremental positioning
HirthRasterPos
Approach next Hirth grid position in positive direction.
HirthRasterNeg
Approach next Hirth grid position in negative direction.
Default: absolute
Access: LEVEL3
Reaction: REF

MP_moveAfterRefPos
Position for positioning after traversing the reference mark
Available from NCK software version: 597110-01.
Format: Number
Input: -100 000 to 100 000 [mm] or [°] with max. 9 decimal places
Default: 0 [mm] or [°]
Access: LEVEL3
Reaction: REF

MP_moveAfterRefFeed
Feed rate for positioning after traversing the reference mark
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 36 000 000 [mm/min] or [°/min] with max. 9 decimal places
Default: 6 000 [mm/min] or [°/min]
Access: LEVEL3
Reaction: REF

January 2015 6.16 Reference marks 1285


6.17 The control loop
Machine tools normally function on the principle of cascade control. Here the
position control loop is prior to the speed and current control loops.
Benefits of cascade control:
 Transparent structure of the individual control loops.
 Disturbances can be compensated through the subsequent controllers. This
relieves the prior controller.
 The respective outer control loop protects the inner control loop by limiting
the command variable.
 Individual commissioning of each control loop, starting with the innermost
loop.

6.17.1 Block diagram of control loop

The position, speed, and current controllers are integrated in the TNC 640. The
power module is driven by the CC controller unit through PWM signals (PWM
= pulse width modulation).

There is a separate time interval for each control loop:


 Position controller cycle time: Time interval during which the interpolation
points on the path are calculated.
 Speed controller cycle time: Time interval in which the actual speed value
is compared to the calculated nominal speed value.
 Current controller cycle time: Time interval in which the actual current
value is compared to the calculated nominal current value.
The cycle times that apply vary depending on the CC used or the CC’s
settings.

1286 HEIDENHAIN Technical Manual TNC 640


6.17.2 Relation between jerk, acceleration, velocity and distance

Acceleration and Taking into account the motor and the power module, the machine should be
jerk designed in such a way that acceleration during the acceleration phase is as
constant as possible. This ensures maximum utilization of the drive current.
On the other hand, the machine should also be designed to fulfill the dynamic
requirements. The jerk should be kept to a minimum and the jerk phase should
be maximized in order to prevent the machine from oscillating. This results in
a bell-shaped acceleration curve (see figure).

Legend:
 v: Velocity
 a: Acceleration
 r: Jerk
 vmax: Maximum velocity

January 2015 6.17 The control loop 1287


Distance To attain the maximum velocity, a certain minimum distance must be
traversed. This also applies to the braking phase.
If the traverse distance is greater than the distance covered during the
acceleration and braking phases, a movement at constant (maximum) speed
is inserted (see period of time from t1 to t2 in the figure below).
If the traverse path is smaller, the maximum speed is not achieved.

Legend:
 v: Velocity
 a: Acceleration
 r: Jerk
 s: Distance
 vmax: Maximum velocity
 Sw: Traverse distance
 t1: End of acceleration phase
 t2: Start of braking phase
 t3: End of traverse distance

1288 HEIDENHAIN Technical Manual TNC 640


6.17.3 Geometry filter

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgStretchFilter
filterType 201101
tolerance 201102
maxLength 201103

The geometry filter (stretch filter) must not be confused with the nominal
position value filters (See "Nominal position value filter" on page 1295). In
comparison with the nominal position value filters it uses the position data
from the NC program, not the nominal values of the axes. This means that this
filter is effective during internal path calculation—before the nominal position
value filter and the look-ahead. The geometry filter is suitable for NC block
smoothing, e.g. for unsteady paths from a CAM system.
With the parameter MP_filterType, you can choose between two basic
settings for the geometry filter.
 Average: The geometry filter smoothes corners. This method moves the
contour points of linear NC blocks in such a way that the change in direction
is less distinct (see figure below). This enables you to machine corners at a
higher feed rate, resulting in an improved workpiece surface quality.
Use the following machine parameters to influence this function:
• MP_tolerance: Defines the maximum shift of a contour point
• MP_maxLength: Defines the filter width (i. e. the range within which
the geometry filter is effective)

January 2015 6.17 The control loop 1289


 ShortCut: The geometry filter filters out very close NC blocks (unnecessary
linear blocks) ahead of time, resulting in fewer NC blocks, which speeds the
program processing (see figure below).
Use the following machine parameters to influence this function:
• MP_tolerance: Defines the maximum tolerance
• MP_maxLength: Defines the maximum length of the new linear path
as a result of filtering
Note

The setting MP_filterType = ShortCut cannot be used in combination with


TCPM!

MP_filterType
Type of stretch filter
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: Off
The filter is switched off.
ShortCut
Omit individual points on polygon; if the connecting line from
the middle point of three subsequent points on a polygon to the
previous point or to the next point is within the tolerance band,
the middle point will be omitted.
Average
The geometry filter smoothes corners.
Default: Off
Access: LEVEL3
Reaction: RUN

MP_tolerance
Maximum distance of the filtered to the unfiltered contour
Available from NCK software version: 597 110-01.
Format: Number
Input: 0.00000 to 10.00000 [mm]
0: Stretch filter is off
Default: 0
Access: LEVEL3
Reaction: RUN

1290 HEIDENHAIN Technical Manual TNC 640


MP_maxLength
Maximum length of the distance resulting from filtering
Available from NCK software version: 597 110-01.
Format: Number
Input: 0.0000 to 1000.0000 [mm]
0: Stretch filter is off
Default: 0
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1291


6.17.4 Feed-rate smoothing

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of machining channel]
CfgLaPath
filterFeedTime 201513

Note

If you are migrating from the iTNC 530:


MP_filterFeedTime = MP1522 on the iTNC 530.
Caution: The iTNC 530 and the TNC 640 use different units of
measurement:
Unit used for MP1522 on the iTNC: Milliseconds [ms]
Unit used for MP_filterFeedTime: Seconds [s]
The function and effect of the TNC 640's feed-rate smoothing filter is not
compatible with the iTNC 530. Therefore, the values from MP1522 of the
iTNC 530 cannot be transferred to MP_filterFeedTime.

In addition to the nominal position value filters, MP_filterFeedTime allows


you to activate a feed-rate smoothing filter. This gives a more uniform feed
rate profile. This can increase the surface quality and prevent momentary
excitation of the machine.
This can be especially useful for NC programs with complex series of
movements and therefore an irregular feed rate profile. One the one hand, the
feed-rate smoothing can be beneficial on very stiff machines with high jerk
values by preventing momentary feed rate peaks. On the other hand,
smoothing can be useful for machines with low resonance frequencies by
already preventing low-frequency excitation in the feed-rate profile.

1292 HEIDENHAIN Technical Manual TNC 640


The special benefit of the additional feed rate smoothing is that it already
smoothes the feed rate before the position nominal value filtering and can
therefore reduce even very low frequency excitation and irregularities in the
surface. At the same time, the pre-calculated limit feed rates on circles or
corners are complied with.

January 2015 6.17 The control loop 1293


Configuring the Always use a test workpiece to set the MP_filterFeedTime parameter. If the
feed rate surface quality is already satisfactory, you can do without the filter.
smoothing
 To configure the filter, choose an unsatisfactory location on the test
workpiece.
 Start machining and use either the integrated oscilloscope or TNCscope to
record the development of the feed rate.
 Adjust MP_filterFeedTime so that the value equals the average duration of
the peaks occurring in the feed rate. The filter then cuts off all feed rate
peaks that are less than the duration in MP_filterFeedTime.
 Test the selected filter setting on a test workpiece.
 Vary the setting until you find the best possible compromise between
surface quality and machining time.

MP_filterFeedTime
Time constant of feed-rate smoothing filter
Available from NCK software version: 597110-04.
Format: Number
Input: 0 to 10 [s] with up to 9 decimal places
Default: 0.1, optional parameter
Access: LEVEL3
Reaction: RUN

Note

You will find a guideline on how to set feed-rate smoothing in the chapter
about commissioning, see "Configuring the nominal position value filter and
look-ahead parameters" on page 1747.

1294 HEIDENHAIN Technical Manual TNC 640


6.17.5 Nominal position value filter
To attain a high machining velocity while maintaining a high surface quality, the
workpiece contour can be adapted to the machine dynamics by means of a
nominal position value filter.
Four types of low-pass filters are available for limiting the bandwidth of the
dynamics of nominal position and speed values.
 Average (mean-value filter)
 HSC filter
• with Cycle 32 – mode 0 (HSC finishing filter)
• with Cycle 32 – mode 1 (HSC roughing filter)
 Advanced HSC filter
 Triangle filter
Mean-value and triangle filter
The mean-value and triangle filters are low-pass filters that always smooth a
contour towards the inside at changes in direction. They can be used when a
very high surface quality is required, or when a high machining speed is
required and larger tolerances are permitted.
HEIDENHAIN recommends: Do not use the mean-value filter. This filter
provides a reduced edge steepness and was originally developed for internal
tests. Prefer the triangle filter.
HSC filter and advanced HSC filter
The speed advantage of both HSC filters is especially large for circular
contours. However, you must consider slight overshoots at corners and
curvature transitions that are within the given tolerances (MP_pathTolerance
or Cycle 32).
HEIDENHAIN recommends: Prefer the HSC filter when a high accuracy is
required, and use the advanced HSC filter when you need a high surface
quality. The Advanced HSC filter has a more even effect on the speed and any
possible overshoots.

January 2015 6.17 The control loop 1295


The figure below gives a rough overview of when to use the nominal position
value filters:

Comparison of the filter graphs for circle and corner (F 10000):

1296 HEIDENHAIN Technical Manual TNC 640


Finishing:

Filter type Recommended application


Triangle filter High surface definition
HSC filter High accuracy with short machining times
Advanced HSC filter High surface definition with short machining times

Roughing:

Filter type Recommended application


Triangle filter Short machining time at high tolerances > 50 µm
(also with Cycle 32 mode 0)
HSC filter Short machining time (with Cycle 32 mode 1)

Note

You will find a guideline on how the start the nominal position value filters
and the look-ahead in the chapter on commissioning, see "Configuring the
nominal position value filter and look-ahead parameters" on page 1747

January 2015 6.17 The control loop 1297


Operating The function of the filters for rotary axes depends on TCPM (see figure):
sequence of the
 TCPM is not active:
nominal position
value filters • The filters of the "cutter location" type are not active
• The filters of the type "Position" are active for all axes
 TCPM is active and MP_isAng = TRUE (CfgAxes):
• The filters of the "cutter location" type are automatically activated for all
rotary axes
• The filters of the "position" type are not active for rotary axes

This method provides the following advantage:


Filtering by CLP filters (Cutter Location Point filters) changes the actual
positions of the rotary axes. Based on the kinematics, these changed rotary
axis positions result in changes in the nominal X, Y and Z positions before the
position filter.

1298 HEIDENHAIN Technical Manual TNC 640


Configuration of
the nominal
position value Settings in the configuration editor MP number
filters
System
CfgFilter
defaultPosition 100405
shape
frequency
hscMode
maxHscOrder
defaultCutterLoc 100406
shape
frequency
hscMode
maxHscOrder
defaultManualOrder 100407
disableForMeasure 100408
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionFilter
axisPosition 401606
shape
frequency
hscMode
maxHscOrder
axisCutterLoc 401607
shape
frequency
hscMode
maxHscOrder
manualFilterOrder 401605
handwheelFiltOrder 401608

For configuring the nominal value position filters with the TNC 640, the
following machine parameters are available:
Global setting of the nominal position value filters via System / CfgFilter
Two filters are located before the position control loop to prevent the machine
from oscillating:
 MP_defaultPosition affects only linear axes when TCPM is active; without
TCPM it is also effective for rotary axes.
 MP_defaultCutterLoc affects only rotary axes when TCPM is active. The
filter is not required for simple 3-axis machines. In this case you can remove
the filter from the configuration.
 MP_defaultManualOrder defines the order of the mean-value filter for the
Manual operating modes.
 The optional MP_disableForMeasure parameter serves to deactivate the
filters during measurement, See "Nominal position value filters during
measurement with TS and TT" on page 2296.

January 2015 6.17 The control loop 1299


Use MP_shape to specify the form of nominal position value filter and enter
the filter's cutoff frequency in MP_frequency. The TNC 640 calculates the
filter order automatically.
The MP_hscMode parameter affects only HSC filters (not advanced HSC
filters) and specifies the HSC mode (roughing or finishing). The value defined
in MP_hscMode can be overwritten with FN17: ID610 or with Cycle 32 in the
NC program.
MP_maxHscOrder decides the maximum filter order if an HSC or
AdvancedHSC filter is configured. Due to the number of filter coefficients
(filter order) to be calculated, the computing time required for the HSC nominal
position value filters may cause a delay in the response time of the control.
This number of filter coefficients to be calculated can be reduced with
MP_maxHscOrder. Since the coefficients are usually calculated in the
interpolator clock cycle of usually 3.0 ms, the reaction time decreases
correspondingly per decrement of the filter order.

Note

The modification of the filter order fundamentally means a modification of


the filter characteristic for the set nominal position value filters, and can
thus seriously affect the behavior of the machine. The effects must be
checked individually and the nominal position value filters readjusted if
necessary.

The parameters are globally effective for all axes unless you overwrite the
defined default value with the axis-specific filter parameters MP_axisPosition
or MP_axisCutterLoc:
Axis-specific setting of the nominal position value filters:
 MP_axisPosition is effective for specific linear axes, and for rotary axes if
TCPM is deactivated.
 MP_axisCutterLoc is effective for specific rotary axes with TCPM.
 MP_manualFilterOrder defines the order of the mean-value filter for
specific axes in the Manual operating modes.
When you define an axis-specific filter, the global setting from System /
CfgFilter is overwritten for the specified axis.
The smoothing function of the nominal position value filters causes contour
errors. The velocity profile is adjusted by the look-ahead function so that the
contour error does not exceed the given tolerance (See "Look-ahead" on page
1307).
Take the machine setup into account when you configure filters. It is decisive
whether TCPM (Tool Center Point Management) executes compensating
movements for rotary axes.

1300 HEIDENHAIN Technical Manual TNC 640


Configuration examples
Example 1:
Machine with 3 axes (TCPM is not used)
For a simple 3-axis configuration, the nominal position value filters are globally
defined in CfgFilter: Remove the CfgPositionFilter configuration object from
the parameter sets of the axes. In addition, remove the MP_defaultCutterLoc
parameter since there are no rotary axes and the Cutter Location filter is not
needed.

Machine parameters in the configuration editor and Meaning


recommended input value
System
CfgFilter
defaultPosition
shape: Triangle Form of filter: Triangle filter
frequency: 24 Limit frequency: 24 Hz
hscMode: Smoothing HSC mode: Finishing
defaultManualOrder: 11 Filter order in Manual operating
modes: 11

January 2015 6.17 The control loop 1301


Example 2:
Machine with 3 axes, with slow infeed of the Z axis
In this 3-axis configuration, all nominal position value filters are defined globally
with the exception of the Z axis. Remove all CfgPositionFilter configuration
objects, except in the parameter set for the Z axis. Since the filter settings will
be reduced for the Z-axis to accommodate the slow infeed movements, this
axis is configured separately:

Attention

Only define separate filter settings for an axis if the axis is not interpolated
with the other axes!
Example:
On a boring mill (boring applications only) it may be useful to define softer
filters for positioning movements in the Z axis at rapid traverse.

Machine parameters in the configuration editor and Meaning


recommended input value
System
CfgFilter
defaultPosition
shape: HSC Form of filter: HSC filter
frequency: 40 Limit frequency: 40 Hz
hscMode: Smoothing HSC mode: Finishing
defaultManualOrder: 11 Filter order in Manual operating
modes: 11
Axes
ParameterSets
[Key name of the Z axis]
CfgPositionFilter
axisPosition
shape: HSC Form of filter: HSC filter
frequency: 15 Limit frequency: 15 Hz
hscMode: Smoothing HSC mode: Finishing

1302 HEIDENHAIN Technical Manual TNC 640


Example 3:
Machine with 5 axes (TCPM is used)
In this configuration, a global nominal position value filter for the three linear
axes is defined in the MP_defaultPosition parameter. In
MP_defaultCutterLoc, another global nominal position value filter is defined
for the rotary axes. The TNC 640 automatically identifies rotary axes by the
setting in the MP_isAng parameter and activates the Cutter Location filter.
The rotary axes do not have to be manually specified.
In the configuration example, the rotary axes B and C with the parameter sets
PB and PC are to use a weaker nominal position value filter when M129
(TCPM deactivated) is effective.

Note

The configuration from this example must only be used if the rotary axes B
and C do not work simultaneously with the X, Y and Z axes (rotary axes for
infeed motion only).

Machine parameters in the configuration editor and Meaning


recommended input value
System
CfgFilter
defaultPosition Linear axes (global):
shape: HSC Form of filter: HSC filter
frequency: 40 Limit frequency: 40 Hz
hscMode: Smoothing HSC mode: Finishing
defaultCutter Loc Rotary axes (global):
shape: HSC Form of filter: HSC filter
frequency: 25 Limit frequency: 25 Hz
hscMode: Smoothing HSC mode: Finishing
defaultManualOrder: 11 Filter order in Manual mode: 11
Axes
ParameterSets
[PB]
CfgPositionFilter Rotary axis (axis-specific):
axisPosition TCPM deactivated
shape: HSC Form of filter: HSC filter
frequency: 15 Cutoff frequency: 15 Hz
hscMode: Smoothing HSC mode: Finishing
[PC]
CfgPositionFilter Rotary axis (axis-specific):
axisPosition TCPM deactivated
shape: HSC Shape of filter: HSC filter
frequency: 15 Cutoff frequency: 15 Hz
hscMode: Smoothing HSC mode: Finishing

January 2015 6.17 The control loop 1303


Machine parameters:
System / CfgFilter:
Configuration of the globally effective nominal position value filters
 defaultPosition:
Defines the form and limit frequency of the nominal position value filter
globally for all linear axes.
 defaultCutterLoc:
Defines the form and limit frequency of the nominal position value filter
globally for all rotary axes.
 defaultManualOrder:
Defines the filter order in the Manual operating modes globally for all axes.
Parameter set of the axis / CfgPositionFilter:
Axis-specific configuration of the nominal position value filters. Overwrites the
settings made in System / CfgFilter for the specified axis.
 axisPosition:
Defines the nominal position value filter for specific linear axes. Also
effective for rotary axes with M129 (TCPM not active).
 axisCutterLoc:
Defines the nominal position value filter for specific rotary axes (TCPM
active).
 manualFilterOrder:
Axis-specific order of the mean-value filter for the Manual operating modes.
Overwrites the setting in MP_defaultManualOrder (System / CfgFilter).
 handwheelFiltOrder:
Axis-specific order of the mean-value filter in the El. Handwheel operating
mode. Overwrites the setting in MP_manualFilterOrder or
MP_defaultManualOrder.

MP_shape
Shape of the nominal position value filter
Available from NCK software version: 597110-05.
Format: Selection menu
Options: Off
Filter is off
Average
Mean-value filter
Triangle
Single filter
HSC
HSC filter (High Speed Cutting)
(setting for "accuracy" criterion)
AdvancedHSC
Advanced HSC filter (High Speed Cutting)
(setting for "surface" criterion)
Default: Off
Access: LEVEL3
Reaction: RUN

1304 HEIDENHAIN Technical Manual TNC 640


MP_frequency
Limit frequency of the nominal position value filter
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 1000 [Hz] with up to 9 decimal places
Default: 20 [Hz]
Access: LEVEL3
Reaction: RUN

MP_hscMode
Only for HSC filters: HSC mode (operating mode of the nominal
position value filter)
Available from NCK software version: 597110-05.
Format: Selection menu
Options: The HSC mode defined here is effective for HSC filters (not
advanced HSC filters). The machine operator can use Cycle 32
or FN17: ID260 in the NC program to overwrite this setting.
Smoothing
HSC mode: Finishing
Roughing
HSC mode: Roughing
Default: Smoothing
Access: LEVEL3
Reaction: RUN

MP_maxHscOrder
Max. filter order for HSC and AdvancedHSC filters
(compare to iTNC 530: MP1262, MP1263)
Available from NCK software version: 597110-06.
Format: Number
Input: 25 to 63
Default: 63, optional parameter
Access: LEVEL3
Reaction: RUN

MP_defaultManualOrder
Globally effective order of the mean-value filter in the Manual
operating modes
Available from NCK software version: 597110-05.
Format: Number
Input: 1 to 51
Only odd integers are permitted input values! If you enter an
even number, the TNC 640 displays an error message.
Default: 11
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1305


MP_disableForMeasure
Deactivation of the filters during measurement with TS or TT
touch probe
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
The nominal position value and the filter in the speed and
position controller of the CC controller unit are deactivated
during measurement with TS and TT.
FALSE
The filter settings stay effective even during measurement with
the TS and TT.
Default: FALSE
Access: LEVEL3
Reaction: RUN

MP_manualFilterOrder
Axis-specific order of the mean-value filter for the Manual
operating modes. Overwrites the value in
MP_defaultManualOrder (CfgFilter).
Available from NCK software version: 597110-05.
Format: Number
Input: 1 to 251
Only odd integers are permitted input values! If you enter an
even number, the TNC 640 displays an error message.
Default: 11, optional parameter
Access: LEVEL3
Reaction: RUN

MP_handwheelFiltOrder
Axis-specific order of the mean-value filter in the El. Handwheel
operating mode
Available from NCK software version: 597110-05.
Format: Number
Input: 1 to 251
Only odd integers are permitted input values! If you enter an
even number, the TNC 640 displays an error message.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1306 HEIDENHAIN Technical Manual TNC 640


6.17.6 Look-ahead
Look-ahead receives the NC blocks from the geometry filter. Under
consideration of certain limit values, look-ahead cyclically calculates the
maximum possible contouring speed up to 5000 blocks in advance.
The calculated values are transferred to the interpolator in feed-rate profiles.
The interpolator calculates axis-specific nominal values from the position
polynomials and feed-rate profile.
The programmed contouring feed rate, maximum axis accelerations,
permissible axis/path jerk, filter parameters and tolerances are taken into
account in these feed-rate profiles. The feed-rate profiles are also influenced
by changes to the override potentiometer, and by whether SINGLE BLOCK or
FULL SEQUENCE is active.
Small variations in the feed rate, which appear during calculation of the feed-
rate profile, are suppressed in order to achieve a smooth feed rate.

Contour smoothing In order to achieve smooth machining surfaces with a minimum of machining
time, the following must be kept in mind:
 Each jerk (da/dt), which is caused by a change in direction on the contour, or
by a change in the acceleration or in the feed rate, excites vibrations in the
machine. Therefore, the jerk must be limited to a permissible size.
 For feed rates above the machining feed rate, an increased jerk and
increased tolerance are both permissible, since they no longer have any
effect on the machining quality.
 A settable path tolerance (deviation from the contour) can be used but not
exceeded.
 Each machine axis is programmed for a certain maximum feed rate, and has
a specified capability for acceleration. For interpolating axes, the
acceleration of the slowest axis is decisive.
 Feed rates must not fall beneath the minimum value.

January 2015 6.17 The control loop 1307


Machine
parameters for
path-specific limit Settings in the configuration editor MP number
values
Channels
ChannelSettings
[Key name of the machining channel]
CfgLaPath
minPathFeed 201501
minCornerFeed 201502
maxG1Feed 201503
maxPathJerk 201504
maxPathJerkHi 201505
pathMeasJerk 201517
pathTolerance 201506
pathToleranceHi 201507
maxPathYank 201508
maxPathYankHi 201518
angleTolerance 201511
angleToleranceHi 201512
maxTransAcc 201514
maxTransAccHi 201515

 In CfgLaPath, define the path-specific limit values for feed rate, acceleration
and jerk.
MP_minPathFeed allows you to define the minimum feed rate in an NC block.
The parameter is intended for technological purposes, in particular for
preventing dwell marks in small radii. If the values are too large, feed-rate
optimization becomes ineffective. This might lead to excessive dynamic load
on the machine.

Note

MP_minPathFeed is always limited to the programmed feed rate; this


means that look-ahead violates the defined minimum feed-rate value only
if a lower value is programmed in the NC block or is set by the override
potentiometer.

Note

If you are migrating from the iTNC 530:


MP_minPathFeed is not available on the iTNC 530.

MP_minPathFeed
Minimum feed rate on the path
(iTNC 530: Parameter not available)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 600 000 [mm/min] with max. 9 decimal places
Default: 60 [mm/min]
Access: LEVEL3
Reaction: RUN

1308 HEIDENHAIN Technical Manual TNC 640


In MP_minCornerFeed you define the minimum feed rate at block transitions
(corners and line-to-arc transitions). The parameter is intended for
technological purposes, in particular for preventing dwell marks in corners. If
the values are too large, feed-rate optimization becomes ineffective. This
might lead to excessive dynamic load on the machine.
If a value greater than MP_minPathFeed is defined in MP_minCornerFeed,
the value from MP_minPathFeed is used as the minimum feed rate at block
transitions.

Note

MP_minCornerFeed is always limited to the programmed feed rate


between two segments; this means that look-ahead violates the defined
minimum feed-rate value only if a lower value is programmed in the NC
block or is set by the override potentiometer.

Note

If you are migrating from the iTNC 530:


MP_minCornerFeed is not available on the iTNC 530.

MP_minCornerFeed
Minimum feed rate at corners
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 600 000 [mm/min] with max. 9 decimal places
Default: 30 [mm/min]
Access: LEVEL3
Reaction: RUN

MP_pathTolerance limits the feed rate at corners and curvatures. The


parameter defines the radius of rounding of corners and the maximum
deviation from the circle radius. This keeps the errors of nominal position value
filter within certain limits. The TNC 640 decreases the feed rate at corners,
circles and curved paths in order to maintain the specified tolerance.
On the TNC 640, the machine operator can use Cycle 32 in the NC program to
change the MP_pathTolerance parameter.
MP_pathTolerance allows for errors caused by the filter before the position
feedback control (See "Operating sequence of the nominal position value
filters" on page 1298). The feed-rate override does not affect which jerk or
tolerance is in effect.
The tolerance defined in MP_pathToleranceHi is effective for feed rates
exceeding those defined in MP_maxG1Feed.

Note

If you are migrating from the iTNC 530:


MP_pathTolerance = MP1202.0 on the iTNC 530.
MP_pathToleranceHi = MP1202.1 on the iTNC 530.

January 2015 6.17 The control loop 1309


MP_pathTolerance
Path tolerance for contour transitions after the filter
Available from NCK software version: 597110-01.
Format: Number
Input: 0.0001 to 10 [mm] with max. 9 decimal places
Default: 0.01 [mm]
Access: LEVEL3
Reaction: RUN

MP_pathToleranceHi
Path tolerance after the filter at rapid traverse
Available from NCK software version: 597110-01.
Format: Number
Input: 0.0001 to 10 [mm] with max. 9 decimal places
Default: 0.01 [mm]
Access: LEVEL3
Reaction: RUN

All "-Hi" parameters (jerk and tolerance) go into effect from the feed rate
defined in MP_maxG1Feed.
Please note:
 Programmed feed rate <= MP_maxG1Feed:
Tool in contact with workpiece, lower jerk values and tolerances are
effective
 Programmed feed rate > MP_maxG1Feed:
Rapid traverse, greater jerk values and tolerances are effective
Note

HEIDENHAIN recommends:During machine optimization set


MP_maxG1Feed to a high value. This prevents inadvertent use of the "-Hi"
values on the TNC 640 while you are adjusting the axes.

Note

If you are migrating from the iTNC 530:


MP_maxG1Feed = MP1092 on the iTNC 530.

MP_maxG1Feed
Maximum machining feed rate. If this value is exceeded, the "–
Hi" parameters go into effect
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 99 999 [mm/min] with max. 9 decimal places
Default: 99 999 [mm/min]
Access: LEVEL3
Reaction: RUN

1310 HEIDENHAIN Technical Manual TNC 640


The jerk defined in MP_maxPathJerk is effective for machining feed rates in
all channels that do not exceed the maximum machining feed rate from
MP_maxG1Feed. MP_maxPathJerk has a higher priority than
MP_axPathJerk (CfgLaAxis). This means that MP_maxPathJerk limits the
vector sum of axis-specific path jerks.

Note

If you are migrating from the iTNC 530:


MP_maxPathJerk = MP1090 on the iTNC 530.

MP_maxPathJerk
Maximum jerk on the path
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 000 [m/s3] with up to 9 decimal places
Default: 5 [m/s3]
Access: LEVEL3
Reaction: RUN

The jerk specified in MP_maxPathJerkHi is valid for larger feed rates than
defined in MP_maxG1Feed. MP_maxPathJerkHi has a higher priority than
MP_axPathJerkHi (CfgLaAxis). This means that MP_maxPathJerkHi limits
the vector sum of the axis-specific path jerks at rapid traverse.

MP_maxPathJerkHi
Maximum jerk on the path at rapid traverse
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 000 [m/s3] with up to 9 decimal places
Default: 5 [m/s3]
Access: LEVEL3
Reaction: RUN

The jerk defined in MP_pathMeasJerk is the maximum jerk on the path


during measurement.
If the value is not set, the control uses the value entered in MP_maxPathJerk
also during measurement. See also 2297.

MP_pathMeasJerk
Maximum jerk on the path during measurement
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 1 000 000 [m/s3] with up to 9 decimal places
0: The control uses the maximum value
Default: 5 [m/s3]
Access: LEVEL3
Reaction: RUN

 Independent of the feed rate, define the maximum yank (dj/dt) in


MP_maxPathYank.

January 2015 6.17 The control loop 1311


The maximum yank normally does not have to be limited in the path direction
with MP_maxPathYank (= change of the jerk per time). Therefore, you can
usually set the parameter to its maximum value.
Under unfavorable conditions, very short jerk phases (in the range of the first
natural frequency of the axis) may lead to oscillations in the workpiece. By
reducing MP_maxPathYank, you can prolong the jerk phases to a certain
extent and thus reduce the oscillations in the workpiece.

Note

Limiting the yank is not suitable for smoothing successive acceleration and
deceleration processes ("pumping" of feed rate). Reduce the path jerk
(MP_axTransJerk) instead. The use of a stretch filter (CfgStretchFilter) and
feed-rate smoothing filter (MP_filterFeedTime) might also be helpful.
Feed-rate "pumping" often occurs in poor-quality CAM-generated programs
that carry noise. Therefore check whether the CAM program is the cause
of the problem and read it out again if necessary.

Note

If you are migrating from the iTNC 530:


MP_maxPathYank is not available on the iTNC 530.

MP_maxPathYank
Maximum yank on the path (dj/dt)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 000 [mm/s4] with up to 9 decimal places
Default: 4000 [mm/s4]
Access: LEVEL3
Reaction: RUN
MP_maxPathYankHi enables you to deactivate the yank limitation during
rapid traverse movements with FMax or above MP_maxG1Feed. For this
purpose, set the optional parameter MP_maxPathYankHi to the value Maximum.
With the default Off setting, the same yank limitation applies as for normal
feed rate.

MP_maxPathYankHi
Mode of yank limitation at rapid traverse
Available from NCK software version: 597110-08.
Format: Selection menu
Options: Off
The same yank limitation as with normal feed rate
Maximum
No yank limitation
Default: Off, optional parameter
Access: LEVEL3
Reaction: RUN

1312 HEIDENHAIN Technical Manual TNC 640


In the parameters MP_angleTolerance and MP_angleToleranceHi (for rapid
traverse), you define the tolerance for rotary axes with M128.
MP_angleTolerance can be changed by the machine operator with Cycle 32.
If the tool orientation is not important (e.g. when machining with spherical
cutters), this parameter should be set to a high value; usually,
MP_angleTolerance = 3°.

Note

If only small angular deviations are permissible (e.g. in cylindrical milling),


the value must be reduced appropriately!

Note

If you are migrating from the iTNC 530:


The angle tolerance can only be defined with Cycle 32 on the iTNC 530.

Note

Only for controls with DCM collision monitoring:


For movements near collision objects with high angle tolerances (compare
iTNC 530: MP1290, MP1292), higher oversizes must be defined in collision
monitoring. Collision monitoring uses the nominal position values.
Deviations resulting from high tolerances are not taken into account.

MP_angleTolerance
Tolerance for rotary axes with M128
Available from NCK software version: 597110-02.
Format: Number
Input: 0.0001 to 10 [°] with max. 9 decimal places
Default: 0.01 [°]
Access: LEVEL3
Reaction: RUN

MP_angleToleranceHi
Tolerance for rotary axes (rapid traverse) with M128. The value
also applies to feed rates greater than MP_maxG1Feed.
Available from NCK software version: 597110-02.
Format: Number
Input: 0.0001 to 10 [°] with max. 9 decimal places
Default: 0.01 [°]
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1313


Radial acceleration You can define the radial acceleration of axes in addition to the simple
acceleration (MP_maxAcceleration).
 Define the radial acceleration in MP_maxTransAcc.
 In MP_maxTransAccHi you define the radial acceleration at rapid traverse
or feed rates greater than MP_maxG1Feed.
MP_maxTransAcc(Hi) limits the feed rate during circular movement
according to the formula:

v = r ⋅ MP_maxTransAcc(Hi)

v = feed rate during circular movement [m/s]


r = radius [m] (of the path of the tool center)
HEIDENHAIN recommends:

MP_maxTransAcc = 0.5...1 ⋅ MP_maxAcceleration

If the programmed feed rate is less than that calculated above, then the
programmed feed rate becomes effective.
MP_maxTransAcc(Hi) functions for operation with both following error and
feedforward control.

Note

The parameter is not available on the TNC 320.

MP_maxTransAcc
Maximum radial acceleration on circles and curved paths
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 1 000 000 [m/s2] with up to 9 decimal places
Default: 0 [m/s2], optional parameter (= only axis accelerations are
effective)
Access: LEVEL3
Reaction: RUN

MP_maxTransAccHi
Maximum radial acceleration on circles and curved paths, high
feed rate
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 1 000 000 [m/s2]
Default: 0 [m/s2], optional parameter (= only axis accelerations are
effective)
Access: LEVEL3
Reaction: RUN

1314 HEIDENHAIN Technical Manual TNC 640


Axis-specific limit
values
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
minFeed 400301
maxFeed 400302
rapidFeed 400303
manualFeed 400304
maxAcceleration 400305
maxAccSpeedCtrl 400311
maxDecSpeedCtrl 400306
CfgLaAxis
axTransJerk 401701
axPathJerk 401703
axPathJerkHi 401704
axMeasJerk 401705

The parameter objects CfgFeedLimits and CfgLaAxis are not required for:
 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
 In CfgFeedLimits and CfgLaAxis, define the axis-specific limit values for
feed rate, acceleration and jerk.
 In MP_minFeed, define the minimum nominal speed value for the motor.

Note

An evaluation would also occur with linear and rotary axes [key name
parameter set axis]. The default value (=0) should not be changed here so
as not to limit the minimum axis feed rate.

January 2015 6.17 The control loop 1315


MP_minFeed
Applies only to the main spindle: minimum spindle speed
(compare to iTNC 530: MP3240.1)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 36 000 000 [°/min] with max. 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

MP_maxFeed
Maximum axis feed rate (rapid traverse) or maximum spindle
speed
(compare to iTNC 530: MP1010, MP3515)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 006 to 36 000 000 [mm/min] or [°/min]
With max. 9 decimal places
Default: 16 000.2 [mm/min] or [°/min]
Access: LEVEL3
Reaction: RUN
MP_rapidFeed is used as the maximum axis feed rate in the
Manual Operation and El. Handwheel modes in conjunction with the rapid
traverse key. For rotary axes, the velocity is specified in [°/min]. The parameter
is not evaluated for spindles.

MP_rapidFeed
Rapid traverse in manual mode
(compare to iTNC 530: MP1010)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 006 to 36 000 000 [mm/min] or [°/min]
With max. 9 decimal places
Default: 4 999.98 [mm/min] or [°/min]
Access: LEVEL3
Reaction: RUN

In the El. Handwheel mode, the value entered in MP_manualFeed is


multiplied by the value entered in CfgHandwheel/feedFactor. For rotary
axes, the velocity is specified in [°/min]. The parameter is not evaluated for
spindles.
If the machine parameter MP_manualFeed is defined differently in different
parameter sets, the value from MP_manualFeed from the momentarily active
parameter set is always affective.

1316 HEIDENHAIN Technical Manual TNC 640


MP_manualFeed
Maximum manual feed rate
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 006 to 36 000 000 [mm/min] or [°/min]
With max. 9 decimal places
Default: 4 999.98 [mm/min] or [°/min]
Access: LEVEL3
Reaction: RUN

MP_maxAcceleration defines the axis-specific acceleration. Use this


parameter for all position-looped axes. The parameter is also effective for
spindles operated with position control, such as while tapping or with M19.
The value entered also applies to braking the axis. For rotary axes and spindles,
the acceleration is specified in the unit [1/min/s] or [°/s2].

MP_maxAcceleration
Max. permissible axis acceleration during position control
(compare to iTNC 530: MP1060, MP3411)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 001 to 1 000 [m/s2] or [1/min/s] or [°/s2]
Default: 3 [m/s2] or [1/min/s] or [°/s2]
Access: LEVEL3
Reaction: RUN

The two optional parameters MP_maxAccSpeedCtrl and


MP_maxDecSpeedCtrl are only relevant for spindles in speed control, See
"Spindle in speed feedback control" on page 1576.
There are two ways to configure the maximum jerk on the path:
 MP_maxPathJerk(Hi) (Page 1311) limits the jerk in the direction of
traverse.
 MP_axTransJerk limits the jerk for specific axes in the transverse path
direction (transition jerk).
Note

If you are migrating from the iTNC 530:


As opposed to the iTNC 530 (MP1222 to MP1250), the TNC 640 does not
distinguish between corners, line-to-arc transitions and continuous
curvature changes. The MP_axTransJerk parameter is used for all the
criteria.
On the TNC 640, you use the separate MP_curveJerkFactor parameter
(Page 1323) to set the jerk at corners and line-to-arc transitions.

If the emphasis of commissioning is primarily on speed (with a sufficiently


smooth surface), you can set the transition jerk to a value that is 2 to 3 times
higher than the path jerk. Only if a smooth surface takes highest priority should
you use the same setting for both the path jerk and the transition jerk.

January 2015 6.17 The control loop 1317


MP_axTransJerk
Maximum axis jerk
(compare to iTNC 530: MP1230 to MP1233 and MP1240 to
MP1243)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 000 [m/s3] with up to 9 decimal places
Default: 0.1 [m/s3]
Access: LEVEL3
Reaction: RUN
Two axis-specific jerk parameters are available for very high requirements on
the surface quality. Use the parameters MP_axPathJerk and
MP_axPathJerkHi (rapid traverse) to limit the axis-specific jerk on path
contours.
Regardless of the values of these two parameters, the values defined in
MP_maxPathJerk and MP_maxPathJerkHi (Page 1311) are always the
maximum limits for the jerk in traverse direction. You should therefore set
MP_maxPathJerk and MP_maxPathJerkHi to a value that is at least 1.75
times greater than the greatest value in MP_axPathJerk and
MP_axPathJerkHi to ensure maximum flexibility for jerk calculation, while
taking all traverse components of the axes into account. This ensures that only
the axis-specific jerk values go into effect.
MP_axPathJerk and MP_axPathJerkHi have a large influence on the running
smoothness, surface quality and machining time.
The TNC 640 ensures that the nominal values do not exceed the permissible
axis jerk.
Adjusting MP_axPathJerk and MP_axPathJerkHi:
 A suitable NC program should be used for the adjustment. The TNCopt
software from HEIDENHAIN features the "FF_100_[axis].h" NC programs for
feedforward adjustment. Record the following error s-diff and the jerk j-
nom caused by a change in the feed rate ("ramp"), e.g. from 100 to 1000 mm/
min.

Note

Recording the jerk is especially useful, because it allows you to check


whether there is actually a change in the jerk of the axis after
MP_axPathJerk has been changed. If the change in feed rate is too great,
it may happen that the maximum acceleration rather than the jerk limits the
ramp.

 Modify the setting in MP_axPathJerk until the resulting following error is


just acceptable enough.
 The value set in MP_axPathJerkHi is typically five times higher than that in
MP_axPathJerk.

Note

The following error s-diff should only be a maximum of several µm for


clean surfaces with accelerating and braking. If speed is required, the
parameter can be increased until the machine gets loud, or the following
error s-diff too large.

1318 HEIDENHAIN Technical Manual TNC 640


Note

In the above procedure, which uses feed rate changes instead of only
positioning movements, disturbances from sliding friction and stiction
transitions are avoided.

 The following formula can be used to calculate a proposed value for


MP_axPathJerk. The formula is conceived for the calculated jerk to be large
enough that the acceleration of the axis is not impaired.
MP_maxAcceleration2 · 60000
MP_axPathJerk ≥
MP_rapidFeed

Note

HEIDENHAIN recommends entering the permissible jerk for each axis in


MP_axPathJerk and MP_axPathJerkHi. This way the jerk is based on the
weakest axis participating in a motion.

Note

Please also note the guideline on setting the nominal position value filters
and the look-ahead starting at Page 1747.

Note

If you are migrating from the iTNC 530:


MP_axPathJerk(Hi) = MP1085, MP1086 with the iTNC 530.

MP_axPathJerk
Axis-specific maximum jerk on path contours
Available from NCK software version: 597110-04.
Format: Number
Input: 0 to 1 000 000 [m/s3] with up to 9 decimal places
Default: 5 [m/s3], optional parameter
Access: LEVEL3
Reaction: RUN

MP_axPathJerkHi
Axis-specific maximum jerk during rapid traverse
Format: Number
Input: 0 to 1 000 000 [m/s3] with up to 9 decimal places
Default: 5 [m/s3], optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1319


The axis-specific path jerk during measurement can be defined in
MP_axMeasJerk. The value is optional. Also see page 1292 and 2296.

MP_axMeasJerk
Axis-specific maximum jerk during measurement
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 1 000 000 [m/s3] with up to 9 decimal places
Default: 5 [m/s3], optional parameter
Access: LEVEL3
Reaction: RUN

Reduction of the
contouring feed
rate at the Settings in the configuration editor MP number
beginning of a
contour element Channels
ChannelSettings
[Key name of the machining channel]
CfgLaPath
reduceCornerFeed 201516

The new, optional parameter MP_reduceCornerFeed was introduced with


NCK software version 597110-05 (MLST 5). With this parameter you can
activate or deactivate a reduction of the contouring feed rate at the beginning
of any contour element.
The setting MP_reduceCornerFeed = TRUE reduces the contouring feed rate
at the beginning of a contour element. This may improve the accuracy, but also
results in a longer machining time.
If a short machining time is more important than high accuracy, you should set
MP_reduceCornerFeed to the value FALSE. This way the contouring feed rate
at contouring elements is not reduced and the machining time is shorter.

Note

If you are migrating from the iTNC 530:


MP_reduceCornerFeed = MP1205 on the iTNC 530, but with a different
default setting:
As opposed to the iTNC 530, the default value in the factory default setting
of the NC software is MP_reduceCornerFeed = TRUE.

1320 HEIDENHAIN Technical Manual TNC 640


MP_reduceCornerFeed
Reduction of the contouring feed rate at the beginning of a
contour element
Available from NCK software version: 597110-05.
Format: Selection menu
Options: TRUE
Reduction of contouring feed rate active
(slower but more accurate if required)
FALSE
Reduction of contouring feed rate not active
(fast, but can be a little less accurate)
Default: TRUE
Access: LEVEL3
Reaction: RUN

Tolerance for
corners and arcs
Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of the machining channel]
CfgLaPath
curveTolFactor 201509
curveJerkFactor 201510

A distinction is made between corners and arcs when estimating the filter
error. Therefore, the tolerance at corners (MP_pathTolerance effective) and
on arcs
(MP_curveTolFactor · MP_pathTolerance effective) can be set separately.
If, based on the contour geometry, a progression of straight lines is recognized
as an arc, the tolerance from MP_pathTolerance is multiplied by the value in
MP_curveTolFactor. This enables the velocity to be increased (with lower
contour accuracy) on curved contours, but not at corners.
If the value from MP_curveJerkFactor is not equal to 0, then the value in
MP_axTransJerk is multiplied with MP_curveJerkFactor. This enables a
smaller or larger feed rate reduction to be set with curvature changes. With
use of ADP, values smaller than 1 are not effective
(= 1).
Example:
MP_pathTolerance = 5 µm, MP_curveTolFactor = 2
In curved contours a tolerance twice as large, 10 µm in this case, is allowed.
MP_curveJerkFactor is a factor for the maximum jerk that may be applied to
the axis as a result of curvature changes (in the segment and at segment
transitions, not at corners).
The maximum jerk for curvature changes results from:
jmax = MP_curveJerkFactor · MP_axTransJerk
This gives you the possibility to define separate jerk settings for corners and
curvature changes.

January 2015 6.17 The control loop 1321


With MP_curveJerkFactor = 0 there is no further feed rate reduction with
curvature changes. (only set when ADP is not used)

Note

For MP_curveJerkFactor HEIDENHAIN recommends:


 With use of ADP (MP_setupADP = Premium):With ADP, excessively
high values in MP_curveJerkFactor can negatively influence the
effectiveness of ADP feed-rate smoothing. We recommend setting the
factor to a maximum value of 2.Increasing the value from 1 to 1.5 can
cause significant jerk with curvature changes and therefore also
increases in the acceleration. The effect on the following error and
surface quality of the workpiece must be checked in accordance with the
machine.
 Without use of ADP (MP_setupADP = Off):
It is recommended to set the parameter MP_curveJerkFactor to values
of between 5 and 10 as curvature changes with the previous motion
control without ADP usually cause negligible dynamic effects.

Note

For MP_curveTolFactor HEIDENHAIN recommends:


 With use of ADP (MP_setupADP = Premium):With ADP, excessively
high values in MP_curveTolFactor can negatively influence the
effectiveness of ADP feed-rate smoothing. We recommend setting the
factor to a maximum value of 2.

MP_curveTolFactor and MP_curveJerkFactor are evaluated for smoothing


the contour. For the function of the filters, See "Nominal position value filter"
on page 1295.

Note

If you are migrating from the iTNC 530:


MP_curveTolFactor is not available on the iTNC 530.
MP_curveJerkFactor = MP1240 to MP1243 on the iTNC 530.

1322 HEIDENHAIN Technical Manual TNC 640


MP_curveTolFactor
Factor for path tolerance in circles
Available from NCK software version: 597110-01.
Format: Number
Input: 0.5 to 100 with up to 9 decimal places
Default: 1
Access: LEVEL3
Reaction: RUN

MP_curveJerkFactor
Factor for feed rate reduction at curvature changes
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 with up to 9 decimal places
0: No further feed rate reduction
Default: 1
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1323


Tolerance for rotary
axes
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgLaAxis
axFilterErrWeight 401702

The parameter object CfgLaAxis is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)

The filter error for a rotary axis with a large radius can be multiplied by a factor.
Weighting the factor smoothes the feed-rate profile for the rotary axis.
By increasing the value for rotary axes, the tolerance is stricter for these axes
and tool center point deviations are reduced when M128 is not active.
Reducing the value is also useful if the filter error of an axis has only a minor
influence on the workpiece.
Enter MP_axFilterErrWeight = 1 for linear axes.
MP_axFilterErrWeight is evaluated for smoothing the contour. For the
function of the filters, See "Nominal position value filter" on page 1295.

Note

If you are migrating from the iTNC 530:


MP_axFilterErrWeight is not available on the iTNC 530.

MP_axFilterErrWeight
Factor for filter error (for rotary axes)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.01 to 100 [factor] with max. 9 decimal places
For linear axes: 1
Default: 1
Access: LEVEL3
Reaction: RUN

Note

When TCPM is active, the angle tolerance MP_angleTolerance[Hi]


additionally applies to rotary axes, See "Machine parameters for path-
specific limit values" on page 1308.

1324 HEIDENHAIN Technical Manual TNC 640


6.17.7 Advanced Dynamic Prediction (ADP)

Settings in the configuration editor MP number


System
CfgHardware
setupADP 100108

In the look-ahead, the ADP (Advanced Dynamic Prediction) function is


available for advance calculation of the permissible maximum feed rate profile
that can be activated via MP_setupADP instead of the previous motion control
used as standard.
Because with ADP the same dynamic characteristics from the previous
motion control are valid, no modification to the configuration must normally be
made. The processing time required by ADP can be adapted to the available
processing capacity of the main computer (e.g. machines with multiple axes
in combination with FS and DCM) by selecting an appropriate performance
level in MP_setupADP.
If you activate ADP (it is deactivated in the default setting) you should always
use the highest performance level ("premium") because restrictions can
negatively affect the quality of the feed-rate calculation.

Note

For optimum machining results, HEIDENHAIN recommends to use the


highest performance level and to set MP_setupADP = Premium.

These are the most important benefits of ADP:


 Symmetrical feed-rate behavior on forward and backward paths (important
during bidirectional finish-milling)
 Especially uniform feed rate movements with adjacent milling paths
 Improved reaction to negative effects (e.g. short, step-like stages, coarse
chord tolerances, heavily rounded block end-point coordinates) in NC
programs generated by CAM system
 Exact compliance of the dynamic characteristics even in difficult conditions
in the segmentation of the NC program
 Additional optimization in the treatment of 5-axis programs under
consideration of the dynamic influence of tool center point management on
linear axes

January 2015 6.17 The control loop 1325


The transition to ADP does not entail any configuration changes. However, the
following improvements can be made for fine adjustment. Please note,
however, that optimization recommendations of general validity cannot be
given. The usefulness of a parameter optimization must rather be checked on
an individual basis for the respective machine when changing to ADP.
 Axis-jerk values
Since ADP can predict the axis-jerk values more precisely than the previous
motion control, even with complex movements, the axis-jerk values can be
raised slightly under CfgLaAxis/axTransJerk, if required.
 curveJerkFactor
The factor CfgLaPath/curveJerkFactor should not be set higher than 5
because higher values can impair the effectiveness of the feed-rate
smoothing of ADP.
 curveTolFactor
The factor CfgLaPath/curveTolFactor should not be set higher than 5
because higher values can impair the effectiveness of the feed-rate
smoothing of ADP.
 reduceCornerFeed
If CfgLaPath/reduceCornerFeed=TRUE, ADP can move through corners
and arcs at a slightly lower speed but with full utilization of the tolerance.
 Filter settings
The effect of the feed-rate smoothing is generally better with soft filters
(triangle with low frequency) than with hard filters (HSC with high
frequency). With roughing for example, with the use of soft filters combined
with large tolerances production can be further increased even with difficult
NC programs with imprecise, noisy blocks.
Both for 3-axis and for 5-axis machining it is advisable (also with ADP) to use
only the settings in CfgFilter for the interpolating linear and rotary axes and
to do without individual settings in CfgPositionFilter.
Only then can ADP predict the dynamics of the movement with high
accuracy.

MP_setupADP
Specify the performance level for ADP
Available from NCK software version: 597110-06.
Format: Selection menu
Options: Off
Previous motion control active
Standard
Low computing power, standard feed rate quality
Advanced
Medium computing power, high feed rate quality
Premium (recommended by HEIDENAIN)
High computing power, very high feed rate quality
Default: Off, optional parameter
Access: LEVEL3
Reaction: RUN

1326 HEIDENHAIN Technical Manual TNC 640


6.17.8 Interpolator

Settings in the configuration editor MP number


System
CfgCycleTimes
ipoCycle 100301

The interpolator operates at the clock rate defined in MP_ipoCycle. The axis-
specific nominal position values are calculated at this clock rate from the feed
rate profiles transferred by look-ahead.

MP_ipoCycle
Cycle time of position controller (interpolation clock pulse)
Format: Selection menu
Options: 3 ms
At this time only a position controller cycle time of 3 ms is
supported. Therefore no other values can be selected.
Default: 3 ms
Access: LEVEL3
Reaction: RESET
Schematic of the Interpolator:

Geo PLC
Manual Mode
MP_tolerance Handwheel
MP_maxLength

Look-Ahead
IPO
MP_plcLaCount
MP_posFilterOrder MP_ipoCycle Compensation s X-Axis SNoml
MP_pathTolerance Limits
MP_maxAcceleration ... f
MP_maxDeceleration MP_limitFrequency
MP_maxPathJerk MP_axJerk
MP_maxPathYank MP_axFilterErrorWeight
v MP_manualFilterOrder

t
maxAcceleration

a Compensation s Y-Axis SNoml


Limits
t ... f

MP_limitFrequency
MP_axJerk
j MP_axFilterErrorWeight
MP_manualFilterOrder
maxPathJerk

y
maxPathYank

January 2015 6.17 The control loop 1327


6.17.9 Position controller

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
kvFactor 400801
feedForwardFactor 400806
ctrlOutputLimit 400807
servoLagGainFactor 400811
servoLagKinkSpeed 400812

The parameter object CfgPosControl is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode= Display)
The position controller uses the axis-specific nominal position values
transferred by the interpolator. The nominal speed values are determined and
transferred to the speed controller.

Feedback control The TNC 640 operates with following error (servo lag) or with velocity
feedforward. It is defined in MP_feedForwardFactor.
 If MP_feedForwardFactor = 0, operation with 100 % following error is in
effect.
 MP_feedForwardFactor = >0 activates velocity semifeedforward control
(for analog axes).
 If MP_feedForwardFactor = 1, machining will be carried out using 100 %
velocity feedforward control (for digital axes).
With analog control, the shaft speed nominal value is calculated with the
following formula:

9V ⋅ 60
V nom
U = (P ⋅ kvFactor + -------------------- ⋅ feedForwardFactor + 1000 ⋅ A ⋅ accForwardFactor ) ⋅ -----------------------------------------------------
out err 60 nom maxFeedAt9V

Simplified:
Uout = MP_kvFactor · Perr + Vnom · MP_feedForwardFactor

Value, parameter Unit Description


Uout Volt Output voltage
(analog nominal speed value)
Perr mm Following error (servo lag)
kvFactor 1/s Kv factor
(proportional component of position
controller)
Vnom mm/min Nominal velocity
feedForwardFactor Factor for velocity feedforward control
Anom m/s2 Nominal acceleration

1328 HEIDENHAIN Technical Manual TNC 640


Value, parameter Unit Description
accForwardFactor (s) Factor for acceleration feedforward
control
maxFeedAt9V mm/min Assumed velocity of the axis at 9 V

MP_feedForwardFactor
Factor for velocity feedforward control
(compare to iTNC 530: MP1391, MP1392, MP1396)
Available from NCK software version: 597110-01.
Format: Number
Input: 0: Feedback control with following error
>0,<1: Feedback control with velocity semifeedforward
1: Feedback control with velocity feedforward
Default: 1
Access: LEVEL3
Reaction: RUN

Note

For axes that are interpolated with each other, the kv factor and the factor
for velocity feedforward control must be equal. In this case the smaller kv
factor determines the input value for all axes.

January 2015 6.17 The control loop 1329


Feedback control Following error (also known as servo lag) is a gap that remains between the
with following error nominal position commanded by the NC and the actual position of the axis.
(servo lag)
Simplified representation:

The nominal position value snoml for a given axis is compared with the actual
position value sactl and the resulting difference is the following error sa:
sa = snoml – sactl
sa = following error
snoml = nominal position value
sactl = actual position value
The following error is multiplied by the kv factor and passed on as nominal
velocity value:
v = kv · s a
vnoml = nominal velocity value
The control loop gain, known as the kv factor, defines the amplification of the
position control loop. You must find the optimum kv factor by trial and error.
If you choose a kv factor that is too large, the following error will become very
small. However, this can lead to oscillations.
If you choose too small a kv factor, the axis will move to a new position too
slowly.
For axes that are interpolated with each other, the kv factors must be equal to
prevent contour deviations.
 Define the kv factor in MP_kvFactor.
 In MP_servoLagGainFactor a multiplication factor can optionally be input
for the
kv factor.

1330 HEIDENHAIN Technical Manual TNC 640


Interrelation of kv The following formula shows the interrelation of kv factor, feed rate, and
factor, feed rate, following error:
and following error
ve ve
k v = ------ or s a = ------
sa kv

kv = kv factor [(mm/s)/mm]
ve = rapid traverse [mm/s]
sa = following error [mm]

Note

The unit for the kv factor of the TNC 640 differs from the one used for the
other TNC contouring controls, such as the iTNC 530.
Unit for the kv factor of the TNC 640:mm / (mm · s)
Unit for the kv factor of the iTNC 530: m / (mm · min)
Therefore:
iTNC 530 kv factor · 1000 / 60 = TNC 640 kv factor

MP_kvFactor
kv factor (proportional component of the position controller)
(compare to iTNC 530: MP1510, MP1810, MP3440)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1000 [1/s] with up to 9 decimal places
Default: 0 [1/s]
Access: LEVEL3
Reaction: RUN

MP_servoLagGainFactor
Multiplier for the kv factor
(compare to iTNC 530: MP1820)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 100 [%] with up to 9 decimal places
Default: 50 [%], optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1331


Controller output The controller output limit MP_ctrlOutputLimit is used only during switch-on
limit of position control without actual-to-nominal value transfer. Example:
Clamped or hanging axes cause a following error when the position control
loop is open. When closing the control loop without actual-to-nominal value
transfer, this difference in the position is corrected by the TNC 640. The
deviation is corrected at the maximum feed rate entered in
MP_ctrlOutputLimit.
With NN_AxCorrectingLagError, check whether the following error is
eliminated.

Note

The axis parameters entered for jerk and acceleration have no effect. Enter
only values that are non-critical to the axis.
HEIDENHAIN recommends:
In MP_ctrlOutputLimit enter a value that is approximately
0.1 · MP_manualFeed.

If MP_ctrlOutputLimit = 0, the resulting following error is not corrected until


the next positioning block.

MP_ctrlOutputLimit
Controller output limit for the position controller
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 666 [mm/min] or [°/min] with max. 9 decimal places
Default: 0 [mm/min] or [°/min]
Access: LEVEL3
Reaction: RUN

PLC operand / Description Type

NN_AxCorrectingLagError M
Following error is corrected
0: Following error is not eliminated
1: Following error is eliminated

Feedback control For feedback control with velocity feedforward, the nominal velocity value
with velocity consists of an open-loop and a closed-loop component.
feedforward
The machine-adjusted nominal velocity value is the open-loop controlled
component. The closed-loop velocity component is calculated through the
following error. The following error is small.

1332 HEIDENHAIN Technical Manual TNC 640


In most cases, machines are controlled with velocity feedforward, since it
makes it possible to machine exact contours even at high speeds.

You can influence feedback control with velocity feedforward with the kv
factor:
 Enter a kv factor in MP_kvFactor.

U [V]

t [ms]

Attention

If the kv factor that you select is too large, the system will oscillate around
the forward-fed nominal velocity value.

Unlike operation with following error, you must enter the optimum kv factor
for each axis when operating with interpolating axes (See "Interrelation of kv
factor, feed rate, and following error" on page 1331).

January 2015 6.17 The control loop 1333


Rapid traverse and If more than one axis is moved simultaneously, the rapid traverse on the path
feed rate limitation vpath is formed from the appropriate axis components (See "Axis-specific limit
values" on page 1315).

vpath
vaxis 2

vaxis 1

 In MP_maxFeed, define the maximum rapid traverse for this axis.


Feed rate and rapid traverse are significantly lower for Manual Operation:
 Define the feed rate for manual mode in MP_manualFeed.
 Define the feed rate for rapid traverse in MP_rapidFeed.
If the value in PP_ChnContourFeedMax is greater than the value in
MP_maxFeed, the parameter value applies. After the TNC 640 is switched on,
or after an interruption of the PLC program, PP_ChnContourFeedMax is
assigned the value 300 000 so that the value in MP_maxFeed automatically
becomes effective.

Note

The absolute maximum velocity of this axis is defined in MP_maxFeed.


This value is not exceeded.

The maximum possible feed rate depends on the encoder being used.
vmax [mm/min] = P [mm] · fi [kHz] · 60
vmax = Maximum traversing speed
P = Signal period of the encoder
fi = Input frequency of the encoder input, See "Encoder connections" on page
397.
Digital axes:
For digital axes, the maximum feed rate also depends on the number of pole
pairs in the drive motor and the pitch of the ball screw.

24 000
vmax [mm/min] = [1/min] · ball screw pitch [mm]
No. of pole pairs

Analog axes:
The rapid traverse rate at an analog voltage of 9 V is defined in
MP_maxFeedAt9V.

1334 HEIDENHAIN Technical Manual TNC 640


Feed rate values in The feed rate values are stored in PLC operands (see the following tables).
PLC operands
The PLC can influence the following values:
 PP_ChnContourFeedMax: Maximum feed rate
 PP_AxManualFeedMax:
PP_AxFeedMax (from version 597110-06):
Maximum axis feed rate in all operating modes
Only effective for specific axes if the optional machine parameter
MP_axisFeedDisplay (CfgDisplayData) is set to the value at axis key. If
the parameter is not set, the feed-rate value is effective globally for all axes.

The following PLC operands contain channel-specific feed rate values.

PLC operand / Description Type

NN_ChnProgFeedMinute D
Programmed feed rate per minute [mm/min]
NN_ChnProgFeedRevolution D
Programmed feed rate per revolution [mm/rev]
NN_ChnProgFeedThread D
Programmed feed rate per thread [mm/rev]
NN_ChnFeedMinuteActive M
Feed rate per minute active
0: Feed rate per minute is not active.
1: Per-minute feed rate is active
NN_ChnFeedRevolutionActive M
Feed per revolution is active
0: Per-revolution feed rate is not active
1: Per-revolution feed rate is active
NN_ChnFeedThreadActive M
Feed rate per thread active
0: Thread feed rate is not active
1: Thread feed rate is active
NN_ChnFeedRapidTraverseActive M
Rapid traverse active (FMAX)
0: Rapid traverse is not active
1: Rapid traverse active
NN_ChnContourFeed D
Current contouring feed rate [mm/min]
In the manual operating modes, the highest axis feed of
all axes is stored in this operand
PP_ChnContourFeedMax D
Max. feed rate from the PLC [mm/min]

January 2015 6.17 The control loop 1335


The following PLC operands contain axis-specific feed rate values.

PLC operand / Description Type

PP_AxManualFeedMax D
Maximum axis feed rate in all operating modes [mm/
rev]
(Only effective for specific axes if the machine
parameter MP_axisFeedDisplay (CfgDisplayData) is
set to the value at axis key.) If the parameter is not
set, the feed-rate value is effective globally for all axes.
PP_AxFeedMax D
PP_AxManualFeedMax from version 597110-06
renamed to PP_AxFeedMax.For function see
PP_AxManualFeedMax (above).
The previous designation will be continued to be
supported for reasons of compatibility.
PP_AxTraversePos M
Manual traverse in positive direction
0: Do not move axis
1: Move axis
PP_AxTraverseNeg M
Manual traverse in negative direction
0: Do not move axis
1: Move axis

Position loop The encoder signals are interpolated 1024-fold.


resolution for
digital axes Signal period [µm]
Position loop resolution [µm] =
1024

1336 HEIDENHAIN Technical Manual TNC 640


6.17.10 Activating and deactivating position control loops

Opening the The following figure shows the procedure for switching on the drive motor and
position control activating the position control loop as well as the procedure for opening the
loop position control loop and deactivating the drive.

PLC operand / Description Type

NN_AxDriveReady M
Axis drive is ready
0: Drive not ready for operation
1: Drive ready for operation
PP_AxDriveOnRequest M
Switch axis drive on
0: Do not activate the drive
1: Activate the drive
NN_AxDriveOn M
Axis drive is switched on (and is at least speed-
controlled)
0: Drive is off
1: Drive is on
PP_AxPosControlRequest M
Position-control the axis
0: No position feedback control for axis
1: Position feedback control for axis
NN_AxPosControl M
Axis in position feedback control
0: Axis not in position feedback control
1: Axis in position feedback control

January 2015 6.17 The control loop 1337


Clamping the axes After running an NC block you can clamp the axes.
The TNC 640 considers an axis to be clamped as soon as position control is
switched off, i.e. as soon as NN_AxPosControl decreases towards 0.
The PLC uses the signal NN_AxInPosition to determine whether an axis
movement is pending.
The following figure shows the procedure for clamping the axes as well as for
unclamping them.

If NN_AxInPosition is set, no further movement of the respective axis is


pending. The PLC must initiate a clamping operation if
PP_AxClampModeRequest is set.
As illustrated in the figure, first the axis is clamped, then position control is
switched off, and finally the drive is switched off. The TNC 640 resumes NC
program run as soon as position control is switched off.
If NN_AxInPosition decreases, the axis should be moved. The PLC initiates
the unclamping operation for the respective axis. As illustrated in the figure,
first the drive is switched on, then the clamping is released, and then position
control is activated. The TNC 640 resumes NC program run as soon as position
control is switched on.

1338 HEIDENHAIN Technical Manual TNC 640


For clamped axes, the PLC program must set the PP_AxClampModeRequest
signal at the latest just before unclamping, so that the TNC 640 can distinguish
the clamped axis from the normal axes and, at the end of the movement, waits
for the axis to be clamped again.

Note

When switching an axis between clamped and unclamped mode, the


following constraints apply:
The PLC program must ensure that PP_AxClampModeRequest and
PP_AxDriveOnRequest are not switched during a movement. By
removing PP_AxFeedEnable of all NC axes, the PLC program can prevent
motions, for example. Otherwise, the error message Axes switched while
in motion can occur.

Clamping mode If a handwheel is active for an axis in clamping mode, the axis may remain
with active switched on even if no further programmed movement of this axis is pending,
handwheel i.e. NN_AxInPosition is set.
For axes in clamping mode, the handwheel should not be activated during a
movement.

PLC operand / Description Type

PP_AxClampModeRequest M
Axis in clamping mode. Indicates that the TNC 640
must wait at the end of the axis motion until the axis is
clamped.
0: No clamping mode
Axis is to remain continuously in a closed loop
1: Clamping mode
Axis is to be clamped as soon as it is no longer
moved (NN_AxInPosition=1)
Axis is to be unclamped when it is to be moved
(NN_AxInPosition=0)
NN_AxInPosition M
Axis in position
0: Axis not in position
1: Axis in position

January 2015 6.17 The control loop 1339


Actual-to-nominal During actual-to-nominal value transfer, the current position is saved as the
value transfer nominal position value. This becomes necessary, for example, if the axis has
been moved when the position control loop is open.
There are two ways to turn the actual position into the nominal position:
 To transfer the actual position value in the Manual and Electronic Handwheel
modes, define the request in PP_AxValueActToNominal.
 To transfer the actual position in all operating modes, use Module 9145.

PLC operand / Description Type

PP_AxValueActToNominal M
Actual-to-nominal value transfer
0: No actual-to-nominal value transfer. Correct the
following error when closing the position control loop
1: Perform actual-to-nominal value transfer

Module 9145 Actual-to-nominal value transfer


Module 9145 is used for an actual-to-nominal value transfer for the axes
entered.
Constraints:
 The module functions only in the cyclic PLC program.
 An actual-to-nominal value transfer is possible only if the TNC 640 is not
active (NN_ChnControlInOperation=0) or if an M/S/T/T2/G strobe is pending.
Actual-to-nominal value transfer can always be performed for axes that are
not in an interpolation context.
Call:
PS B/W/D/K <Axes bit-encoded>
(Bit 0 represents logic axis 0, etc.)
CM 9145
Error code:

Marker Value Meaning


NN_GenApiModule 0 Actual-to-nominal value transfer performed
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid axis number
ErrorCode 21 Missing M/S/T/T2/G strobe in
NN_ChnControlInOperation=1
24 Module was called in a spawn or submit job

1340 HEIDENHAIN Technical Manual TNC 640


6.17.11 Feed-rate enable
"Feed rate enable" must be set via the PLC to traverse the axes. Until "feed-
rate enable" is set, the nominal velocity value zero is output. The status display
shows that the feed rate enable is set / not set.
You can set the feed rate enable for all axes of the NC channel or for specific
axes. The PLC run-time system links PP_ChnFeedEnable and the
corresponding axis-dependent feed-rate enable PP_AxFeedEnable by a
logical OR operation.
Feed-rate enable for all axes of an NC channel:
 Set PP_ChnFeedEnable
Axis-specific feed-rate enable:
 Reset PP_ChnFeedEnable
 Set PP_AxFeedEnable
Feed-rate enable for axes that are not assigned to any NC channel, e.g. PLC
axes:
 Set PP_AxFeedEnable

PLC operand / Description Type

PP_ChnFeedEnable M
Feed-rate enable for all axes of the NC channel:
0: No feed-rate enable
1: Feed-rate enable
PP_AxFeedEnable M
Axis-specific feed-rate enable
0: No feed-rate enable
1: Feed-rate enable

The PLC sets PP_ChnWorkFeedEnable if the machining feed rate is enabled.


This marker is set, for example during a tool change or turret actuation, in order
to use the time for rapid-traverse movements. During the first PLC scan after
the compilation of the PLC program, PP_ChnWorkFeedEnable is set to the
value 1. This ensures that contouring feed rates are also permitted if the PLC
program does not activate the marker.

PLC operand / Description Type

PP_ChnWorkFeedEnable M
Enables the contouring feed rate
0: Contouring feed rate not enabled, only G0
movements permitted (rapid traverse enable)
1: Contouring feed rate enabled

January 2015 6.17 The control loop 1341


6.17.12 Speed controller

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
vCtrlPropGain 400901
vCtrlIntGain 400902
vCtrlDiffGain 400904

The parameter object CfgSpeedControl is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
 Analog axes (MP_axisHw=Analog)

The actual speed values are measured directly at the motors with
HEIDENHAIN rotary encoders. The position controller provides the nominal
speed value. The speed controller is driven by the difference between nominal
and actual speed values. It provides the nominal current value as output.
Use Module 9164 to read the actual speed value of the motors.

1342 HEIDENHAIN Technical Manual TNC 640


Adjust the step response of the speed controller:
 With the position controller switched off (PP_AxPosControlRequest),
enter with MP_VCtrlPropGain a proportional factor and with
MP_VCtrlIntGain an integral factor for the speed controller. Adjust the step
response so that only one overshoot is visible and the settling time toff is as
small as possible.
Realistic values for the settling time: 3 ms to 15 ms.

MP_vCtrlPropGain
Proportional factor of the speed controller
(compare to iTNC 530:MP2500.x, MP2501.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 000 [As/rev.] with up to 9 decimal places
Default: 0 [As/rev.]
Access: LEVEL3
Reaction: RUN

MP_vCtrlIntGain
Integral factor of the speed controller
(compare to iTNC 530: MP2510.x, MP2511.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 000 000 [A/rev.] with up to 9 decimal places
Default: 0 [A/rev.]
Access: LEVEL3
Reaction: RUN
Module 9164 Read the actual speed value of the drive motor
The module provides the actual speed value of a motor controlled by an
integral current controller in 1/1000 revolutions per minute.
The resolution of the actual speed value depends on the encoder being used:

1
Resolution = • 100 000 [min-1]
Line count • 1024

January 2015 6.17 The control loop 1343


Constraints:
 The value 0 is read for axes that are not connected.
 With motors with volts-per-hertz control mode the module returns the
nominal speed value (vn nominal) due to the missing nominal value encoder.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
CM 9164
PL B/W/D <Actual speed value in the format 0.001 [min–1]>
Error code:

Marker Value Meaning


NN_GenApiModule 0 Actual speed value was read
Error (M4203) 1 Control has no integrated current controller

The step response illustrated above is idealized. In practice, interfering


oscillations are superimposed on the step response.
You can reduce these oscillations with the differential factor, the PT2-
element, the band-rejection filter or the low-pass filter of the speed controller.

1344 HEIDENHAIN Technical Manual TNC 640


Differential factor The differential factor reduces low-frequency oscillations. However, it
increases the tendency to oscillate in the high frequency range.
 In MP_vCtrlDiffGain, enter a differential factor.

Note

Ensure that the system is stable enough!


The differential factor is not recommended on machines with motors that
have belt couplings. The influence of aging and temperature is too great.

Estimating the differential factor:

T ⋅ MP_vCtrlPropGain
MP_vCtrlDiffGain ≈ --------------------------------------------------------------------
8

MP_vCtrlDiffGain: Differential factor of the speed controller [As2]


MP_vCtrlPropGain: Proportional factor of the speed controller
T: Period duration of the lowest disturbance frequency [s]

MP_vCtrlDiffGain
Differential component of the speed controller
(compare to iTNC 530: MP2520.x, MP2521.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 [As2/rev.] with up to 9 decimal places
Default: 0 [As2/rev.]
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1345


6.17.13 Filters in the speed controller and position controller when using the CC 61xx

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
vCtrlFiltLowPassT 400905
vCtrlEncInputFilt 400906
vCtrlFiltDamping1 400910
vCtrlFiltDamping2 400914
vCtrlFiltDamping3 400918
vCtrlFiltDamping4 400922
vCtrlFiltDamping5 400926
vCtrlFiltDamping6 400937
vCtrlFiltFreq1 400908
vCtrlFiltFreq2 400912
vCtrlFiltFreq3 400916
vCtrlFiltFreq4 400920
vCtrlFiltFreq5 400924
vCtrlFiltFreq6 400935
vCtrlFiltType1 400907
vCtrlFiltType2 400911
vCtrlFiltType3 400915
vCtrlFiltType4 400919
vCtrlFiltType5 400923
vCtrlFiltType6 400934
vCtrlFiltBandWidth1 400909
vCtrlFiltBandWidth2 400913
vCtrlFiltBandWidth3 400917
vCtrlFiltBandWidth4 400921
vCtrlFiltBandWidth5 400925
vCtrlFiltBandWidth6 400936

The parameter objects CfgSpeedControl and CfgControllerComp are not


required for:
 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

1346 HEIDENHAIN Technical Manual TNC 640


Multifunction filter With the CC 61xx, you can influence the manipulated variable of the speed
controller (= nominal current) and the position controller (= nominal speed) by
means of up to six freely definable filters per axis. These filters are
multifunctional filters, which means that the filter type of each individual filter
order can be selected as desired. They are also effective for the spindle(s).

Purpose of the  After adjustment of the current controller, the speed controller must be
filters / optimized:
recommendations To increase the P component of the speed control loop and thus to increase
the dynamic behavior of the machine, filter functions are available. They can
be used to dampen resonances or oscillations in the servo drive which
would otherwise limit the increase of the controller factors due to missing
stability reserves. In most cases, the use of a band-rejection filter is
advisable, but it can also make sense to use a PT2 or lead lag filter to
dampen multiple high-frequency oscillations at the same time. Please note,
however, that all filters with a dampening effect also have a negative effect
on the phase in a particular frequency range, which, in turn can increase the
oscillation tendency and has a limiting effect on the kv factor in the position
control loop. Thus, the amount of the P component does not correspond
directly to the quality of the feedback control, instead, you need to ensure
that the filters are set in a well-balanced manner.
 Afterwards, optimize the position controller:
When adjusting the position controller, increase the kv factor until the
oscillation limit is reached. Preferably dampen the oscillations using the IPC
(Integral Phase Compensation), see page 1363. Oscillations that occur
when you further increase the kv factor or that cannot be removed by the
IPC as desired, must be suppressed with further multifunction filters in the
position control loop. We recommend to use filters of the band-rejection
filter and phase lifting filter types.

Types of filters Four different types of filters per axis are available for selection:
 PT2 low-pass
• Use:
- Dampening of multiple oscillations in the upper frequency range by a
filter
• Typical settings:
- Cutoff frequency: from 1500 Hz
- Lehr's damping ratio: 0.7 to 1.0
• Disadvantage:
- strong phase drop: This can strengthen oscillations in the lower fre-
quency range
 Band-rejection filter
• Use:
- Damping of an oscillation, resonance, resonance step-up
• Typical settings:
- Center frequency: 50 to 2500 Hz
- Damping: 1 to 30 dB
- Bandwidth: Equal to center frequency
• Disadvantage:
- slight phase drop below the center frequency: This can strengthen
oscillations in the lower frequency range

January 2015 6.17 The control loop 1347


 Phase lifting filter
• Use:
- Oscillations in the lower to middle frequency range, which occur
because of an insufficient phase reserve
• Typical settings:
- Phase from 10° to 80°
- Center frequency: Frequencies from 3 to 500 Hz
- Bandwidth: Equal to center frequency or below
• Disadvantage:
- The control-loop gain above the center frequency is increased. The
increased use of band-rejection filters can become necessary, or the
controller factors might need to be reduced.
 First-order and second-order lead lag filters
• Use
- Dampening of multiple oscillations in the upper frequency range by a
filter
• Typical settings
- Cutoff frequency: from 1000 Hz
- Damping: 1 to 30 dB
- Lehr's damping ratio: 0.7 to 1.0 (only for second-order filters)
• Disadvantage
- Phase drop: This can strengthen oscillations in the lower frequency
range.

Note

 Each time after changing a filter, you need to verify if the control loops
are sufficiently stable or there is enough stability reserve.
 Since the ambient conditions can be so different, the use of the filters
must be checked separately in every case. The TNCopt PC software from
HEIDENHAIN should always be used, so that the sequence of the
adjustment matches the ideal case.

1348 HEIDENHAIN Technical Manual TNC 640


Possible settings Filter types for use in the speed controller (MP_vCtrlFiltType = x0x):
for the
multifunction filters

Name vCtrlFiltType vCtrlFilt vCtrlFreq1..6 vCtrlBandWith


1..6 Damping1..6 1..6

PT2 1 --- Cutoff frequency [Hz] ---

Band-rejection filter 2 Damping [dB] Center frequency [Hz] Bandwidth [Hz]

Phase lifting filter 3 Phase lifting [°] Center frequency [Hz] Bandwidth [Hz]

First-order lead lag 4 Damping [dB] Cutoff frequency [Hz] ---


filter

PT2 101 --- Cutoff frequency [Hz] Lehr's damping


ratio

Band-rejection filter 102 Damping [dB] Center frequency [Hz] Bandwidth [Hz]

Phase lifting filter 103 Phase lifting [°] Center frequency [Hz] Bandwidth [Hz]

Second-order lead 104 Damping [dB] Cutoff frequency [Hz] Lehr's damping
lag filter ratio

Filter types for use in the position controller (MP_vCtrlFiltType = x1x):

Name vCtrlFiltType vCtrlFilt vCtrlFreq1..6 vCtrlBandWith


1..6 Damping1..6 1..6

PT2 11 --- Cutoff frequency [Hz] ---

Band-rejection filter 12 Damping [dB] Center frequency [Hz] Bandwidth [Hz]

Phase lifting filter 13 Phase lifting [°] Center frequency [Hz] Bandwidth [Hz]

First-order lead lag 14 Damping [dB] Cutoff frequency [Hz] ---


filter

PT2 111 --- Cutoff frequency [Hz] Lehr's damping


ratio

Band-rejection filter 112 Damping [dB] Center frequency [Hz] Bandwidth [Hz]

Phase lifting filter 113 Phase lifting [°] Center frequency [Hz] Bandwidth [Hz]

Second-order lead 114 Damping [dB] Cutoff frequency [Hz] Lehr's damping
lag filter ratio

Note

HEIDENHAIN recommends to use the Bode diagram available in the PC


software TNCopt to get more information on the effect and behavior of the
individual filter types and verify them.

January 2015 6.17 The control loop 1349


The filters can be used in the position controller or speed controller as desired.
For example, the second filter can be used although the first filter is not active.

Machine MP_vCtrlFiltType1...6
parameters Filter type for filters 1 to 6
Format: Number
Input: 0: Filter deactivated
1: PT2 low-pass filter (speed controller)
2: Band-rejection filter (speed ctrl.)
3: Phase increase (speed controller)
4: First-order lead lag filter (speed controller)
101: PT2 low-pass filter (speed controller)
102: Band-rejection filter (speed controller)
103: 3: Phase increase (speed controller)
104: Second-order lead lag filter (speed controller)
11: PT2 low-pass filter (position controller)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: First-order lead lag filter (position controller)
111: PT2 low-pass filter (position controller)
112: Band-rejection filter (position controller)
113: Phase increase (position controller)
114: First-order lead lag filter (position controller)
Default: 0
Access: LEVEL3
Reaction: RUN

MP_vCtrlFiltFreq1...6
Center frequency of band-rejection filter for filters 1 to 6
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 10 000 [Hz] with up to 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

MP_vCtrlFiltBandWidth1...6
Bandwidth of band-rejection filter for filters 1 to 6
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 30 000 with max. 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

MP_vCtrlFiltDamping1..6
Damping of band-rejection filter for filters 1 to 6
Available from NCK software version: 597110-01.
Format: Number
Input: -90 to 90 with max. 9 decimal places
Default: 0 [dB]
Access: LEVEL3
Reaction: RUN

1350 HEIDENHAIN Technical Manual TNC 640


6.17.14 Filter order for separate low-pass filter in the speed controller on the CC 61xx and CC 424

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
vCtrlEncInputFilt 400906

Application If a low-pass filter is used with the CC 61xx or CC 424, the filter order of the
low-pass filter can be set in MP_vCtrlEncInputFilt. Enter
MP_vCtrlEncInputFilt=0 under standard conditions.
Spindle: High-frequency spindles often cause considerable current noise
(shown by I nom or Utilization on the oscilloscope). The optimization goal is
as little current noise as possible at high spindle speeds.
MP_vCtrlEncInputFilt = 10 to 20 should be used as a starting value.
Axes: The low-pass filter should be used if the actual speed has "a lot of noise,"
for example MP_vCtrlEncInputFilt = 1 or 2. If there is no improvement, set
MP_vCtrlEncInputFilt = 0.
For adjustment of the filters, See "Filters in the speed controller and position
controller when using the CC 61xx" on page 1346.

Machine MP_vCtrlEncInputFilt
parameters Filter order of the FIR filter (low-pass filter)
(compare to iTNC 530: MP2560.x, MP2561.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 19
0: No low-pass filter
1: 1st-order low-pass filter
...
19: 19th-order low-pass filter
Default: 0
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1351


6.17.15 Dynamic determination of load

General During traverse motions, each machine axis behaves differently depending on
information the various loads, such as the differing inertias of the workpieces.
In connection with the CC 61xx and or UEC 11x controller units, the TNC 640
offers you the possibility of optimizing the machine according to load classes.
Before the machining process, the optimum settings for a workpiece with a
certain load class can be entered.

Determining The effects of the inertia of the workpieces can be detected with a measuring
the load cycle created by the OEM. A measurement that determines the maximum
occurring torque (target value in % of the rated torque without decimal places)
between two points in time is started. At the same time, the machine is
optimized for this load class, and the machine parameters determined are
saved in a machine-parameter subfile.
The load class is determined for each workpiece before machining starts (via
manual entries or by determining the load with an NC macro), and the
corresponding, optimized machine-parameter subfile is selected.

Procedure The following procedure is recommended for determining and using a load
class.
By the OEM: Determining the load class and creating the machine-parameter
subfiles
 Optimizing the machine and saving the results without load
 Loading the machine with a mass appropriate for the load class to be
determined
 Starting the measurement, traversing the axis to be measured, and stopping
the measurement

Example of a corresponding NC program:


0 BEGIN PGM measure_a MM
1 L C+0 R0 FMAX
2 FN 17: SYSWRITE ID 621 NR0 IDX4 = +0
3 L IA+180 R0 FMAX
4 L IA-180 FMAX
5 FN 18: SYSREAD Q1 = ID621 NR0 IDX4
6 END PGM measure_a MM
 Optional: Saving the measured results in a variable:
FN 17 SYSWRITE ID 590 NR 2 IDX <axis> IDX = 1 to 30 (is not deleted during
program selection)
FN 17 SYSWRITE ID 590 NR 3 IDX <axis> IDX = 1..30 (protected during a
power failure)
 Optional: Reading the saved value
FN 18 SYSREAD ID 590 NR <2 or 3> IDX <axis> (IDX = 1 to 30)
 Optimizing the machine and saving the results in a machine-parameter
subfile for this load class
 Performing the measurements for each load class as described above

1352 HEIDENHAIN Technical Manual TNC 640


By the customer: Selecting the machining method optimized for the load
 Entering the load class (or mass) before machining, or determining the load
class with the NC macro from the OEM as described above.
 Activating the correct machine-parameter subfile depending on the
measured result
FN 17 SYSWRITE ID 1020 NR 3 = "Path/File" or <Q string number>
 Deactivate the machine-parameter subfile
FN 17 SYSWRITE ID 1020 NR 4
within an NC macro, which is run when a program is concluded with M02,
M30 or END PGM (keyword OEM_PROGEND under Paths/
CfgSystemCycle, See "PROGEND cycle" on page 2574). For the Manual
Operation mode, the path to the macro must also be saved with the key
names M02 and M30 in the MP_macro parameter in the CfgPlcMStrobe
configuration object of the configuration of the M functions.

Note

 Retention forces and friction forces are included in the measured value
 Deviations in the utilization due to oscillations or torque ripple are
included in the measured value
 The override of the feed-rate potentiometer is taken into account
 The determined value depends on the axis parameters. Use axis
parameters with stable behavior for the determination

January 2015 6.17 The control loop 1353


PLC module Module 9046 Copy controller data to the PLC memory
Module 9046 is used to copy controller data (data of the CC) to the PLC
memory via configured channels.
Constraints:
 The module must not be called in the cyclic PLC program part.
 The module should only run once for each channel. Once a channel has
been configured successfully, the programmed CC data is copied to the PLC
memory at the PLC clock rate.
 If a channel that has already been configured must be reconfigured (other
CC data or other axis), the channel must be reset first. Direct reconfiguration
leads to a module error.
Call:
PS B/W/D/K <Mode>
0: Configuration of cyclic data channels from the CC to the
PLC
PS B/W/D/K <Axis/spindle index>
n: Index of the axis or spindle from CfgAxes/axisList
PS B/W/D/K <Code for CC data>
Mode 0:
–1: Reset channel (default setting)
0: Mass moment of inertia of the table [kg*m2 * 1.0e–6]
1: Mass of the table [kg]
2: Total mass moment of inertia (table and motor)
[kg*m2 * 1.0e–6]
3: Total mass (table and motor) [kg]
4: Total power of supply module [W]
5: Axis power (mechanical) [W]
6: Torque-producing nominal current (with sign) [mA]
7: Total actual current [mA]
PS B/W/D/K <Data channel>
Mode 0:
0 to 15, up to 16 channels can be programmed
PS B/W/D/K <Target address in PLC memory>
Mode 0:
Double-word address to which the value of the
programmed data channel is copied
CM 9046
PL B/W/D <Error code>
0: No error. Data channel was (already) configured
1: Call was not in a submit/spawn job
2: NC/CC does not support the desired function
3: Invalid value in the <Mode> parameter
4: Invalid value in the parameter <Axis/Spindle index>
5: Invalid value in the <Code for CC data> parameter
6: Invalid value in the <Data channel> parameter
7: Invalid double-word address in the <Target address in
PLC memory> parameter
8: Programmed data channel is already being used
100: Programmed CC data is not available for programmed
axis

1354 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode and/or <Code for CC data>
2 Invalid value for parameter
<Axis/spindle index>
3 Invalid value for <Data channel> parameter
4 Memory range for the programmed double-
word address is too small or does not exist
5 Programmed address is not a double-word
address (not divisible by 4).
6 Programmed data channel is already being
used
20 Call not in a submit/spawn job
45 Internal error
51 Programmed CC data is not available for this
axis on the CC, or the PLC module is not
supported by this NC software
61 Internal error

January 2015 6.17 The control loop 1355


6.17.16 Peculiarities in weakened-field operation with CC 61xx and CC 424

Reduction of the
magnetization
current Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
iCtrlMotVRedFact 401005

Some of the asynchronous spindle motors require a high magnetizing current


at low speeds (n < nfield weakening). This magnetizing current can, however,
lead to thermal motor problems at the rpm for field weakening nFW when
there is no load.
The nominal voltage (and so also the nominal magnetization current) at the
rpm for field weakening nFW when there is no load can be reduced with
MP_iCtrlMotVRedFact. The entered reduction results in a nominal voltage
curve as shown in the figure below. The maximum nominal voltage is reached
when n = 3 · nfield weakening. The nominal voltage can be reduced by max. 60
% (MP_iCtrlMotVRedFact = 60).
If a load is placed on the drive, then the nominal voltage is increased again
automatically in order to improve the dynamics.

Unominal

MP_iCtrlMotVRedFact

n
nFW 3 · nFW

1356 HEIDENHAIN Technical Manual TNC 640


MP_iCtrlMotVRedFact
Factor for the reduction of the magnetization current during idle
running (only as of CC 61xx)
(compare to iTNC 530: MP2210.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 60 [%]
0: Function not active
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

Note

Please note that the reduction of the magnetization current can lead to a
limitation of the drive’s dynamics. However, this depends on the drive, and
must be judged separately in each case.

Setting the If thermal problems arise on an asynchronous spindle with no load during
reduction of the weakened-field operation, and these problems cannot be traced to an overload
magnetization or other mechanical problems, then please reduce the magnetization current
current as follows:
 Reduce the nominal voltage in steps of 10% in MP_iCtrlMotRedFact
 Reduce MP_iCtrlMotRedFact until a stable temperature within the motor
specifications is reached when there is no load.

January 2015 6.17 The control loop 1357


6.17.17 Active damping of low-frequency oscillations

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compActDampFact 401410
compActDampTime 401411

The active damping of low-frequency oscillations is suitable for damping


undesired oscillations of approx. 10 to 30 Hz. The damping factor is set in
MP_compActDampFact, and the damping time constant in
MP_compActDampTime. It can be calculated according to the following
formula:
k
MP_comActDampTime = -----------------
2⋅π⋅f

k: Factor from 0.8 to 1.0


f: Frequency to be damped (approx. 10 Hz < f < 30 Hz)

Note

The active damping should only be used if improvements actually occur,


since the damping could also lead to lower and higher frequencies being
fortified.

Activating the active damping:


 Ascertain the deepest resonant frequency (e.g. with the frequency diagram
in TNCopt when adjusting the IPC and kV factor).
 Set MP_compActDampFact = 1.5.
 Calculate the damping time constant according to the above formula with k
= 0.9, and enter this value in MP_compActDampTime.
 Record I (n int) or s diff with the integrated oscilloscope, and move the
axis with the axis-direction buttons.
 Vary the value of k up and down somewhat (between 0.8 and 1.0), calculate
MP_compActDampTime and compare the oscilloscope recordings in order
to find the correct value for MP_compActDampTime (the value with the
lowest amplitude).
 Vary MP_compActDampFact, and compare with the recordings in the
frequency diagram in TNCopt for the adjustment of the IPC and kV factor.
 Select the value for MP_compActDampFact by evaluating the advantages
and disadvantages of the active damping.

1358 HEIDENHAIN Technical Manual TNC 640


MP_compActDampFact
Damping factor for active damping
(compare to iTNC 530: MP2607.x)
Available from NCK software version: 597110-02.
Format: Number
Input: 0 to 30 [factor] with up to 9 decimal places
0: No damping
1.5: Typical damping factor
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_compActDampTime
Damping time constant for active damping
(compare to iTNC 530: MP2608.x)
Available from NCK software version: 597110-02.
Format: Number
Input: 0 to 0.999 999 999 [s]
0: No damping
0.005 to 0.02: Typical damping time constant
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1359


6.17.18 Acceleration feedforward control

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compAcc 401406

The parameter object CfgControllerComp is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
 Analog axes (MP_axisHw=Analog)

Acceleration feedforward functions only in velocity feedforward control in


parallel with the speed controller.
At every change in velocity, spikes of short duration appear in the following
error. With acceleration feedforward control you can minimize these spikes:
 First adjust the friction compensation (See "Compensation of sliding friction"
on page 1183).
 From the integral-action component of the nominal current value I (N INT)
calculate the input value for MP_compAcc.
 Adjust the acceleration feedforward control with MP_compAcc.

MP_compAcc = 0

1360 HEIDENHAIN Technical Manual TNC 640


MP_compAcc = optimum

For calculation of the acceleration feedforward, the integral-action component


of the nominal current value I (N INT) is recorded with the internal oscilloscope.
The actual speed value V (ACT RPM) and nominal current value I (NOM) are
also recorded for better illustration.
I (N INT) [A] ⋅ t [s] ⋅ 60 [s/min] ⋅ MP_distPerMotorTurn [mm]
MP_compAcc = --------------------------------------------------------------------------------------------------------------------
ΔV (N IST) [mm/min]

I (N INT) = Integral-action component of the nominal current value


t = Acceleration time in which I (N INT) remains constant
ΔV (ACT RPM) = Actual-speed-value change
MP_distPerMotorTurn = Traverse distance per motor revolution

MP_compAcc
Acceleration feedforward control
(compare to iTNC 530: MP2600.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [As2/1] with up to 9 decimal places
Default: 0 [As2/1], optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1361


Limiting the In machines with a great deal of stiction, a high integral-action component can
integral factor accumulate if there is a position error at standstill. This can result in a jump in
position when the axis begins moving. In such cases you can limit the integral-
action component of the speed controller:

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
vCtrlIntTime 400903

 Enter a limit in MP_vCtrlIntTime.


Realistic input values: 0.1 to 2.0

MP_vCtrlIntTime
Limiting the integral-action component of the speed controller
(compare to iTNC 530: MP2512.x)
Available from NCK software version: 597110-02.
Format: Number
Input: 0 to 30 [s] with up to 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

1362 HEIDENHAIN Technical Manual TNC 640


6.17.19 IPC, holding torque, following error in the jerk phase

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compCurrentOffset 401405
compIpcT1 401407
compIpcT2 401408
compIpcJerkFact 401409

The parameter object CfgControllerComp is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
 Analog axes (MP_axisHw=Analog)

Integral Phase Use the I factor MP_vCtrlIntGain of the speed controller to attain a short
Compensation (IPC) settling time. Although the I factor negatively influences the position
controller. The position controller is more likely to oscillate, which often makes
it impossible to adjust the kv factor MP_kvFactor to the desired size.
The IPC compensates the negative influence of the I factor on the speed
controller, which might increase of the KV factor to be achieved.
The IPC is beneficial on the following types of machines:
 Machine type 1: Machines with a dominant natural frequency between
15 Hz and 80 Hz, for which it is not possible to set a sufficiently high kV
factor.
 Machine type 2: Small-to-medium size machines that are driven directly.

Note

 The acceleration feedforward (MP_compAcc) must already have been


carefully adjusted for both types of machines.
 If after commissioning the IPC you wish to optimize the speed controller
again, you must switch off the IPC beforehand, because the IPC
influences the curve form.
 Use the same test program to commission the IPC as is used to measure
the jerk and the kv factor.

January 2015 6.17 The control loop 1363


Machine type 1:
 The machine is commissioned as usual until the kV factor is to be
determined.
 Enter MP_compIpcT1 = 1 and MP_compIpcT2 = 0.
 Increase the kv factor (MP_kvFactor) until you reach the oscillation limit.

2 MP_compAcc
 Starting value: MP_compIpcT2 = ---
3
⋅ ----------------------------------------------------------
MP_vCtrlPropGain

 Change MP_compIpcT2 until you have found the maximum kv factor. If you
cannot find a maximum kv factor, use the default value.

MP_compAcc
 Starting value: MP_compIpcT1 = ----------------------------------------------------------
MP_vCtrlPropGain

 Increase MP_compIpcT1 until you have found the maximum kv factor. If the
value found is significantly greater than the starting value (> factor 2), you
should adjust MP_compIpcT2 again by enlarging and reducing it to find the
optimum value.

 MP_kvFactor = 0.65 · ascertained kV

Machine type 2:
 The machine is commissioned as usual until it comes to determining the kV
factor.
 Enter MP_compIpcT1 = 1 and MP_compIpcT2 = 0.
 Increase the kv factor (MP_kvFactor) until you reach the oscillation limit.

2 MP_compAcc
 Starting value: MP_compIpcT2 = ---
3
⋅ ----------------------------------------------------------
MP_vCtrlPropGain

 Change MP_compIpcT2, normally by reducing it, until the following error is


at its minimum.

 MP_kvFactor = 0.65 · ascertained kV

1364 HEIDENHAIN Technical Manual TNC 640


MP_compIpcT1
IPC time constant T1
(compare to iTNC 530: MP2602.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 [s] with up to 9 decimal places
0: IPC inactive
Default: 0 [s], optional parameter
Access: LEVEL3
Reaction: RUN

MP_compIpcT2
IPC time constant T2
(compare to iTNC 530: MP2604.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 [s] with up to 9 decimal places
0: IPC inactive
Default: 0 [s], optional parameter
Access: LEVEL3
Reaction: RUN

Optimizing the jerk In the same manner as the other feedforward controls in a control loop, the
feedforward control jerk feedforward control causes following errors to be reduced or
compensated during a dynamic phase (in this case the phase of the change in
acceleration).
When the feedforward control is initially configured, the necessary jerk
feedforward control is calculated for the known control-loop factors, but the
mechanical deformation of the transmission components (e.g. due to torsion
of the ball screw or the slack sides and tight sides of belt drives) and the
resulting following error are unknown. This can be minimized or compensated
with the dimensionless multiplier MP_compIpcJerkFact, which affects the
jerk feedforward control directly.
When optimizing the jerk feedforward control all other controller parameters
must already have been adjusted.

Note

The MP_compIpcJerkFact parameter is not available on the CC 61xx or


UEC 11x. Use the significantly more suitable parameter
MP_compTorsionFact instead (See "Torsion compensation" on page
1432).

January 2015 6.17 The control loop 1365


With the CC 61xx or CC 424 you can also use this function without active IPC.
A prerequisite for the activation of the possibility of compensation with the
CC 422 is an active and already adjusted IPC (Integral Phase Compensation).
Commissioning:
 Enter the following test program:
0 BEGIN PGM TEST MM
1 LBL 1
2 L X <maximum traverse> R0 FMAX
3 L X0 FMAX
4 CALL LBL1 REP 10/10
5 END PGM TEST MM
 Run the program at high speed.
 Use the integrated oscilloscope to record the following error.
 CC 424: Adjust MP_compIpcJerkFact until a minimal following error occurs
in the jerk phase. Here you can compensate the following error for the jerk
phase.
Typical input values: 0 to 0.5 (e.g. 0.01).

Note

Please note that values over 0.5 in MP_compIpcJerkFact do not make


sense for the CC 424 controller unit, and are therefore not permissible.
Therefore, an error message will be issued for values greater than 0.5.
As of version 597110-06 the permissible input range has been increased to
0.8. This may be necessary for very large torque motors.

MP_compIpcJerkFact
Following error in the jerk phase
(compare to iTNC 530: MP2606.x)
Available from NCK software version: 597110-02.
Format: Number
Input: 0 to 10 with up to 9 decimal places
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1366 HEIDENHAIN Technical Manual TNC 640


Holding torque The holding torque is the torque that is required to keep a vertical axis at a
standstill.
The holding torque is given by the TNC 640 through the integral-action
component of the nominal current value. In most cases the holding torque is
constant. The required holding current can therefore be fed forward through
MP_compCurrentOffset. This relieves the speed controller.
 To prevent the effect of stiction, measure the current at low speed in both
directions (e.g. 10 min–1).
 Calculate the holding current from the mean of the measured current values
and enter the result in MP_compCurrentOffset.
Mean:

I NOMINAL1 + I
MP_compCurrentOffset =
2
Note

If the ready signal (RDY) is missing from the speed encoder inputs of
vertical axes, the DSP error message 8B40 power supply unit <axis> not
ready appears.
A vertical axis is defined with an entry in MP_currentOffset.

MP_compCurrentOffset
Holding current of vertical axis (weight compensation)
(compare to iTNC 530: MP2630.x)
Available from NCK software version: 597110-01.
Format: Number
Input: –30 to 30 [A] with up to 9 decimal places
Default: 0 [A], optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1367


6.17.20 HSCI: Switching drives on and off, enabling the drive controller

Settings in the configuration editor MP number


System
CfgHardware
driveOffGroupInput 100106
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
driveOffGroup 400015
CfgPowerStage
ampReadyWaitTime 401206

The parameter object


 CfgAxisHardware is not required for:
• Virtual axes (MP_axisMode=Virtual)
 CfgPowerStage is not required for:
• Virtual axes (MP_axisMode=Virtual)
• Axes that are for display only (MP_axisMode=Display)
• Analog axes (MP_axisHw=Analog)

The procedure recommended by HEIDENHAIN for switching the drives on and


off, including the correct triggering of the brakes, can be configured with the
PLC basic program. HEIDENHAIN recommends using the PLC basic program.

Readiness of The drives can only be switched on once the drive system is ready. This
the drives includes
 the readiness of the supply unit (RDY.PS signal at X69 pin 17a – interrogation
via Module 9066 bit 5), the inverters (RDY signal at X51..64 pin 10b of the
PWM outputs) and of the motors.
 global drive enabling with EMERGENCY STOP via -ES.B.
 the conclusion of the motor orientation (determination of the field angle).
 for optional use of axis groups, these must be enabled via the PLC inputs
specified in MP_driveOffGroupInput.
Basic settings:
 Ensure that the clamping or brakes activate when an emergency stop is
effected.
 To enable drives use the input configured as -ES.B. on the PL 62xx or
UEC 11x PLC system module.
 Ensure via Module 9159 (drive controllers are switched off) that the
clamping or brakes activate before the drive controllers (current and speed
controllers) are switched off.
 Before switching off the drives, save the positions of axes with commonly
used encoders.

1368 HEIDENHAIN Technical Manual TNC 640


 Ensure that all control components are wired correctly. (HEIDENHAIN
recommends always wiring the system according to the basic circuit
diagram of the TNC 640.) Registered customers can download the current
basic circuit diagram from the HESIS-Web Including Filebase on the Internet
at http://hesis.heidenhain.de.
 If you are using axis groups, assign the axis to the axis group required for
drive enabling in MP_driveOffGroup.
To switch on the drive controller:
 Use PP_AxDriveOnRequest to switch the drive motor on (See "Opening
the position control loop" on page 1337).
 Use NN_AxDriveOn to check the status of the drive motor.
If drive enabling through X150/X151 is missing, the drive motor will always be
switched off and the position controller will be informed accordingly.
If drive enabling of axis groups is used, the PLC program should perform a
plausibility test to see if all axes used are defined in MP_driveOffGroup.

Danger

If MP_driveOffGroup is configured incorrectly, the drive motor might not


be switched off correctly!

Note

 If drive enabling is missing, the error message 8B40 No drive release


<axis> appears.
 If you do not want to use drive enabling for axis groups, but rather just
global drive enabling through –ES.B, remove the optional parameter
MP_driveOffGroup from the configuration of your machine.
 The TNC 640 monitors the time between the switch-on of the drive
controller (via Module 9161) and the READY signal of the power module
(via the PWM cables). If the READY signal is missing after the waiting
time has passed, the error message 8B40 No drive release <axis>
appears. In MP_ampReadyWaitTime you preset the permissible
waiting time.
 If the readiness signal is reset at the PWM outputs, the drive controllers
(current and speed controllers) are switched off. Normally, the error
message MOVEMENT MONITORING IN <AXIS> B is output through the
position control loop. Subsequently, the PWM signal release is switched
off by the reset signal.

January 2015 6.17 The control loop 1369


The drive controller cannot be switched on until the control-is-ready signal of
the inverter, the global drive enabling through -ES.B and the axis group
enabling are available.

Note

If you do not want to use drive enabling for axis groups, but rather just
global drive enabling through –ES.B, set MP_driveOffGroup=NONE for all
axes, or remove the parameter from your configuration.

1370 HEIDENHAIN Technical Manual TNC 640


Procedure for
"switching drives
on and off" Start

0 Initialization

- Open the pos. control loop (W1038/1040 [bit] = 1)


- Close the clamping for all axes
- Open the current and speed controller (Module 9161)
- Read out the relevant machine parameters
- Evaluate the machine configuration
- Analog axes: (output for controller enabling to 0)

1 In position

- Axis clamping free of error ?


Error message
(central drive, C-axis mode, No
axis with Hirth grid)

Yes

- Axis in position
(W1026 [bit] = 1,
Target pos. in Hirth grid) No

Yes

- Lock the feed rate enabling (W1060 [bit] = 0)

3 Switch on current & speed controller

No
Drives ready
for switch-on?
Timeout Error message
(Module 9157 status
No Ja
<0> [bit] = 1)

Yes

- Digital: Switch on current & speed controller


(Module 9161 [bit] = 1)
- Analog: Set the “controller enabling“ output

No

Are the current and speed


controllers switched on? Timeout Error message
(Module 9157 status <1> [bit] = 1) No Ja

January 2015 6.17 The control loop 1371


1

3 Close the position control loop

- Close the position ctrl loop (W1040 [bit] = 0)

No

Is the ctrl loop closed?


Timeout Error message
(W1024 [bit] = 1) No Yes

Yes

4 Release the clamping

- Is the clamping released (e.g. lock)?

No

Acknowledgement
(if received) or waiting time: Timeout Error message
Clamping released? Yes

Yes

5 Positioning

- Release the feed rate (W1060 [bit] = 1)

Axis in position
(W1026 [bit] = 1)? No

Yes

6 Axis clamping

- Close the clamping (e.g. the lock)

No

Acknowledgement
(if received) or waiting time: Timeout Error message
Clamping active? Yes

1372 HEIDENHAIN Technical Manual TNC 640


2

7 Open the position control loop

- Open the pos. ctrl loop (W1038/1040 [bit] = 1)

No

Is the position ctrl loop open?


Timeout Error message
(W1024 [Bit] = 0) No Yes

Yes

8 Switch off current and speed controller

- Digital: Switch-on the current and speed ctrlr


(Module 9161 [bit] = 1)
- Analog: Set the controller-enabling output

Yes

Are the current and speed controller


switched off? Timeout Error message
(Module 9157 status <1> [bit] = 0) No Yes

Yes

Continue with step

1 In position

January 2015 6.17 The control loop 1373


MP_driveOffGroup
Circuit of X150/X151
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: None
Axis not assigned (disabling only through I32)
Group1
Axis is assigned to X150 pin 1
Group2
Axis is assigned to X150 pin 2
Group3
Axis is assigned to X150 pin 3
Group4
Axis is assigned to X150 pin 4
Group5
Axis is assigned to X151 pin 1
Group6
Axis is assigned to X151 pin 2
Group7
Axis is assigned to X151 pin 3
Group8
Axis is assigned to X151 pin 4
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET
The TNC 640 monitors the time between the switch-on of the drive controller
(by means of PP_AxDriveOnRequest) and the RDY signal (via the PWM
cable). If the READY signal is missing after the waiting time has passed, the
error message 8B40 NO DRIVE ENABLE <axis> appears.
 Enter in MP_AmpReadyWaitTime the permissible waiting time.

MP_ampReadyWaitTime
Waiting time between switch-on of the power module and the
RDY signal
(compare to iTNC 530: MP2170)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 4.999 [s] with up to 9 decimal places
0: Waiting time of 2 [s]
Default: 0 [s]
Access: LEVEL3
Reaction: RUN

Note

If drive enabling is missing, the error message 8B40 No drive release


<axis> appears.

If you disconnect the voltage


 -ES.B, all drive controllers are switched off.
 on the PLC inputs for axis group enabling, the drive controllers of the
corresponding axis group(s) are switched off.

1374 HEIDENHAIN Technical Manual TNC 640


You can determine by PLC which axes are switched off in 200 ms:
 Call Module 9159. The drive motors that are switched off are returned in bit
code.

Note

The bit-encoded status signal supplied by Module 9159 is a request to lock


the brake/clamping of the servo drive. Do not use the signal as a request to
switch off the drive concerned.

The following logic diagram shows the status signals of the PLC modules
9159 and 9162 as well as the trigger signal for the brake from the
HEIDENHAIN inverter.
A switch-on procedure with a test of the motor brake and a switch-off
procedure with an overlap time of 200 ms are recorded:

status signal from module 9162


1

0
status signal from module 9159
1

0
1

brake control from UM


0

time t

The logic diagram shows that the trigger signal for the motor brake can be
calculated from the status signals of the Modules 9159 and 9162:
Brake is not active = Status signal of Module 9162 AND NOT status signal of
Module 9159
This enables you to use the PLC to apply the test of the motor brakes to non-
HEIDENHAIN power modules, too.
The status of the drive controller is shown in NN_AxDriveOn. Use Module
9157 to inquire whether the drive controller is ready to be switched on.

January 2015 6.17 The control loop 1375


Module 9157 Status request for drive hardware
The module determines status information of the drive controller.
Information about drive controller status: The drive is ready if
 the DSP processor board has been enabled.
 the drive was activated through external switching.
 the current controller and the speed controller have been activated.
Call:
PS B/W/D/K <Selection of status information>
0: Drive controller is ready
Result 0: Drive is not ready and cannot be switched on
Result 1: Drive is ready and can be switched on
1: Drive controller status
Result: Bit-encoded (bit 0 corresponds to logical axis 0,
etc.)
2: Axis enabled via axis group (bits 0 to 13 = 1) or axis not
enabled (bits 0 to 13 =0)
3: Signals available at X150/X151
(bits 0 to 7 = X150; bits 8 to 15 = X151)
4: Reserved
CM 9157
PL B/W/D <Axis status information bit-encoded>
(Bit 0 represents logic axis 0, etc.)
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status information was ascertained
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid status information was programmed
ErrorCode 24 Module was called in a spawn job or submit
job

Module 9159 Early warning for stopping the drives


The module provides an early warning indicating that the drives will be
stopped. This early warning is made available approx. 200 ms before the drive
readiness is canceled.
Constraints:
 When the API 3.0 symbolic memory interface is used, the number of the
returned bits depends on the number of configured axes. The bit #0
corresponds to the axis with index 0 from parameter CfgAxes\axisList
(100001). Spindles are not handled separately. The corresponding index
from CfgAxes/axisList is returned.
Call:
CM 9159
PL W/D <Drives that are switched off in 200 ms—bit-encoded>
When using the API 3.0 symbolic memory interface,
Bit 0 corresponds to index 0 from CfgAxes/AxisList etc.
When using the API 1.0 numerical memory interface:
Sxxx xxx9 8765 4ZYX

1376 HEIDENHAIN Technical Manual TNC 640


Module 9161 Enable the drive controller
With this module you can switch the drive controllers (speed and current
controllers) on and off for specific axes. A nominal speed value is also output
when the drive controller is not enabled.
Call:
PS W/D/K <Enabled axes>
Bits 0...13 -> axes 1...14, bit 15 -> spindle
0: No drive controller enabling
1: Drive controller enabling
CM 9161
Error code:

Marker Value Meaning


M4203 0 No error
1 Control has no current controller, or the call is in a
spawn or submit job

Module 9162 Status query of the drive controller


Call:
CM 9162
PL B/W/D <Drive is ready>
Bits 0 to 13 -> axes 1 to 14, bit 15 -> spindle
0: Not ready
1: Ready

January 2015 6.17 The control loop 1377


6.17.21 Current controller

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
iCtrlPropGain 401001
iCtrlIntGain 401002

The parameter object CfgCurrentControl is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are only for display (MP_axisMode = Display)
 Analog axes (MP_axisHw = AnalogMC, AnalogCC)

Several digital current controllers for the axes and spindle(s) are integrated in
the TNC 640.
The nominal values for magnetizing current Idnom and torque current Iqnom are
divided into the PWM signals U1, U2 and U3 through a PI controller and vector
rotator VD+, and are transferred to the power module through X51 to X60 (via
internal connections on the UEC 11x).
The actual current values I1act and I2act are determined by the power module
and are transferred to vector rotator VD– through X51 to X60 (via internal
connections on the UEC 11x). The vector rotator determines the actual values
of magnetizing current IdAct and torque current IqNom.
Circuit diagram:

1378 HEIDENHAIN Technical Manual TNC 640


You adjust the current controller to attain the optimum result, with the position
and speed controller switched off.

The step response is adjusted such that there is no overshoot and the rise
time is as short as possible:
 In MP_iCtrlPropGain, define the P factor of the current controller.
 In MP_iCtrlIntGain, define the I factor of the current controller.
Automatic calculation of the P and I factor of the current controller for
synchronous and asynchronous motors is also possible. However, automatic
calculation is not to be used for linear synchronous and torque motors:
 Select the MP_iCtrlPropGain or MP_iCtrlIntGain parameter
 Press the ENT key to open the dialog window for the value input
 Press the CALCULATE soft key. An asterisk * is prefixed to the parameters
to identify the automatically calculated value.

Note

You can find a guideline for commissioning the current controller under
"Commissioning of digital axes" on page 1710.

January 2015 6.17 The control loop 1379


MP_iCtrlPropGain
Proportional component for digital current controller
(compare to iTNC 530: MP2420.x, MP2421.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 9 999.99 [V/A] with up to 9 decimal places
Default: 0 [V/A]
Access: LEVEL3
Reaction: RUN

MP_iCtrlIntGain
Integral-action component for digital current controller
(compare to iTNC 530: MP2430.x, MP2431.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 9 999 999 [V/As] with up to 9 decimal places
Default: 0 [V/As]
Access: LEVEL3
Reaction: RUN

1380 HEIDENHAIN Technical Manual TNC 640


Expanded current
controller
bandwidth Settings in the configuration editor MP number
(only CC 61xx)
Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
iCtrlDiffFreqFF 401007
iCtrlAddInfo 401008

For axes with rigidly connected mechanics it may make sense to adjust the
current control loop using the maximum possible bandwidth to attain high
gains in the superimposed velocity control loop. For the CC 61xx controller
unit there are two procedures for increasing the bandwidth of the current
control loop:
 Using machine parameter MP_iCtrlAddInfo to increase the controller
factors in the current control loop,
 Proportionally differentiating feedforward (D feedforward) to optimize the
command action of the current control loop (MP_iCtrlDiffFreqFF
parameter).
Increased controller factors in the current control loop:
The dead time in the current control loop is the decisive factor for the
attainable controller factors, and therefore for the attainable bandwidth. Use
parameter MP_iCtrlAddInfo to activate compensation of this dead time. After
activation, you have to repeat the current controller adjustment. Usually you
can then set considerably higher current controller factors. The higher the
controller factors, the larger the bandwidth of the current controller. The
bandwidth of the current control loop can be evaluated with the Bode diagram
function of the TNCopt commissioning and diagnostic software (see TNCopt
User's Manual).
However, the noise in the current—and as a result, the loudness of the drive—
increase when the current controller bandwidth is increased.
D feedforward for optimization of the current controller command
action:
Use parameter MP_iCtrlDiffFreqFFto activate feedforward with
proportionally differentiating behavior for the torque-generating current. This
way you achieve an optimized command action of the current controller.
The parameter MP_iCtrlDiffFreqFF indicates the cutoff frequency in Hertz
[Hz] up to which feedforward is active. When this cutoff frequency is reached,
feedforward is deactivated by a low-pass element. It is therefore also referred
to as PDT1 feedforward in the following.
The following table shows the maximum possible cutoff frequency depending
on the PWM frequency of the drive. The higher the cutoff frequency, the larger
the bandwidth of the current controller regarding its command action. At the
same time, however, the noise in the current—and as a result, the loudness
of the drive—increase. If you enter 0 Hz, feedforward is deactivated.

January 2015 6.17 The control loop 1381


Maximum values for parameter MP_iCtrlDiffFreqFF as a function of the PWM
frequency:

PWM frequency Maximum value for MP_iCtrlDiffFreqFF


3333 Hz 800 Hz
4000 Hz 960 Hz
5000 Hz 1200 Hz
6666 Hz 1600 Hz
8000 Hz 1920 Hz
10000 Hz 2400 Hz

Adjustment of the current controller if increased current controller


factors are active over MP_iCtrlAddInfo:

Note

For standard drives, it is usually not necessary to increase the current


controller bandwidth. In general, the increase is only useful if the drives are
connected directly without an interconnected gear.

If PDT1 feedforward or the increase of the current controller factors is


activated, you must keep in mind that the noise in the current increases when
the bandwidth is increased. You have to find a compromise between the
 increase of the current controller bandwidth and
 the development of noise in the drive.

To adjust the increased current controller factors, proceed as follows:


 In the corresponding parameter set of the axis MP_iCtrlAddInfo, set bit
0 = 1 to activate the function.
 Readjust the current controller with TNCopt (Bode diagram function; see
TNCopt User's Manual).

Note

If you activate the PDT1 feedforward by entering a value in the


MP_iCtrlDiffFreqFF parameter, it is not necessary to readjust the current
controller. The PDT1 feedforward does not have a noticeable effect on the
current control loop but rather only on the superimposed speed control
loop. For axes with rigidly connected mechanics, you attain higher
controller factors in the speed control loop if the PDT1 feedforward is
activated.

1382 HEIDENHAIN Technical Manual TNC 640


MP_iCtrlDiffFreqFF
Cutoff frequency of the current controller feedforward in Hz
(This function is only available if the CC 61xx controller unit is
used!)
(compare to iTNC 530: MP2440.x)
Available from NCK software version: 597110-03.
Format: Number
Input: 0 Hz to fg
The cutoff frequency fg depends on the PWM frequency (see
table).
0: Current controller feedforward deactivated
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_iCtrlAddInfo
Switching dead-time compensation on and off.
(This function is only available if the CC 61xx controller unit is
used!)
(compare to iTNC 530: MP2450.x)
Available from NCK software version: 597110-03.
Format: Number
Input: Bit 0 = 0:
Compensation switched off
Bit 0 = 1:
Compensation switched on
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1383


6.17.22 Braking the drives in case of an EMERGENCY STOP and a power failure

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motEmergencyStopRamp 401306

The parameter object CfgServoMotor is not required for:


 Virtual axes (MP_axisMode=Virtual)
 Axes that are for display only (MP_axisMode=Display)
 Analog axes (MP_axisHw=Analog)

In an emergency stop and power failure the axes and the spindle must be
braked as quickly as possible. If the braking energy cannot be drawn off quickly
enough, the DC-link voltage increases sharply. If, in unfavorable cases, the
maximum regenerative power of the inverter is exceeded, the inverter is
switched off and the axes and spindle(s) coast to a stop. A powerful braking
of the drives also puts a high strain on the mechanics of the machine. With
gantry axes a mechanical offset can occur between the master and slave axes.
Problems with non-regenerative inverters (with braking resistors) during
braking mostly arise if the inverter is switched off too early. The strain on the
mechanics during braking is reduced, but can also be influenced with braking
strategies.
Regenerative inverters usually do not develop problems if they are switched
off. As a rule, the mechanics of the machine must be taken into account.
During a power failure ("powerfail"), the "SH1B" signal at X51 to X60 is
maintained for 10 more seconds, in order to brake the spindle(s). At the same
time, the control tries to reset the PLC outputs.

1384 HEIDENHAIN Technical Manual TNC 640


Decelerating along The steepness of the emergency braking ramp (ramp for deceleration) is
the braking ramp defined in MP_motEmergencyStopRamp. The greater the value entered in
MP_motEmergencyStopRamp, the steeper the emergency braking ramp.
The maximum value for MP_motEmergencyStopRamp is limited by the
output power of the inverter. The minimum value is determined by
MP_maxAcceleration. The permissible acceleration of the axis during normal
machining operation is defined in MP_maxAcceleration.

Note

If the brake ramp defined in MP_motEmergencyStopRamp has a smaller


gradient than the one defined in MP_maxAcceleration, the brake ramp
from MP_maxAcceleration is used for braking.

To achieve a braking at the limit of current, the value 0 must be entered in the
machine parameter MP_motEmergencyStopRamp.
Define MP_motEmergencyStopRamp (brake ramp in an emergency stop):
 Use the value in MP_maxAcceleration as the minimum value
 Use the emergency stop to brake the axis from rapid traverse, or the spindle
from high speed.
 Increase the value entered in MP_motEmergencyStopRamp until the
braking time is as short as possible and the mechanics of the axis or spindle
are not overloaded.

MP_motEmergencyStopRamp
Braking ramp in an emergency stop
(compare to iTNC 530: MP2590)
Available from NCK software version: 597110-02.
Format: Number
Input: 0 to 999.9 [m/s2] or [°/s2] or [1/min/s] with max. 9 decimal places
0: Brakes at the current limit
Default: 0
Access: LEVEL3
Reaction: RUN

Note

You can limit the braking power for braking the servo drives in case of an
EMERGENCY STOP or a power failure. Please refer to "Limitation of the
braking power" on page 1389.

January 2015 6.17 The control loop 1385


6.17.23 Limiting the power, braking power and torque

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motEncCheckOff – bit 2 401303
motPbrMax 401307
motPMax 401308
motPMax2 401325
motPbrMaxAcFail 401309
motMMax 401310

The parameter object CfgServoMotor is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

You can limit the power of your spindle motor to achieve wider gear ranges.
Wide-range motors are characterized by a larger speed range with higher
torque at low speed.
One solution for bringing about this behavior is to use an oversized motor and
to limit the maximum power. However, power limiting does not reduce the
high torque to the speed at which power limiting becomes effective. This high
torque (until power limiting takes effect) can be reduced with torque limiting,
in order to keep the mechanics of the machine from becoming overloaded.
With torque limiting you can also limit the torque of the axis motors, in order
to keep the mechanics of the machine from becoming overloaded. Power
limiting is not useful for axis motors.
For axes and spindles, the torque is limited to the value taken from either the
table of power modules or the motor table, whichever is lower.
On supply units where the ERR.IZ.GR signal is available, the power is limited
via MP_motPMax in case of error.
HEIDENHAIN recommends activating this monitoring function (not with
UE 2xx).

1386 HEIDENHAIN Technical Manual TNC 640


The torque can be calculated for any speed:
P ⋅ 60
M = ----------------
n⋅2⋅π
M: Torque [Nm]
P: Power [W]
n: Speed [min–1]

Note

The power and torque limiting can have an effect on the braking of the
spindle in an emergency stop.

 Enter the maximum power for the spindle in MP_motPMax.


 Define an additional maximum spindle power in MP_motPMax2. This
makes it possible to reduce power consumption for starting up the spindle.
This can prevent the maximum power of the power supply module from
being exceeded if an axis is positioned at the same time as the spindle is
started. The PLC knows (via M3/M4/M5) when the spindle is being started
up and when the defined spindle speed has been reached. During the PLC
positioning movements (tool change) you can switch to the power in
MP_motPMax2. During machining (low power consumption of the axes,
low traversing speeds) you can switch to the maximum spindle power in
MP_motPMax.
 Enter the maximum torque for the drive motor in MP_motMMax.
 Activate the spindle power limit at ERR.IZ.GR via MP_motEncCheckOff—
Bit 2 = 0 (not with UE 2xx)

January 2015 6.17 The control loop 1387


P Oversized motor

Power limit

Motor with power and


torque limiting
Normal-sized motor

Oversized motor

Motor with
power limit

n
M
Motor with
power limit

Torque limit

Motor with power


and torque limit

1388 HEIDENHAIN Technical Manual TNC 640


Limitation of the The use of energy recovery and/or a braking resistor must also be taken into
braking power account when braking the drives:
Inverter without energy recovery (with braking resistor):
 MP_motPbrMax: Calculate the maximum braking power from the formula
below
 MP_motPbrMaxAcFail: Calculate the maximum braking power from the
formula below
Inverter with energy recovery (without braking resistor):
 Enter MP_motPbrMax = 0 so as not to limit the braking power.
 MP_motPbrMaxAcFail: The braking power cannot be limited in a power
failure. Axes and spindles will coast to a stop.
Inverter with energy recovery and additional braking resistor:
 Enter MP_motPbrMax = 0 so as not to limit the braking power.
 MP_motPbrMaxAcFail: Calculate the maximum braking power from the
formula below
Calculation of maximum braking power:
 For inverters with braking resistor, calculate the maximum braking power
from the following formula:
2
UZ
Max. braking power = -------------------------
-
R ⋅ 1000

R = Braking resistance [Ω]


UZ = DC-link voltage [V]

Note

 If the braking power defined in MP_motPbrMax or


MP_motPbrMaxAcFail is smaller than the one defined in
MP_maxAcceleration, the braking power from MP_maxAcceleration is
used for braking.
 If after entry of a value in MP_motPbrMax or MP_motPbrMaxAcFail,
the mechanics are overloaded by the braking process, reduce the value
until you have found an optimum between braking time and mechanical
load.

January 2015 6.17 The control loop 1389


Machine MP_motEncCheckOff
parameters Monitoring functions
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 2—Spindle power limit with ERR.IZ.GR (only for
HEIDENHAIN inverters, except UE 2xx)
0: Power limit active
1: Power limit inactive
Default: 0
Access: LEVEL3
Reaction: RUN

MP_motPbrMax
Maximum braking power
(compare to iTNC 530: MP2390.x, MP23911.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 3000 [kW] with up to 9 decimal places
0: Braking power is not limited
Default: 0
Access: LEVEL3
Reaction: RUN

MP_motPbrMaxAcFail
Maximum braking power during a power fail
(compare to iTNC 530: MP2394.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 3000 [kW] with up to 9 decimal places
0: Braking power is not limited
Default: 0
Access: LEVEL3
Reaction: RUN

MP_motPMax
Power limitation of motor
(compare to iTNC 530: MP2392.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 3000 [kW] with up to 9 decimal places
0: No power limiting
Default: 0
Access: LEVEL3
Reaction: RUN

MP_motPMax2
Max. motor power after PLC request
(compare to iTNC 530: MP2393.x)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 3000 [kW] with up to 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

1390 HEIDENHAIN Technical Manual TNC 640


MP_motMMax
Maximum torque
(compare to iTNC 530: MP2396.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 30 000 [Nm] with up to 9 decimal places
0: No torque limiting
Default: 0
Access: LEVEL3
Reaction: RUN

MP_miscCtrlFunct1
Special controller functions
Available from NCK software version: 597110-05.
Format: Number
Input: Bit 1 = 1: If a torque is specified via PLC Modules 9128 and
9158, and MP_miscCtrlFunct1 bit 1 = 1 is set, the NC
automatically considers the holding current in
MP_compCurrentOffset when limiting the current. This makes
it possible to use the PLC modules to set a limit value that is
below the holding torque.
Bit 1 = 0: Not active
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

PLC modules Module 9128 Torque limiting by the PLC


Module 9128 can be used to program a maximum torque for the programmed
axis. The torque of the drive is limited to the programmed value. The value –1
cancels the torque limitation and the value from the motor data becomes
effective again. The torque can be limited in [mA] or in [0.1 %] of the rated
current.
Conditions:
 The module is only executable in the cyclic PLC program.
 The programmed value for the maximum torque may not be higher than the
value in the motor data. If the programmed value is higher than the value in
the motor data, the value in the motor data is used as the limit.
 A torque value of 0 cannot be programmed.
 Programming a torque value of –1 cancels limitation. The original value from
the motor data becomes effective again.
 The unit of the resulting torque is [mA].
 If a drive is switched off, the torque from the motor data becomes effective
again when it is switched on.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.

January 2015 6.17 The control loop 1391


 If a torque is specified via PLC Module 9128 and MP_miscCtrlFunct1 bit 1
= 1 is set, the NC automatically considers the holding current in
MP_compCurrentOffset when limiting the current. This makes it possible
to use PLC Module 9128 to set a limit value that is below the holding torque.
Call:
PS B/W/D/K <Mode>
0: Current in [0.1 %] of the rated current
1: Current in [mA] (like Module 9158)
PS B/W/D/K <Axis number / spindle number>
PS B/W/D/K <Torque>
–1: Cancel the torque limiting
CM 9128
Error code:

Marker Value Meaning


NN_GenApiModule 0 Torque limiting programmed
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for torque
ErrorCode 2 Invalid value for axis number or mode, axis is
an open-loop axis or is temporarily not a
closed-loop axis
24 Module was called in a spawn or submit job

Module 9129 Status of torque limiting by the PLC


Module 9129 is used to determine the current status of torque limiting for the
programmed axis. The momentary maximum torque can be determined in
[mA] or in [0.1 %] of the rated current.
Constraints:
 The module is only executable in the cyclic PLC program.
 The greatest possible return value is the value resulting from the motor data.
 If torque limiting is not active, the maximum current can be determined from
the motor data.
 An axis that is not configured as "active", or an axis that is currently
deactivated (e.g. with Module 9226 or 9418), is treated as if it were not
present.

1392 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Mode>
0: Limiting active/inactive
1: Current in [mA]
2: Current in [0.1 %] of the rated current
3: Limit reached / not reached
PS B/W/D/K <Axis number / spindle number>
CM 9129
PL B/W/D <Status>
Mode 0: 0 = Limiting inactive / 1 = Limiting active
Mode 1: Current in [mA]
Mode 2: Current in [0.1 %] of the rated current
Mode 3: 0 = Limit not reached / 1 = Limit reached (1)
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status ascertained
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid value for axis number or mode, axis is
ErrorCode an open-loop axis or is temporarily not a
closed-loop axis
24 Module was called in a spawn or submit job

Module 9158 Maximum torque


With Module 9158 you can limit the torque of an axis or spindle. The maximum
torque resulting from the data in the control's motor table cannot be
exceeded. In this case the torque is limited to the value from the motor
specifications. After the drive is switched off, the original torque becomes
effective again.
If torque limiting is active, the standstill monitoring is inactive; only the motion
monitoring remains active.
Constraints:
 The module is only executable in the cyclic PLC program.
 A value greater than the maximum torque from the motor data cannot be
programmed. In this case it is limited to the maximum value.
 A torque value of 0 cannot be programmed.
 Programming a torque value of –1 cancels the limitation and the original
value from the motor data becomes effective again.
 The torque unit is mA.
 If a drive is switched off in the meantime, the value from the motor data
becomes effective when it is switched on again.
 An axis that is not configured as "active", or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.

January 2015 6.17 The control loop 1393


 If a torque is specified via PLC Module 9158 and MP_miscCtrlFunct1 bit 1
= 1 is set, the NC automatically considers the holding current in
MP_compCurrentOffset when limiting the current. This makes it possible
to use PLC Module 9158 to set a limit value that is below the holding torque.
The torque-producing current required for the desired torque must be
transferred to the module:

Synchronous motor Asynchronous motor


 Armature control range (n < nFS)
2 2
PN M ⋅ nN ⋅ 2 ⋅ π ⋅ IN – I0
k M = ------------------------------- I q = --------------------------------------------------------------
nN P N ⋅ 60
I N ⋅ 2 ⋅ π ⋅ ------
60
 Field weakening range (n > nFS)
M 2 2
Iq = ----
k
- M ⋅ nN ⋅ n ⋅ 2 ⋅ π ⋅ IN – I 0
I q = ----------------------------------------------------------------------
M P N ⋅ n FS ⋅ 60
Iq: Torque-producing current Iq: Torque-producing current
M: Desired torque M: Desired torque
kM: Torque constant nN: Rated speed (from motor table)
nN: Rated speed (from motor n: Current speed
table) IN: Rated current (from motor table)
IN: Rated current (from motor I0: No-load current (from motor table)
table) PN: Rated power output (from motor
PN: Rated power output (from table)
motor table) nFS: Threshold speed for field weakening
(from motor table)

Danger

If Module 9158 is used, then certain monitoring functions regarding the


drives must be switched off. Please note the following error messages and
their possible consequences (see DSP error messages)
 C380 Motor <axis> not controllable
 C3B0 Motor <axis> does not rotate

Attention

If you are using a CC 422 controller unit, then please note that the current
values in the oscilloscope are all peak values (and not effective values as
with the CC 424). Measured values then appear greater by a factor of the
square root of 2 than the calculated values.

1394 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K/S<Axis number / spindle number>
Index from CfgAxes/axisList
PS B/W/D/K/S<Torque-producing current in mA>
–1 = canceling of value (torque from motor data is effective
again)
CM 9158
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (torque value active)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 0 Nm torque transferred
ErrorCode 2 Invalid value for parameter <axis number /
spindle number>, no closed or momentarily
open loop axis programmed
24 Module was called in a submit or spawn job

January 2015 6.17 The control loop 1395


6.17.24 Controller parameters for manual traverse

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPositionFilter
manualFilterOrder 401605

Filter before The MP_manualFilterOrder parameter differentiates between axes and


position control spindles. In operating modes manual operation and el. handwheel or with
loop axis movements by the PLC, a mean-value filter is used as the nominal
position value filter with axes.
MP_manualFilterOrder for spindles: See "Filtering the acceleration values" on
page 1583
 Define the order of the mean-value filter for axes in
MP_manualFilterOrder.

MP_manualFilterOrder
Order of the mean-value filter in manual operation
Available from NCK software version: 597 110-01.
Format: Number
Input: 1 to 51
Default: 11
Access: LEVEL3
Reaction: RUN

1396 HEIDENHAIN Technical Manual TNC 640


6.17.25 Controller parameters for analog axes

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
kvFactor 400801
feedForwardFactor 400806
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisAnalog
analogOffset 400102
kvFactor2 400103
kvSpeedLimit 400104
accForwardFactor 400106
compStrength 400107
compWidth 400108
compTimeOffset 400109
compFFAdjust 400110
compRefAcc 400111
compLimitFactor 400114
noOffsetAdjust 400112
unipolar 400113

General Analog axis feedback control is based on the following formula:


information

9V
U out = ( P err ⋅ kvFactor + V nom ⋅ feedForwardFactor + A nom ⋅ accForwardFactor ) ⋅ ---------------------------------------------
maxFeedAt9V

Value, parameter Unit of Description


measure
Uout Volt Output voltage
(analog nominal speed value)
Perr mm Following error (servo lag)
kvFactor 1/s Kv factor
(proportional component of position
controller)
Vnom mm/min Nominal velocity
feedForwardFactor Factor for velocity feedforward control
Anom m/s2 Nominal acceleration
accForwardFactor Factor for acceleration feedforward
control
maxFeedAt9V mm/min Assumed velocity of the axis at 9 V

January 2015 6.17 The control loop 1397


The parameter object CfgAxisAnalog is not required for:
 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Digital axes MP_axisHW = CC or None)

Characteristic curve For machines with high rapid traverse, you can not increase the kv factor
kink point (only for enough for an optimum control response to result over the entire velocity
analog axes) range (from standstill to rapid traverse).
In this case, define a characteristic curve kink point, which has the following
advantages:
 High kv factor in the low range
 Low kv factor in the upper range (beyond the machining velocity range)

 Define the position of the kink point in MP_kvSpeedLimit.


 In MP_kvFactor2, enter the kv factor for the upper range.

sa: Following error


The characteristic curve kink point must lie above the tool feed rate!

Note

The two machine parameters MP_kvFactor2 and MP_kvSpeedLimit are not


valid for analog axes in the HSCI system, i.e. they are only supported by the
analog TNC 128, TNC 320 and MANUALplus 620 (with MC 320T) controls.

MP_kvFactor2
Proportional component of position controller above
MP_kvSpeedLimit
Available from NCK software version: 597 110-01.
Format: Number
Input: 0.000 000 000 to 1000 [1/s]
Default: 0 [1/s]
Access: LEVEL3
Reaction: RUN

1398 HEIDENHAIN Technical Manual TNC 640


MP_kvSpeedLimit
Limit velocity for MP_kvFactor2
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 36 000 000 [mm/min] or [°/min] with max. 9 decimal places
Default: 0 [mm/min] or [°/min], optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1399


Acceleration MP_accForwardFactor allows you to influence acceleration feedforward
feedforward control control for analog axes.
for analog axes
The following error (servo lag) should be as small as possible during the
acceleration phase. The MP_accForwardFactor parameter directly affects
the following error.
The best method for ascertaining the appropriate value for the parameter is by
carefully approaching the ideal value. Proceed as follows:
 Enter 0.005 as the preliminary starting value in the parameter
MP_accForwardFactor.
 Press the axis-direction key and record the following error with the
integrated oscilloscope.
 Ascertain the correct setting by carefully increasing the preliminary starting
value; e.g. use the value 0.01 for the next measurement.
 Determine the value just before an undershoot forms with the measured
following error.

MP_accForwardFactor not adjusted

1400 HEIDENHAIN Technical Manual TNC 640


MP_accForwardFactor adjusted too high

MP_accForwardFactor correctly adjusted

MP_accForwardFactor
Factor for acceleration feedforward control
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 0.01 with max. 9 decimal places
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1401


Compensation of The compensation of the reversal peaks affects the nominal speed value,
reversal spikes for which is output at the analog nominal value output of the control (X8). If an axis
analog axes reverses its direction of movement, a time-dependent compensation curve is
superimposed on the nominal speed value.

Machine MP_compStrength
parameters Strength of the compensation
Available from NCK software version: 597110-01.
Format: Number
Input: –999 999 999 to +999 999 999 [mm] or [°] with max. 9 decimal
places
0: No compensation
Positive input value:
Compensation works in the direction of acceleration.
Negative input value:
Compensation works against the acceleration.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN
Use the parameter MP_compWidth to define the distance from the reversal
point. The distance given refers to the offset entered under
MP_compTimeOffset. Enter the traverse path in which the compensation
curve is to be superimposed over the nominal speed value.

MP_compWidth
Specify, with respect to MP_compTimeOffset = 0, the distance
from the reversal point at which compensation is to begin.
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 999 999 999 [mm] or [°]with max. 9 decimal places
Default: 0.001, optional parameter
Access: LEVEL3
Reaction: RUN

1402 HEIDENHAIN Technical Manual TNC 640


The parameter MP_compTimeOffset shifts the compensation curve along
the time axis. The width is not changed. The velocity of the axis at which the
compensation function is to reach its maximum is defined. This means the
higher the acceleration at the reversal point, the closer the maximum will be
to the reversal point at the time of direction reversal.

MP_compTimeOffset
Time offset of the compensation
Available from NCK software version: 597110-01.
Format: Number
Input: –999 999 999 to 999 999 999 [mm/min] or [°/min] with max. 9
decimal places
0: The compensation curve reaches its maximum at the time of
direction reversal.
Positive input value:
The compensation curve is delayed, which means that the
maximum will not be reached until after the direction reversal.
Negative input value:
The compensation curve is moved to an earlier position, which
means that the maximum is reached before the direction
reversal.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1403


Use machine parameter MP_compFFAdjust to adjust the area below the
compensation curve as a function of the velocity at the reversal point. The area
entered in the machine parameter MP_compStrength is valid for the
acceleration entered in MP_compRefAcc. The compensation strength is
increased or decreased during accelerations that differ from the acceleration
in MP_compRefAcc.

MP_compFFAdjust
Additive correction of the compensation strength to the
machine parameter MP_compStrength
Available from NCK software version: 597110-01.
Format: Number
Input: –999 999 999 to 999 999 999 [mm] or [°] with max. 9 decimal
places
0: The compensation strength is constant over all acceleration
values and is equal to the value in MP_compStrength.
Positive input value: The area below the compensation curve
becomes larger for low accelerations.
Negative input value: The area below the compensation curve
becomes smaller for low accelerations.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_compRefAcc
For the acceleration given here, the area below to
compensation curve is set equal to the value entered in
MP_compStrength.
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 999 999 999 [m/s2] or [°/s2] with max. 9 decimal places
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1404 HEIDENHAIN Technical Manual TNC 640


Limiting the Parameter MP_compLimitFactor (400114) is used to limit reversal-spike
compensation compensation. As a precaution, the effective internal software limit is 3 mm/
s. You can use MP_compLimitFactor to raise or lower the limit. To do this,
add the optional parameter to the machine configuration.

MP_compLimitFactor
Limit of reversal-spike compensation
Available from NCK software version: 597110-03.
Format: Number
Input: 0.5 to 5 with up to 9 decimal places
Factor for raising or lowering the internal default software limit
of 3 mm/s.
Default: 1, optional parameter
Access: LEVEL3
Reaction: RUN

Compensation of For adjusting the compensation of the reversal peaks, proceed as follows:
reversal peaks
 Set machine parameters MP_compFFAdjust = 0 and MP_compRefAcc =
0 to ensure that the compensation strength is constant over all feed-rate
values.
 Set the parameter MP_compTimeOffset = 0.
 Enter in parameter MP_compLimitFactor = 1 and in MP_noOffsetAdjust
= TRUE.
Now select a typical machining speed and adjust the MP_compStrength,
MP_compWidth and MP_compTimeOffset parameters for the selected
speed.
MP_compWidth specifies the duration of compensation and should contain
values in the range of a few microns.
 In MP_compStrength, define the distance (in [mm]) traversed by the axis if
it follows exactly the nominal speed command. The reversal peak height
resulting without compensation is a suitable starting value for the
compensation.
 In MP_compWidth, enter the duration of compensation. The value entered
should lie in the range of a few microns.
 Run a circular interpolation test.
 If the path traversed in the circular test deviates at the reversal point from
the nominal path, first toward the inside and then toward the outside, the
compensation is performed too early. In this case, you must increase the
value in MP_compTimeOffset.
 If the path traversed deviates at the reversal point from the nominal path,
first toward the outside and then toward the inside, the compensation is
performed too late. In this case, you must decrease the value in
MP_compTimeOffset.

January 2015 6.17 The control loop 1405


With the following formula you can estimate the magnitude of useful values
for the MP_compTimeOffset parameter:

compTimeOffset = Acceleration ] ⋅ compWidth ⋅ 6


2 ⋅ [ Beschleunigung

It is easier to adjust the MP_compWidth and MP_compTimeOffset


parameters at low feed rates. HEIDENHAIN recommends:
 First roughly adjust MP_compStrength.
 Then select a low feed rate.
 Then adjust MP_compWidth and MP_compTimeOffset.
 Return to the original feed rate and optimize the value for
MP_compStrength.
You use these three parameters (MP_compStrength, MP_compWidth,
MP_compTimeOffset) to adjust the compensation of reversal spikes for a
specific feed rate and radius. Under certain circumstances, however, it can be
necessary to correct the compensation strength based on the feed rate.
Proceed as follows:
 Switch to the Oscilloscope mode of operation.
 Set the following value in the oscilloscope by pressing the SELECTION soft
key:
Display mode: YT
Sampling time: IPO clock
Channel 1: A nom
Trigger: Free run
 Press the OSCI soft key to switch to the curve representation.
 Now get the nominal acceleration for the axis (A nom) at the reversal point
for the feed rate that you have selected for the adjustment up to now.
 Press the START soft key to start recording.
 Press the axis-direction key of each axis.
 Press the STOP soft key to stop recording.
 Enter the determined acceleration in the parameter MP_compRefAcc.

Note

The oscilloscope shows mm/s2, but the unit of the parameter is m/s2. This
means that you must divide the value by 1000.

 Now use the parameter MP_compFFAdjust to correct the compensation


strength for lower or higher feed rates.

1406 HEIDENHAIN Technical Manual TNC 640


Analog offset The offset voltage required for analog axes is stored in MP_analogOffset. You
either enter these values manually or determine them by using the offset
adjustment function.
With offset compensation, the control assumes the offset values of the axes
determined by the interpolator and enters them into parameter
MP_analogOffset.

Note

For the offset adjustment, the axes and the spindle must be in position
feedback control.

To adjust the offset:


 Switch to the Programming mode of operation

 Press the MOD key

 Enter the code number 75368

 Press the MOD key

 Press the ADJUST OFFSET soft key

The control opens the Adjustment of analog axis offset dialog box and
displays the values determined.

 Press the OK button to transfer the offset values to the MP_analogOffset


parameters.
The maximum permissible offset voltage in the control is +/– 1 V. If this
voltage is exceeded, the offset adjustment function limits the value.

January 2015 6.17 The control loop 1407


MP_analogOffset
Offset on analog axis
Available from NCK software version: 597 110-01.
Format: Number
Input: –1.0 to +1.0 [V]
Default: 0 [V]
Access: LEVEL3
Reaction: RUN

MP_noOffsetAdjust
Excludes the axis from automatic offset adjustment
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Axis will be excluded from offset adjustment.
FALSE
Offset of the axis is adjusted.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

Position loop The analog voltage is subdivided 65536-fold with a 16-bit D/A converter. This
resolution for results in a smallest voltage step of 0.15 mV.
analog axes This results in the voltage DU per position error or following error sa:
The control outputs one voltage per position error.

10 000 [mV]
ΔU = --------------------------------
S a [µm]

If DU is divided by the smallest possible voltage step (0.15 mV) the number n
of possible voltage steps per position error is attained.

1408 HEIDENHAIN Technical Manual TNC 640


6.17.26 Weakened-field operation

General
information
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
ampVoltProtection 401205

The parameter object CfgPowerStage is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

Asynchronous motors are usually operated with a weakened field. This


operating mode can become necessary for synchronous motors if the present
inverter voltage does not suffice for the require rotational speed. Typical
applications for this operating mode are high-speed synchronous spindle
motors and "high-speed" torque motors.
For synchronous drives the operation with a weakened field is automatically
activated if the value installed – mode 2 has been entered in
MP_ampVoltProtection, and the desired speed makes it necessary. Under
certain conditions a voltage protection module must be used.
Because of their design, the HEIDENHAIN EcoDyn motors are treated as a
special case. They must always be operated with a weakened field, but no
voltage protection module is necessary.
For HEIDENHAIN EcoDyn motors, enter not installed – mode 3 in
MP_ampVoltProtection.
The speed-torque characteristics from the drive manufacturer indicate
whether weakened-field operation is necessary. Among other information,
they show the possible speeds in combination with the necessary inverter
voltage.

Note

Please note that there are other possible settings for weakened-field
operation with the CC 61xx, See "Peculiarities in weakened-field operation
with CC 61xx and CC 424" on page 1356.

January 2015 6.17 The control loop 1409


Using the voltage If the power supply fails during weakened-field operation, and the
protection module synchronous drive is running at a high speed at the same time, then the DC-
link voltage can rise rapidly (generator effect of the drive). If this voltage rises
to over 850 V, then inverters and possibly the motor itself can become
damaged. Reliable protection against this is offered by a voltage protection
module, which short-circuits the motor phases when the trigger threshold of
850 V is exceeded. (for example SM 110 or SM 130; see the "Inverter Systems
and Motors" Technical Manual).
Whether a voltage protection module is necessary for a drive depends on the
desired speed, the nominal speed N-N and the no-load voltage U0 of the drive.
See the motor table for these values.
The following formula calculates the motor speed at which a voltage greater
than 850 V would be induced by the generator effect. If the desired motor
speed is greater than the one calculated, then the voltage protection module
(SM 110 or SM 130) must be used!
850 V · Nnoml
N max =
U0 · 2

Please refer to the "Inverter Systems and Motors" Technical Manual to see
which voltage protection module is needed for which motor types (depending
on the maximum phase current of the SM 110 or SM 130).

Attention

A braking resistor, such as PW xxx or UP 110, does not offer sufficient


protection.

1410 HEIDENHAIN Technical Manual TNC 640


Setting the When setting MP_ampVoltProtection and MP_ampBusVoltage for
weakened-field synchronous motors (SM), proceed as shown by the commissioning
operation diagrams:
Default setting of MP_ampVoltProtection:

Default setting of MP_ampVoltProtection

Standard feed axis


YES
(e.g. QSY 155B)
or
asynchronous spindle MP_ampVoltProtection =
(e.g. QAN-3M) "not installed – mode 1"

No SM field weakening (1)

Synchronous spindle
(e.g. 1FE1124-4WZ) YES
or
torque motor MP_ampVoltProtection =
(e.g. Etel TMA530-100-3VD) "installed – mode 2"

SM field weakening without


speed limitation (2)

EcoDyn feed axis YES


(e.g. QSY 155B-EcoDyn)
MP_ampVoltProtection =
"installed – mode 3"

SM field weakening with


speed limitation (3)

January 2015 6.17 The control loop 1411


 Mode 1:
Enter MP_ampVoltProtection = not installed – mode 1 if you want to
operate synchronous motors without a weakened field (= (1) in the
commissioning flow chart).
Field weakening for synchronous motors is deactivated, i.e. the field
weakening current is always 0, regardless of the speed and load. Use this
entry also for all asynchronous motors. MP_ampVoltProtection is not
effective for these.
 Mode 2:
Enter MP_ampVoltProtection = installed – mode 2 if you want to
operate the synchronous motor with a weakened field (check whether a
voltage protection module must be used (= (2) in the commissioning flow
chart).
This entry is intended for synchronous spindles and torque motors in turning
mode. Here, field weakening is active in a wide speed range, i.e. the
maximum speed nmax is much higher than the rated speed nrated (nmax
>> nrated). The internal voltage Uemk at maximum speed in the motor leads
to a considerable rise of the DC-link voltage if the power supply fails, so that
the connected inverters and also the motor can get damaged. It is therefore
necessary to install a voltage protection module (e.g. SM 110, see the
"Inverter Systems and Motors" Technical Manual) as a protective measure.
The EcoDyn synchronous motors from HEIDENHAIN are operated with
limited field weakening. No voltage protection module is necessary here.
 Select from the motor table the motors with the designation QSY1xxx EcoDyn
or QSY1xxx EcoDyn EnDat for MP_motName
 Enter MP_ampVoltProtection = not installed – mode 3 if you use
HEIDENHAIN EcoDyn synchronous motors (= (3) in the commissioning flow
chart).
This entry is intended for axis motors in EcoDyn operation. Here, field
weakening is only active in a relatively small speed range, i.e. the maximum
speed nmax is not significantly higher than the rated speed nrated (nmax >
nrated). The TNC 640 calculates a voltage-dependent, maximum speed
nmaxUz. This speed ensures that the internal voltage Uemk in the motor
only leads to a limited rise of the DC-link voltage if the power supply fails.
Using a voltage protection module is therefore not necessary. Please note
that the voltage-dependent, maximum speed nmaxUz can be lower than the
maximum speed in the motor table. Please take this into consideration
during project planning.
U0 = entry U0 (no-load voltage) of the motor from the motor table
nrated = entry N-N (rated speed) of the motor from the motor table
UZ = 800 V (maximum DC-link voltage if the power supply fails)
800V
---------------- ⋅ n rated
2
n maxUz = --------------------------------------------
U0

1412 HEIDENHAIN Technical Manual TNC 640


Setting of MP_ampBusVoltage:

Default setting of MP_ampVoltProtection has been made

Regenerative module YES


(e.g. UVR 150D)?
MP_ampBusVoltage = 650 (4)

No
– Calculation of minimum line voltage (5)
MP_ampBusVoltage = – Series reactor taken into account
actual - Consideration of line voltage at the
DC-link voltage machine setup site

Stationary line voltage stable? No

MP_ampBusVoltage = smallest
value of stationary DC-link voltage (6)

YES

Line voltage stable under load? No

MP_ampBusVoltage = smallest
value of dynamic DC-link voltage (7)

YES

Setting of MP_ampBusVoltage has been made

January 2015 6.17 The control loop 1413


Regenerative module (= (4) in commissioning flow chart)
The DC-link voltage for regenerative power modules are independent of the
line voltage UNetz. On regenerative HEIDENHAIN power modules it is 650 V
(MP_ampBusVoltage = 650) and on the regenerative Siemens modules 600
V or 625 V (MP_ampBusVoltage = 600 / 625).
Actual DC-line voltage on non-regenerative power modules (= (5) in the
commissioning flow chart)
Entering the DC-link voltage in MP_ampBusVoltage is also used by the
control to ascertain the magnetizing current. At a line voltage of 400 V
(interlinked), the rectified DC-link voltage is 565 V. If the fluctuation range of
the line voltage is known (e.g. +/– 10 %), use the minimum value UNetz,Min
of the line voltage to calculate the DC-link voltage according to the following
equation:
Uz = 2 ⋅ U NetzMin
If in addition you use a series reactor—for example to comply with EMC
standard—then remember that the DC-link voltage can be reduced. So enter,
if possible, the measured value of the DC-link voltage. If a measurement is not
possible, then reduce the value calculated on the basis of the line voltage by
approx. 3 %.
Example: Line voltage UNetz = 380 V =>
MP_ampBusVoltage = 0.97 · 537 = 521.
If the line voltage in the machine's work area is less than the line voltage
during commissioning, enter the value of the DC-link voltage at its later
location during commissioning.
Stationary line voltage stable? (= (6) in the commissioning flow chart)
Any stationary fluctuating line voltage is to be accounted for by using the
smallest occurring value for calculating the entry in MP_ampBusVoltage,
insofar as it has not already been accounted for through minimum line voltage.
This ensures that the required magnetizing current is available, in particular
during the acceleration phase. An excessively large DC-link voltage could lead
to increased following error during acceleration and at high speeds.
Line voltage stable under load? (= (7) in the commissioning flow chart)
If you use an unstable power network on the machine, it can reduce the line
voltage under load (when the axes are accelerated) and therefore also reduce
the DC-link voltage. So it might be necessary to adjust the entry in
MP_ampBusVoltage for the load. Compare the behavior of one axis during
acceleration of only that axis (light load) with its behavior during acceleration
of all axes, perhaps including the spindle (maximum load). If there are no
differences in the following error or nominal current, the entry in
MP_ampBusVoltage can remain unchanged. If these signals show anything
unusual (surge in current or following error), reduce the entry in
MP_ampBusVoltage accordingly.

1414 HEIDENHAIN Technical Manual TNC 640


Feed axis (EcoDyn operation):

Setting of MP_ampBusVoltage and


MP_ampVoltProtection = "not installed—mode 3"

Setting of jerk and acceleration (at


maximum load and maximum feed
rate)

Max. Inoml < 70 % YES


of maximum current?
MP_ampVoltProtection = "not
installed—mode 3" (8); end
Alternatively
No

Measurement of the actual current Reduction of acceleration and/or jerk

Max. actual current < 90 % YES


of maximum current?
MP_ampVoltProtection = "not
installed—mode 3" (9); end

No

MP_ampVoltProtection = "not installed—mode 5" (10)

Measurement of the actual current

Max. actual current < 90 % YES


of maximum current?
MP_ampVoltProtection = "not
installed—mode 3" (10); end

No
Reduction of acceleration and/or jerk (12)

January 2015 6.17 The control loop 1415


Feed axis in EcoDyn operation – medium utilization
MP_ampVoltProtection = not installed – mode 3
(= (8) in the commissioning flow chart)
After you have found the desired acceleration and jerk for the axis concerned,
check the axis load during motion. To do so, reverse the axis up to maximum
feed rate and record the torque current Inoml on the internal oscilloscope. If
the amount of torque current never exceeds approx. 70 % of the maximum
current, there are enough reserves for the magnetizing components—the
setting of MP2160 (=2) is completed. Please note: The maximum current is
the lesser of maximum motor current and maximum power stage current.
Feed axis in EcoDyn operation – high utilization
MP_ampVoltProtection = not installed – mode 3
(= (9) in the commissioning flow chart)
However, if the torque current is greater than 70 % of the maximum current,
record the actual current Iactl on the internal oscilloscope to check whether it
approaches the maximum current. The actual current contains both the torque
current component as well as the magnetizing current component. If the
amount of actual current never exceeds approx. 90 % of the maximum
current, there are still enough reserves for the magnetizing components—the
setting of MP2160 (=2) is completed here, too.
Feed axis in EcoDyn operation – high utilization
MP_ampVoltProtection = not installed – mode 5
(= (10) in the commissioning flow chart)
With the entry MP_ampVoltProtection = not installed – mode 5 you can
activate an alternative algorithm for determining magnetizing current. This can
lower the magnetizing current. The total actual current in the field weakening
range falls with it.
Feed axis in EcoDyn operation – high utilization
MP_ampVoltProtection = not installed – mode 5
(= (11) in the commissioning flow chart)
If you succeed with MP_ampVoltProtection = not installed – mode 5 in
limiting the actual current to less than 90 % of the maximum current at any
time, there are enough reserves again for the magnetizing component—the
setting of MP_ampVoltProtection (=not installed – mode 5) is completed
here.
Feed axis in EcoDyn operation – high utilization
MP2160 = not installed – mode 5
(= (12) in the commissioning flow chart)
If the actual current stays over 90 % of the maximum current, the load on the
drive can be reduced through a reduction of the acceleration and/or jerk.

1416 HEIDENHAIN Technical Manual TNC 640


Synchronous spindle/torque motor:

Setting of MP_ampBusVoltage and MP_ampVoltProtection


= "installed—mode 2" (starting value) has been made

Set the acceleration

Is the actual acceleration YES


continuous and is the final shaft
speed reached? MP_ampVoltProtection =
"installed – mode 2" (13); end
Alternatively
No

Measurement of the actual Reduction of the ramp gradient


magnetizing current

Actual magnetizing current too No


high (max Id > 0.9 Imax)? (14)

YES
Alternatively

MP_ampVoltProtection = "installed – mode 4" Install a larger power module


(15)

Is the actual acceleration YES


continuous and is the final shaft
speed reached? MP_ampVoltProtection =
"installed – mode 4" (16); end

No

Reduction of the acceleration

January 2015 6.17 The control loop 1417


Synchronous spindle/torque motor
MP_ampVoltProtection = installed – mode 2
(= (13) in the commissioning flow chart)
When you have set the desired acceleration (and rounding, if required) for the
respective drive, test if the motor accelerates to the required final speed with
a steady increase in acceleration. "Steady increase in acceleration" means that
there are no drops in the acceleration curve. The actual acceleration usually
declines with increasing speed, however.
Synchronous spindle/torque motor
MP_ampVoltProtection = installed – mode 2
(= (14) in the commissioning flow chart)
Drops in the acceleration curve indicate an excessive magnetizing-current
consumption. You can see this if it exceeds 90 % of the maximum current of
the drive. You can display the magnetizing current on the internal oscilloscope
of the control.
Synchronous spindle/torque motor
MP_ampVoltProtection = installed – mode 4
(= (15) in the commissioning flow chart)
If the maximum current is limited by the power module (Imax of power
module << Imax of motor) it can make sense to use a more powerful power
module. As an alternative you can use the entry MP_ampVoltProtection =
installed – mode 4 to activate an algorithm to reduce the magnetizing
current.
Synchronous spindle/torque motor
MP_ampVoltProtection = installed – mode 4
(= (16) in the commissioning flow chart)
If you can attain a steady actual acceleration to the final speed with
MP_ampVoltProtection = installed – mode 4 (or by installing a larger
power module), there are enough reserves again for the magnetizing
component—the setting of MP_ampVoltProtection (=installed – mode 4)
is completed here.

1418 HEIDENHAIN Technical Manual TNC 640


MP_ampVoltProtection
Field weakening for synchronous motors
(compare to iTNC 530: MP2160.x)
Available from NCK software version: 597 110-05.
Format: Selection menu
Options: not installed – mode 1
(cf. iTNC 530: MP2160.x = 0)
Mode 1: There is no voltage-protection module (SM). No field
weakening possible.
installed – mode 2
(cf. iTNC 530: MP2160.x = 1)
Mode 2: Voltage-protection module (SM) exists. Field
weakening without speed limitation is possible. Use this mode
for synchronous spindles and torque motors, for example.
not installed – mode 3
(cf. iTNC 530: MP2160.x = 2)
Mode 3: There is no voltage-protection module (SM). Field
weakening with speed limitation is possible. Use this mode for
EcoDyn motors, for example.
installed – mode 4
(cf. iTNC 530: MP2160.x = 9)
Mode 4: Like mode 2, but with minimized total current.
not installed – mode 5
(cf. iTNC 530: MP2160.x = 10)
Mode 5: Like mode 3 but with minimized total current.
Default: Not installed
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1419


6.17.27 Motor with wye/delta switchover

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
starDelta 401302

The parameter object CfgServoMotor is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisMode = Analog)
Define different parameter sets if a wye/delta connection switchover is carried
out for an asynchronous motor. Use Modules 9434 and 9435 to activate the
parameter set for operation with wye connection or operation with delta
connection (See "Switching parameter sets" on page 656).
For the two operating modes, you can use different machine parameters for
the current and speed controller:
The switchover can be carried out during standstill or with a revolving spindle.

Danger

The contactor for the wye/delta switchover must not be switched under
load!

With Module 9173, a monitoring function dependent on the speed can be


realized for the wye/delta switchover of the spindle. You can interrogate the
current spindle status with reference to the wye/delta switchover with
Module 9174.
Using bit 11 of MP_miscCtrlFunct0 and bit 7 of MP_miscCtrlFunct1, you can
modify the sequence of wye/delta switchover on an asynchronous motor.
Performing a wye/delta connection switchover:
 Switch the drive controller off by using PP_AxDriveOnRequest.
 Use Module 9434 to select the corresponding parameter set.
 Use Module 9435 to check if this parameter set is active.
 Switch the drive controller back on by using PP_AxDriveOnRequest.

1420 HEIDENHAIN Technical Manual TNC 640


MP_starDelta
Motor with wye/delta switchover
Available from NCK software version: 597110-01.
Format: Selection menu
Options: star-connection
Wye connection
delta-connection
Delta connection
Default: star-connection
Access: LEVEL3
Reaction: RUN
Module 9173 Speed-dependent monitoring of the wye/delta switchover
Module 9173 is used to realize a monitoring function dependent on the speed
for the wye/delta switchover of the spindle.
You can use Module 9174 to determine a requirement for switching. Module
9174 supplies the current status for wye/delta operation.
Do not call the module cyclically. A single call is enough for activation,
deactivation or changing the setting.
Call:
PS B/W/D/K <Mode>
Bit 0 = 0: Monitoring off
Bit 0 = 1: Monitoring on
Useful values for <Mode> include:
xx0 = Deactivate monitoring
001 = Monitoring on, Switchover compatible
PS B/W/D/K <Switchover speed from wye to delta operation>
PS B/W/D/K <Switchover speed from delta to wye operation>
CM 9173
Error code:

Marker Value Meaning


NN_GenApiModule 0 Speed-dependent monitoring activated
Error (M4203) 1 Faulty call parameters, see error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid shaft speeds were given (e.g. wye
ErrorCode (W1022) switchover speed >= delta switchover
speed, or shaft speed negative)

January 2015 6.17 The control loop 1421


Module 9174 Read current spindle status
With Module 9174 you read a the current spindle status in reference to wye/
delta operation.
In order to receive one of the two "Request switchover" status values, you
must activate the speed-dependent wye/delta switchover via Module 9173.
Call:
CM 9174
PL B/W/D <Status>
0: Spindle in wye operation
1: Request for wye/delta switchover
2: Spindle in delta operation
3: Request for delta/wye switchover

Special procedure In special cases, it may be necessary to modify the sequence of wye/delta
for asynchronous switchover on asynchronous motors.
motors
 Demagnetize the motor during switch-off. By setting MP_miscCtrlFunct0
bit 11, the motor is demagnetized during switch-off of the drive before the
switching process. HEIDENHAIN recommends setting bit 11 (bit 11 = 1)
only if the residual magnetism of the motor leads to problems during
switching (e.g. "overcurrent" error message of the power module during
switching).
 Since bit 2 of the Mode word of PLC Module 9173 is not supported by the
TNC 640, bit 7 of MP_miscCtrlFunct1 can alternatively be used to set
whether readiness of the current controller is to be waited for during a drive-
on after wye/delta switchover.

MP_miscCtrlFunct0
Special controller functions
(compare to iTNC 530: MP2222.x)
Format: Number
Input: Bit 11 = 0: Not active (recommended)
Bit 11 = 1: The motor is actively demagnetized when the drive
is switched off before wye/delta switchover.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_miscCtrlFunct1
Special controller functions
Format: Number
Input: Bit 7 = 0: Wait for the readiness of the current controller when
the drive is switched back on after wye/delta switchover.
Bit 7 = 1: Do not wait for the readiness of the current controller
(recommended)
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

1422 HEIDENHAIN Technical Manual TNC 640


6.17.28 Speed-dependent switching of the PWM frequency

Note

This function is only available if the CC 61xx, UEC 11x or CC 424 controller
unit is used!

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motSpeedSwitchOver 401318
motSpeedSwitchBack 401319

This function is used with high-speed spindle drives. This switchover is only
possible for double-speed control loops. (Software option)
In MP_motSpeedSwitchOver and MP_motSpeedSwitchBack, a speed-
dependent hysteresis for switching the PWM frequency is specified. It only
takes effect if the value in MP_motSpeedSwitchBack is less than the value
in MP_motSpeedSwitchOver.
This function is associated with MP_iCtrlPwmType and MP_iCtrlPwmInfo.
Only if MP_iCtrlPwmType = 2, and MP_ampPwmFreq ≤ = 5 kHz, does the
switching of the PWM frequency take effect. Please note that the adjustment
of the current controller (MP_iCtrlPropGain, MP_iCtrlIntGain) is based on
the lower PWM frequency ≤ 5 kHz. Adaptation of the current-controller
parameters and consideration of the power-module derating are performed
automatically.
Using this function provides several benefits:
 At lower speeds and therefore a lower PWM frequency, the power module
provides a comparatively high current. This results in a relatively high
maximum motor torque.
 On the one hand, losses due to harmonics in the motor become more
important as the speed increases, and on the other hand, the relationship
between the electrical frequency and the PWM frequency worsens. These
two disadvantages can be counteracted by increasing the PWM frequency.
The resulting reduction of the current normally is insignificant, since in part
due to motor characteristics, very high motor currents are mostly no longer
possible or needed at higher speeds.
Note

The speed-dependent switching of the PWM frequency is only permitted


with power modules from HEIDENHAIN.

Danger

Speed-dependent switching of the PWM frequency with non-HEIDENHAIN


power modules can lead to malfunctions, and possibly to damage of the
power modules. Therefore, only use this function with power modules
from HEIDENHAIN.

January 2015 6.17 The control loop 1423


When determining the optimum switching speed for the PWM frequency, you
should consider that the maximum motor current decreases as the speed
rises, due to the finite DC-link voltage.
The current for the drive depends on the maximum permissible motor current
and power-module current. The smaller of the two values limits the current for
the drive. The value of the maximum power-module current is reduced by
approx. 30 % because of the derating when doubling the PWM frequency.
The optimum switching speed results from the intersection of the maximum
current curve of the motor with the maximum current curve of the power
module for the high PWM frequency. You can determine the maximum
current curve of the spindle motor by using the TNCscopeNT software.
Record the current Inoml/S in dependency of the speed. The spindle must be
accelerated to the maximum speed so that the derating behavior can be seen
in the curve. The figure shows the behavior when the values entered for the
switching speed (MP_motSpeedSwitchOver and
MP_motSpeedSwitchBack) are too low. This then results in a speed range
where the current for the motor is less than the permitted and maximum
current, resulting in inconsistencies in the motor's torque behavior.

• 1: Red line: Maximum current for the drive, resulting from the entries in
MP_motSpeedSwitchOver and MP_motSpeedSwitchBack.
• 1: Broken line:
Maximum possible current for the drive (Imax of motor)
• 2: Switching point for the PWM frequency set too low
• 3: Optimum switching point for the PWM frequency
• 4: Maximum power-module current at low PWM frequency
• 5: Maximum power-module current at high PWM frequency
(Imax of power module)

1424 HEIDENHAIN Technical Manual TNC 640


Summary:
• The speed is switched at the intersection of the two current curves
(Imax of motor, Imax of power module) so that no inconsistencies in the
torque behavior of the motor occur.
• For better controllability (no harmonics at higher PWM frequencies), it
might already make sense to switch at lower speeds.
• The best speed to switch at must be determined by experimenting. The
value above should serve as an initial value.

Overcurrent The momentary current is monitored by the CC, and the following errors now
switch-off lead to an immediate cutoff:
 Excessive actual current: If the actual current exceeds the maximum
permissible current (depending on the power module and motor), it triggers
the error 0xC3C0 (Motor current too high).
 Excessive current offset: If the offset current exceeds the permissible
threshold (50 % of the maximum current), the error 0xC600 (Current offset
too high) is triggered. One possible reason could be a phase to ground fault.

MP_motSpeedSwitchOver
Shaft speed for PWM switchover
(compare to iTNC 530: MP2186.x)
Available from NCK software version: 597110-03.
Format: Number
Input: 0 to 100 000 [rpm] with max. 9 decimal places
Specifies the shaft speed at which the PWM frequency is
switched to twice the PWM frequency. Use only in combination
with HEIDENHAIN power modules!
Function only available in combination with CC 6106 or CC 424.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_motSpeedSwitchBack
Shaft speed for PWM switchover
(compare to iTNC 530: MP2188.x)
Available from NCK software version: 597110-03.
Format: Number
Input: 0 to 100 000 [rpm] with max. 9 decimal places
Specifies the shaft speed at which the factor 2 PWM frequency
is switched to a factor 1. Use only in combination with
HEIDENHAIN power modules!
Function only available in combination with CC 6106 or CC 424.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1425


6.17.29 LIFTOFF function

General
information
Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of the machining channel]
CfgLiftOff
on 201401
distance 201402
operand 201403

During an NC stop, a lift-off movement in the direction of the tool axis is


superimposed over the deceleration along the path. This movement for
protecting the workpiece is referred to as LIFTOFF.
LIFTOFF is possible in case of:
 An NC stop, if the prerequisites described below are given: The distance by
which the tool is lifted off can be configured in MP_distance.
 Power failure and other error reactions by the CC intended for this purpose
if the constraints described below are maintained. The distance by which
the tool is lifted off can be configured in MP_distance.
(This function is not available with analog control without the CC)
 PLC error message, for which the reaction NC-LIFTOFF is contained in the
PET table. Distance by which the tool is lifted off: MP_distance.

Note

If there is an EMERGENCY STOP, no LIFTOFF is performed. The servo


drives will then be decelerated along the emergency braking ramp as
quickly as possible.

The following conditions must be met for a LIFTOFF to be performed:


 LIFTOFF is enabled by NC program via M148 = active (M149 deactivates
M148)
 Tool is enabled in the tool table via column LIFTOFF = Y
 The machine tool builder enables the LIFTOFF function via MP_on = on
 The PLC releases the LIFTOFF function with NC stop via the PLC marker
defined in MP_operand (optional)
 The PLC must not revoke the feed rate enable for any axis of the working
channel (PP_AxFeedEnable)
The tool is lifted off the path with a feed rate of 1 m/min.

1426 HEIDENHAIN Technical Manual TNC 640


MP_on
Switching on/off lift-off movements during NC stop
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Lift-off movements active
off
Lift-off movements not active
Default: off
Access: LEVEL3
Reaction: RUN

MP_distance
Maximum retraction height for NC stop
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 2 [mm] with max. 9 decimal places
Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

MP_operand
PLC operand for suppressing the LIFTOFF function
Available from NCK software version: 597110-05.
Format: String
Input: Max. 80 characters
Name or number of the PLC operand (logical marker or input)
through which the lift-off function can be suppressed by the
PLC program during an NC stop.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1427


LIFTOFF in case of
power failure

Note

This function is only available if the CC 61xx, UEC 11x or CC 424 controller
unit is used!

If the power fails and LIFTOFF is enabled (M148 must be active, column
LIFTOFF in the tool table = Y, PLC: permitted via MP_operand), an attempt is
made to lift the tool from the contour by the distance given in MP_distance
with the help of the remaining DC-link energy.
Certain conditions must be maintained before and during LIFTOFF:
 The 24 V power supply must be maintained for at least 1 second (UPS for
24 V, or buffer capacity or capacitor). HEIDENHAIN offers the PSL 13x or
CML 110 (Capacitor Module for Low Voltage) for this.
 The current and speed controllers may not be switched off (e.g. via PLC
Module 9161)
 AC-fail monitoring (MP_powStatusCheckOff Bit 7 = 0) and/or Uz
monitoring are/is active (MP_powStatusCheckOff Bit 9 = 0). Both
monitoring functions lead to LIFTOFF if they are activated and respond.
HEIDENHAIN recommends activating both monitoring functions to provide
the quickest reaction possible in case of a power failure or a failure of the
power supply module.
 The wye-delta contactor combination may not fail, otherwise the spindle
would not be controllable during LIFTOFF.
With the CC 61xx and the UEC 1xx, the LIFTOFF function can also be
performed if regenerative or non-regenerative UV power supply modules are
being used. In this case, the controller unit itself must measure the Uz dc-link
voltage. This results in the following voltage thresholds for LIFTOFF: At a
voltage of 400 V the initialization of LIFTOFF is reported to the MC and the
spindle is retracted from the workpiece, at a voltage of 350 V the spindle is
decelerated systematically in order to maintain the dc-link voltage, at a voltage
of 300 V the powerfail signal is set by the controller unit.

Note

LIFTOFF only functions with HEIDENHAIN inverters.

Danger

 Limit-switch monitoring is not active during LIFTOFF.


 LIFTOFF must be deactivated while exchanging tools.

1428 HEIDENHAIN Technical Manual TNC 640


6.17.30 Torque Ripple Compensation (TRC)

General
information

Note

This function is only available if the CC 61xx, UEC 11x or CC 424 controller
unit is used!

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compTorqueRipple 401412
compSwitchOff 401414

Certain motors with permanent magnets (linear, torque and some


synchronous motors) have an increased, position-dependent variation of the
motor torque (not QSY motors from HEIDENHAIN). This can be the result of
two things:
 During idle running, the cogging due to attractive forces of the permanent
magnets
 When under load, the torque ripple from higher harmonics, resulting from
the opposing electromotive forces (generator effect)
In practice, both causes always occur together, i.e. the torque of the motor is
subject to periodic oscillations. This can have a negative effect on the
controllability of the motor, which can result in a greater following error, and
under circumstances, lower surface quality of the workpiece.
To compensate for the cogging, a compensation current ascertained
specifically for each motor can now be added.

Acceleration
feedforward

TRC

Position Current Machine


controller Speed control controller Power stage Motor slide

Nominal
position

Actual current

Actual speed

Actual position

January 2015 6.17 The control loop 1429


Activating TRC TRC can only be activated via a special compensation file. The settings in this
file can only be made with the TNCopt commissioning software from
HEIDENHAIN (as of version 2.3). Please refer to the documentation for the
TNCopt software. The compensation current is determined with a special
method for measurement, and the parameters for calculating this
compensation are stored in a compensation file on the control. The TNC 640
then takes these parameters into account when calculating the controller
parameters.
 Directory: The TNC 640 saves the compensation files in the directory
configured under
Paths / CfgOemPath / MP_oemTable.
Default: %OEM%\table
 File name: xx_<Motor_name>.TRC
• xx: Index of the axis (e.g. 00 = 1st axis, X axis)
• <Motor_name>: Name of the motor from the motor table (max. 29
characters)
• .TRC: File extension for "Torque Ripple Compensation"
An entry in MP_compTorqueRipple specifies whether torque ripple
compensation is to be performed for an axis. In this parameter, you can
configure the name of the compensation file to be used, if appropriate. If the
optional parameter MP_compTorqueRipple is not part of the configuration,
no compensation is applied for the axis concerned.
File name pattern in MP_compTorqueRipple: xx_motorname.ttt:
 xx
Index of the axis, e.g. 00 = 1st axis, X axis
 motorname
Name of the motor from the motor table
 ttt
File extension
Example:
MP_compTorqueRipple: 00_QSY96A.trc

Note

 The TRC function can only be used with PWM frequencies up to 5 kHz.
 A TRC file can only be used on the control on which the adjustment has
been made.
 Re-create the TRC file if the motor or even the encoder is replaced.
 A TRC file can only be generated for synchronous motors or for linear or
torque motors
 The TRC file must be generated with TNCopt

1430 HEIDENHAIN Technical Manual TNC 640


Switching off TRC The TRC can be switched off by setting the machine parameter
MP_compSwitchOff, bit 0.

TRC issues when A TRC file can only be used on the control on which the adjustment has been
replacing the main made. To ensure this, the TRC files include a so-called machine identification
computer that is formed depending on the main computer. If during servicing the main
computer has to be replaced, the machine identification must be adjusted in
the TRC files. The TNC detects this automatically and displays the Machine
identification incorrect dialog. When you press the displayed YES soft
key, the machine identification of the new main computer will be transferred
to the TRC file. As long as the dialog has not been confirmed with YES or
canceled with NO, TRC compensation will not be active.

MP_compTorqueRipple
Name of the file for "torque ripple compensation" (TRC)
(compare to iTNC 530: MP2260.x)
Available from NCK software version: 597110-03.
Format: String
Input: xx_<MotorNamefromMotorTable>.TRC (generated in TNCopt)
No entry: No compensation
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_compSwitchOff
Switch-off of compensation in speed controller or current
controller
(compare to iTNC 530: MP2261.x)
Format: String
Input: Binary value
Bit 0: Torque ripple compensation
0: Torque ripple compensation is switched on
1: Torque ripple compensation is switched off
Bit 1: Kinematic compensation
0: Kinematic compensation switched on
1: Kinematic compensation switched off
Bit 2: Position-dependent torsion compensation
0: Position-dependent torsion compensation switched on
1: Position-dependent torsion compensation switched off
Bits 3..31: Reserved
Default: %00000000000000000000000000000000
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1431


6.17.31 Torsion compensation

Note

This function is only available if the CC 61xx, UEC 11x or CC 424 controller
unit is used!

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compTorsionFact 401413

Use MP_compTorsionFact to perform a torsion compensation between the


position and speed measuring systems.
The torsion compensation regulates the difference in position that results
from the elasticity between the motor (rotary encoder) and the position
measuring system. An additional torsion motion is added to the speed
controller.
In MP_compTorsionFact, you enter a drive-specific factor for the elasticity
constant. The block diagram shows how the torsion compensation works.

• 1: Torsion compensation
• 2: Position controller
• 3: Speed controller
• 4: Current controller – power module
• 5: Motor
• 6: Elastic coupling
• 7: Machine
• 8: Linear encoder

1432 HEIDENHAIN Technical Manual TNC 640


Adjusting MP_compTorsionFact only makes sense when all other
feedforward-control parameters under CfgControllerComp have been
adjusted. Moreover, torsion compensation via MP_compTorsionFact should
not be used if stick-slip friction is only compensated via MP_compFrictionT1
(MP_compFrictionT2 = 0).
Torsion compensation via MP_compTorsionFact is now also added in
machines without position encoder if a value that is not equal to 0 is defined
in MP_compTorsionFact. The adjustment remains unchanged, i.e. a position
encoder must be used. However, the compensation values can now also be
used for dimensionally identical machines without position encoder. The
compensation value is filtered before it is added. This improves the behavior
of the axis after direction reversal, for example.

MP_compTorsionFact
Torsion compensation between position encoder and speed
encoder
(compare to iTNC 530: MP2640.x)
Available from NCK software version: 597110-03.
Format: Number
Input: 0.001 to 30 [µm/A] with up to 9 decimal places
0: Compensation not active
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1433


6.17.32 Crossover Position Filter (CPF)

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compActDampFreq 401416

The CPF can be used only in dual-encoder systems with rotary and position
encoders. In such systems, the CPF is used to passively dampen certain
machine vibrations caused by the drive components in the drive chain. In order
to stabilize the position control loop in such systems with resonances, the
position signal from the position encoder, which is filtered through a low-pass
filter, and the position signal from the motor speed encoder, which is filtered
through a high-pass filter, are added and made available to the position
controller as actual position value. The filter frequency (separation frequency)
is set in machine parameter MP_compActDampFreq for this. The typical filter
frequency values in MP_compActDampFreq are between 20 Hz and 80 Hz.
The separation frequency can be determined with the position-controller Bode
diagram of the TNCopt PC tool. The frequency at which an excessive
resonance occurs is to be selected as the value for MP_compActDampFreq.
After the separation frequency has been defined, the kV factor can be
increased.
The block diagram shows how the crossover position filter works:

 1: Crossover position filter (CPF) with high-pass (HP) and low-pass (LP)
 2: Position controller
 3: Speed controller
 4: Current controller – power module
 5: Motor
 6: Machine
 7: Linear encoder

1434 HEIDENHAIN Technical Manual TNC 640


The two Bode diagrams illustrate the procedure for setting the separation
frequency for the CPF. Diagram 1 shows that the excessive resonance is
reached at 15 Hz. Diagram 2 shows the frequency response after 15 Hz has
been entered in MP_compActDampFreq.

January 2015 6.17 The control loop 1435


MP_compActDampFreq
Separation frequency for Crossover Position Filter (CPF)
(compare to iTNC 530: MP2609.x)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 300 [Hz] with up to 9 decimal places
0: CPF not active
20 to 80 [Hz]: Typical values
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1436 HEIDENHAIN Technical Manual TNC 640


6.17.33 Dynamic Precision, Dynamic Efficieny

Dynamic Efficiency With the concept of Dynamic Efficiency, HEIDENHAIN combines innovative
TNC functions that help the user to make heavy machining and roughing more
efficient while also enhancing process reliability. The software functions
support the machine operator but also make the manufacturing process itself
faster, more stable and more predictable—in short, more efficient. Dynamic
Efficiency helps to increase the metal removal rate and reduce machining
time.
Dynamic Efficiency includes software features that can be used individually or
combined with each other:
 ACC—reduces chatter tendencies and permits higher feed rates and greater
infeeds, see page 1478.
 AFC—controls the feed rate depending on the machining situation, see
page 1438.
 Trochoidal milling—a function for the roughing of slots and pockets that
eases the load on the tool. For more information see the User's Manual of
your control.

Dynamic Precision The concept of Dynamic Precision comprises optional functions for
HEIDENHAIN controls that effectively reduce the dynamic errors of machine
tools. They improve a machine’s dynamic behavior, attain higher stiffness at
the TCP and therefore permit milling at the limit of technological feasibility
regardless of the machine’s age, the load and the machining position. And all
this is done without any modification of the machine’s mechanical properties.
The functions of Dynamic Precision are available as options for controls with
digital closed-loop control from HEIDENHAIN. They can be applied individually
as well as in combination:
 CTC—compensation of acceleration-dependent position errors at the tool
center point, thereby increasing accuracy in acceleration phases, see page
1459.
 AVD—active vibration damping for better surfaces, see page 1481.
 PAC—position-dependent adaptation of control parameters, see page 1464.
 LAC—load-dependent adaptation of control parameters enhances accuracy
regardless of load and age, see page 1465.
 MAC—motion-dependent adaptation of control parameters, see page 1476.
Use constraints:
To configure the individual features covered by the term "Dynamic Precision",
use the TNCopt PC tool from HEIDENHAIN. Please refer to the User's Manual
for TNCopt. For the configuration, so-called function blocks are used. For each
axis, a maximum of five such function blocks can be used to adapt the
parameters for LAC, PAC and MAC. In addition, you can use up to five other
function blocks to adapt the filters for LAC, PAC, MAC and CTC. Furthermore,
you can configure up to 4 function blocks for AVD per controller unit.

January 2015 6.17 The control loop 1437


6.17.34 AFC – Adaptive Feed Control (option #45)
With adaptive feed control (AFC, software option #45), the contouring feed
rate is regulated depending on the respective spindle power in percent. This
is done with the help of the feed-rate override factor, which is normally
determined in the PLC by the override potentiometer setting. If AFC is active,
then this factor is no longer derived from the potentiometer, but rather from
the spindle power and other process data, and the contouring feed rate is
calculated. The TNC then automatically changes the value of the feed-rate
override factor, with the goal of maintaining the spindle power at a constant
reference value.
The main benefit of this process control, along with ensuring the quality of the
machining procedure (e.g. detection of cutter breakage or wear), is the
optimization of the machining time, which is intended to ensure or improve
productivity and efficiency. Due to changes in the material (solid inclusions),
deviations in oversizes and tool wear, there is a risk of overloading the spindle.
AFC can be effective in counteracting this.
Benefits of adaptive feed control:
 Optimizing the machining time:
By regulating the feed rate, the attempt is made to maintain the learned
maximum spindle power over the entire machining time.
The total machining time is reduced by increasing the feed rate in machining
zones where less material is being removed.
 Tool monitoring:
The life of a tool is increased by reducing the feed rate when the maximum
spindle power learned is exceeded, until the time when this reference
spindle power is reached again.
If it is detected that the maximum spindle power was exceeded and at the
same time the minimum feed rate could not be maintained, a programmed
switch-off reaction is performed. This avoids subsequent damage due to
cutter breakage or wear.
 Protection of machine mechanics:
Damage to the machine due to overload can be avoided by reducing the
feed rate ahead of time and with appropriate switch-off reactions.
 Documentation by capturing and saving the learning and process data.
Limitations regarding the use of AFC:
 AFC cannot be used with analog spindles.
 AFC cannot be used in volts-per-hertz control mode.

1438 HEIDENHAIN Technical Manual TNC 640


The following graphic schematically shows the principle of adaptive feed
control:

 1: Feed rate
 2: Air cut
 3: Beginning of machining
 4: Feed-rate calculation during machining
 5: Feed rate calculated by AFC
 6: Feed rate programmed in the NC program
 7: Cutting depth
 8: Workpiece

Operating states of The two main operating states of adaptive feed control are Learning and
AFC Controlling and Monitoring.

January 2015 6.17 The control loop 1439


General A learning phase must be completed before AFC can be activated. This
information learning phase serves to ascertain the corresponding reference power of the
about learning spindle PREF for each individual machining step. The learning phase is divided
into one or more learning sections. The beginning of a learning section or
machining section is defined by the output of M-function M03 or M04 (Spindle
on right/left) and corresponding FN 17 function, ID 622 NR0, in an NC program
after a TOOL CALL has been processed. The end of the cut is defined by the
spindle stop (M function M05) and associated FN 17 function. A
corresponding NC macro M3.H, M4.H and M5.H can be assigned to these
spindle M functions in the CfgPlcMStrobe configuration data (System/PLC) .
At the beginning of cutting with M3 or M4, the FN17 block
FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+1 must be programmed in the NC
program or M function macro for starting a cut after the M function.
At the end of cutting with M5, the FN17 block
FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+0 for ending a cut must be
programmed before M5. A new cut is started with each FN 17:SYSWRITE ID
622 NR0 IDX 0.0 =+1 and is ended with FN 17:SYSWRITE ID 622 NR0 IDX 0.0
=+0.
With the help of appropriate macros, AFC can be used without having to
change the existing NC program. The only restriction is that no M-function
macros can be executed with active radius compensation. Before calling the
macros, the radius compensation must be deactivated, and reactivated after
macro execution, if necessary.
The beginning of another section can be defined for the same tool with
another call of M03 or M04. In order to exclude a tool from AFC (e.g. touch
probe, tap, …), the AFC column must be undefined (empty) in the TOOL.T tool
table. Otherwise, you must enter the identifier of the control strategy from the
global control parameter table AFC.TAB in this column. This identifier selects
the control parameter block from the table AFC.TAB.
The data ascertained during each learning section of the reference machining,
especially the maximum spindle power output, are saved with a generated
cutting number in a table. They form the foundation for the subsequent
controlled machining with active AFC.
As an alternative to the generated cutting number, the value in NR can be used
as the cutting number by programming discrete FN17 cutting blocks.
However, the programmer must then ensure that the numbers are entered
correctly and sequentially. The learning phase can consist of an entire
machining process with multiple tools, but it also can also be stopped after a
certain time in which the important parameters for the respective tools have
been determined. The learning phase can be ended either manually via a soft
key or automatically after a programmed time for the machining step has
expired.

1440 HEIDENHAIN Technical Manual TNC 640


At any time during the teach-in cut, you can change the machining feed rate
with the feed-rate override potentiometer any way you want, and so influence
the ascertained reference load. The file generated in this step is given the
name of the selected NC program and is assigned the .AFC.DEP file extension.
.DEP is appended because this file depends on an existing .H file. E.g. an NC
program with the name MACHINING.H results in a file with the name
MACHINING.H.AFC.DEP. This file, and the global parameter table
\table\AFC.TAB as well, are set up as freely definable tables so that a form
view is also possible (switch via soft key). The table format should not be
edited.
Details of the learning phase:
 The spindle power output is only recorded once the nominal speed has been
reached, since the spindle is operated at a constant speed, and acceleration
and braking phases are not included in the machining.
 Saving of the spindle power when the tool is not cutting (idle power) order
to later evaluate only the part of the process generated during the actual
machining.
 Detection of entry into the material by the cutter when the idle load is
exceeded by 2%.
 Saving of the spindle power maximum value of a learning section as
reference for the control.
 Saving of the machining time of each learning section.
 Monitoring for stationary spindle or deviation from the nominal speed during
active feed not at FMAX.

Note

 Below a certain minimum tool diameter (e.g. 5 mm), in some


circumstances it may not make sense to use AFC, since the actual data
may become too small for safe control. This can be specified in the tool
table by leaving the AFC column empty.
 If it becomes necessary in other cases to disable AFC for a machining
step, there are two possibilities:
• By leaving the AFC column empty in the tool table.
• By deactivating AFC via targeted switch-off with FN 17:SYSWRITE ID
622 NR0 IDX 0.0 =+0 in the NC program or a corresponding M-function
macro. If you use the M-function macros for M3 and M4, then the FN
17 block must follow the call of the M-function macro. This way you
end the cut for AFC before machining actually takes place.

January 2015 6.17 The control loop 1441


If the learning process is ended during a learning step, either via the EXIT
LEARNING soft key or because the specified time (FN17 – ID622, see next
section) has expired, the control immediately begins regulating the feed rate
adaptively. The value determined up to that point is used as the spindle
reference value, and is entered in <NAME>.H.AFC.DEP. This is useful if it can be
seen that the spindle power output will not increase significantly any further
in this step.
With FN 17: SYSWRITE ID 622 NR0 IDX1.0 = <value> you can transfer a
<value> for the time in seconds after which the teach-in cuts are ended
automatically. The function behaves as if the EXIT LEARNING soft key had been
pressed after the appropriate time. This function is deactivated again by
programming <value> = 0.

General
information
about closed-loop Settings in the configuration editor MP number
control
System
CfgAfc
plcControl 120002

The maximum spindle power was determined for each learning and machining
step. By modifying the feed rate factor within programmed limits (e. g. 70 %
... 130 %) the software during machining continuously tries to approach the
current spindle power value to the reference value.
This way the feed rate can be increased for areas where only a small amount
of material is being removed, and a slower feed rate can be used when there
is more material than usual or the cutter is becoming dull. This protects the
spindle drive and the tool from overload. If a disturbance in the process occurs
during machining, a programmable switch-off reaction is performed. This
occurs if the feed rate falls below the minimum feed-rate factor (e.g. 70%) at
the reference spindle load. You can then assume that the cutter has become
dull or has broken. If the feed rate falls below the defined value of 30% of the
programmed feed rate, an NC stop is performed. This defined error reaction
cannot be influenced, and occurs independently of the programmed overload
reaction.
Controlling can be switched off and on again via the AFC OFF/ON soft key at any
point during machining. Controlling is also always switched off if the value set
for the override potentiometer is manually reduced by more than 10%. The
potentiometer is then effective again instead of AFC. Adaptive feed control
must then be switched on again via soft key. A potentiometer value less than
or equal to 50% is also always effective, i.e. AFC is inactive then. If the
potentiometer value exceeds these 50% while AFC is on, then AFC becomes
active again.
The maximum spindle power obtained while controlling is active is ascertained
and saved for later evaluation. The machining time of each machining section
is also saved.
The events AFC ON, AFC OFF, potentiometer manually changed -> AFC OFF
are entered in the log of the TNC.

1442 HEIDENHAIN Technical Manual TNC 640


Tasks of AFC in each machining section:
 Detection of entry into the material by the cutter when the idle load is
exceeded by 2%. Regulate to entry speed until a path corresponding to the
cutter radius has been traversed, but at most 600 ms.
 Calculation of the optimum feed-rate factor.
 Monitoring for overload and switch-off reaction.
 Saving the maximum spindle power value for the evaluation.
 Detection of exit from the material by the cutter when the power is below
the programmed exit load, and regulation to the exit speed until a path
corresponding to the cutter radius has been traversed.
 After detection of a traverse without cutting action, regulate to the
programmed idle feed rate.
 AFC is not in effect when machining at rapid traverse, since FMAX, and
possibly FMAX override, are used in the IPO.
As an alternative method for controlling with AFC, you can use the value in
PLC double word PP_ChnAfcPlcControl [value in tenths of percent] as control
input variable, instead of using the spindle power output in percent. For a
spindle power of 50%, enter 500 in PP_ChnAfcPlcControl (0.1% corresponds
to the value 1). This may be necessary for individual applications (e. g. peck-
drilling).
The control input variable in PP_ChnAfcPlcControl must be calculated in the
PLC program, which can best be done with a fast PLC cycle (e.g. 15 ms). Also,
when PP_ChnAfcPlcControl is used, no idle load for the spindle is
determined and no transitional period for the tool entering or exiting the
workpiece is considered.
This functionality must be activated via the MP_plcControl machine
parameter (CfgAfc). An entry in PP_ChnAfcPlcControl is mandatory.

MP_plcControl
Activate/deactivate the PLC word marker as an AFC input
quantity
Available from NCK software version: 597110-06.
Format: Selection menu
Options: off
AFC control input variable from controller
(spindle power in percent)
on
AFC control input variable from PLC
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

January 2015 6.17 The control loop 1443


Automatic If an NC program is selected for machining and started, and if AFC is active,
selection of the then it is first checked whether there is an associated <NAME>.AFC.DEP file in
Learning / the same directory as the NC program. If this is the case, then the data in this
Controlling status file are immediately used as control parameters, and machining is performed
with adaptive feed control. If this file does not exist, the first machining run is
used as the learning phase and the file is created. If the AFC file is determined
to be incomplete during machining, the missing steps are automatically
performed in the Learning mode, thereby generating the missing data.
When learning is deactivated (M05, manually via soft key, or with FN 17), the
learned data is saved and the status of this data block is set to "Controlling."
During Controlling, the data blocks are read in the same sequence they were
learned, the step numbers are evaluated and other parameters (tool number,
index) are checked to see if they match.
The current status and the mode of the AFC adaptive feed control is saved in
the NN_ChnAfcMode PLC double word.
 NN_ChnAfcMode = 0: AFC inactive (OFF)
 NN_ChnAfcMode = 1: AFC in learning phase
 NN_ChnAfcMode = 2: AFC in closed-loop control

1444 HEIDENHAIN Technical Manual TNC 640


Additional Further FN 17 functions are available for software option 45 "AFC - Adaptive
FN functions Feed Control":
 Presetting a reference power. The learning phase can thereby be omitted.
The reference power is specified in percent with respect to the rated power
of the spindle. Example:
FN 17:SYSWRITE ID 622 NR0 IDX 3.0 = 85
 Direct switchover from the learning phase to adaptive feed control.
A prerequisite for this is that a valid reference load has been reached in the
meantime. Example:
FN 17:SYSWRITE ID 622 NR1 IDX 3.0 = 0
 Activating cut-based tool-wear monitoring.
The monitoring limit is specified in percent of the reference power. If the
spindle power exceeds the limit value for monitoring, the
NP_ChnAfcToolWearLimit PLC marker is set. The PLC can thus trigger
specific reactions, such as locking the tool, which leads to a tool change
Example:
Monitoring limit at 20% with a reference power of 50%. In this way, 60%
of the rated power of the spindle is monitored:
FN 17:SYSWRITE ID 622 NR0 IDX 4.0 = 20
 Activating cut-based spindle-load monitoring.
The monitoring limit is specified in percent of the reference power. If the
spindle power exceeds the monitoring limit, an NC stop is triggered.
Monitoring limit at 40% with a reference power of 50%. In this way, the
system monitors for 70% of the rated power of the spindle:
FN 17:SYSWRITE ID 622 NR0 IDX 5.0 = 20

The PLC can read the double word NP_ChnAfcError to determine why the
NC stop was triggered:
• NP_ChnAfcError = 1 or 2:
NC stop due to falling below the permissible minimum power
• NP_ChnAfcError = 3:
NC stop due to detected cutter breakage (FN 17 function ID 622 IDX
6.0)
• NP_ChnAfcError = 4:
NC stop because exceeding of the spindle load was detected (FN 17
function ID 622 IDX 5.0)

January 2015 6.17 The control loop 1445


 FN17 – ID 622 IDX 6.0
The function FN 17: SYSWRITE ID 622 NR<> IDX 6.0 is used to activate
spindle load monitoring independently of the cut in order to detect cutter
breakage. The monitoring limit is specified in percent with respect to the
rated power of the spindle. If the value exceeds or falls below the
monitoring limit, an NC stop is triggered.
A filter constant must be specified in parameter NR<> in order to avoid an NC
stop when the tool exits the material. Only abrupt changes in spindle power
output that are typical of tool breakage may be evaluated here. The filter
constant can be between 1 and 60 ms. If a constant of 0 is entered, the
default value 10 ms will be used.
The values for the filter constant and the tolerance limit must be determined
for each individual use case. Example:
Filter constant of 15 ms, tolerance limit for cutter breakage at 10% of the
rated power of the spindle:
FN 17:SYSWRITE ID 622 NR15 IDX 6.0 = 10

The PLC can read the double word NP_ChnAfcError to determine why the
NC stop was triggered:
• NP_ChnAfcError = 1 or 2:
NC stop due to falling below the permissible minimum power
• NP_ChnAfcError = 3:
NC stop due to detected cutter breakage (FN 17 function ID 622 IDX
6.0)
• NP_ChnAfcError = 4:
NC stop because exceeding of the spindle load was detected (FN 17
function ID 622 IDX 5.0)

Note

Due to the difficult constraints in connection with setting the values for FN
17: SYSWRITE ID 622 NR<> IDX 6.0, you should only use this function after
consultation with HEIDENHAIN.

Associated files Files for machining


The following requirements are mandatory for controlling to be activated:
 An NC program must have been selected <NAME>.H
 The AFC column in the tool table must have been enabled via the
MP_columnKeys machine parameter.
 M function macro files M3.H, M4.H, M5.H (and possibly more) or cutting
definitions in the NC program.
 If macros are used, also the macro definition under System/CfgPlcMStrobe.

1446 HEIDENHAIN Technical Manual TNC 640


The three files of adaptive feed control:
File of the global control parameters: AFC.TAB
In the AFC.TAB table, which must be saved in the TNC:\table\ directory, you
enter the basic control settings the TNC should use to perform the feed-rate
control.
The data in this table are default values that are copied during the teach-in cut
to the file associated with the respective machining program, where they
serve as the basis for controlling.
The control parameters for two standard control strategies are already saved
there. Other settings can be programmed as desired.
The static control parameters that must be programmed in AFC.TAB for each
cutting data block are:

Column Function

NR Consecutive line number in the table (has no further functions)

AFC Name of the control strategy. You must enter this name in the
AFC column of the tool table. It specifies the assignment of
control parameters to the tool.

FMIN Minimum feed rate at which the TNC is to perform an overload


reaction if the feed rate falls below this value for one second.
Enter the value in percent of the programmed feed rate.

FMAX Maximum feed rate in the material up to which the TNC can
automatically increase the feed rate. Enter the value in percent
of the programmed feed rate.

FIDL Feed rate for traverse when the tool is not cutting. Enter the
value in percent of the programmed feed rate.

FENT Feed rate for traverse when the tool enters or exits the material.
Enter the value in percent of the programmed feed rate.

OVLD Desired reaction of the TNC to overload:


 M: Perform an NC-function macro defined by the OEM
 S: Immediately perform an NC stop
 F: Perform an NC stop once the tool has retracted
 E: Only display an error message on the screen
 –: Do not perform an overload reaction
The TNC conducts a shutdown response if, while closed-loop
control is active, the maximum spindle power is exceeded for
more than one second and at the same time the feed rate falls
below the minimum you defined.

POUT Spindle power at which the TNC is to detect tool exit from the
workpiece. Enter the value in percent of the learned reference
load. Recommended input value: 8%

January 2015 6.17 The control loop 1447


Column Function

SENS Sensitivity (aggressiveness) of regulation. A value between 50


and 200 can be entered. 50 is for slow control, 200 for a very
aggressive control. An aggressive control reacts quickly and
with strong value changes, but it tends to overshoot.
Recommended value: 100

PLC The value entered here is written to the word ChnAfcPlcValTab


at the beginning of a cut. The word NN_ChnAfcPlcValTab can
be evaluated in a PLC program. Depending on this, any
necessary fine adjustments to the adaptive feed control can be
performed from within the PLC program. Maximum input
range: 3 digits.

Example of an AFC.TAB:

NR AFC FMIN FMAX FIDL FENT OVLD POUT SENS PLC


0 Standard1 75 120 100 90 S 6 100 1
0 Standard2 70 130 120 95 E 6 100 2

Proceed as follows to create the AFC.TAB file (only necessary if the file does
not yet exist):
 Select the Programming and Editing operating mode.
 Select the file manager: Press the PGM MGT key
 Select the TNC:\table directory
 Create the new AFC.TAB file and confirm with the ENT key. The TNC displays
a list with table formats.
 Select the AFC.TAB table format and confirm with the ENT key. The TNC
creates the table using the Standard1 and Standard2 control strategies.

1448 HEIDENHAIN Technical Manual TNC 640


Settings file with the control parameters: <name>.H.AFC.DEP
This file is automatically created during the learning phase, and filled with
values. It contains all control information for the cuts that occur in the NC
program. You can manually change all entries, except TNR and IDX, at any
time in order to adapt the control parameters specifically to the NC program.
Call the <name>.H.AFC.DEP file by pressing the SETTINGS TABLE soft key. It
contains the following additional information:

Colum Function
n

NR Number of the machining step

TOOL Number or name of the tool with which the machining step was
made (not editable)

IDX Index of the tool with which the machining step was performed
(not editable)

PREF Reference load of the spindle. The TNC measures the value in
percent with respect to the rated power of the spindle.

N Code whether a tool number (0) or tool name (1) was


programmed in the NC program.

POUT Exit load of the spindle. The TNC uses the value as a percent of
the reference load PREF of the spindle.

ST Status of the machining step


 L: (= Learning) In the next program run, a teach-in cut is
recorded for this machining step. The TNC overwrites any
existing values in this line.
 C: (= Controlling) The teach-in cut was performed
successfully. In the next program run, AFC will control the
feed rate.

AFC Name of the control strategy used. If the control strategy given
in the tool table is not in AFC.TAB, then this column contains
the entry default. Default settings are then used for adaptive
feed control.

Example of a <name>.H.AFC.DEP file after a successful teach-in cut:

NR TOOL IDX FMIN FMAX FIDL FENT OVLD POUT PREF SENS ST PLC AFC
0 2 0 60 140 150 70 - 5 64 100 C 0 Standard

January 2015 6.17 The control loop 1449


Proceed as follows to select (and edit, if appropriate) the <name>.H.AFC.DEP
file.
 Select the Program Run, Full Sequence operating mode
 Shift the soft-key row
 Select the table of AFC settings with the AFC SETTINGS soft key
 Enter any improvements in the table, if necessary.
In the operating mode Programming and Editing the DELETE LINE soft key is
also available. However, only use this function if you specifically want to
delete an incorrectly created line from the <name>.H.AFC.DEP control settings
table.
This may be reasonable when lines were created in the table, which would not
have been created during a normal program run. Such lines might, for
example, be produced when the program run is canceled, or by a GOTO
command to a previous beginning of a cut. You must confirm deletion in a
confirmation request, as deleting a line moves up the following lines with their
control parameters.

Note

Please note that the control parameters will be assigned to the wrong cuts
if you delete lines incorrectly.
If you are not sure which line may be deleted, perform the learning phase
anew for the complete NC program.

Protocol file with the actual data of the control: <name>.H.AFC2.DEP


The TNC stores various pieces of information for each machining step of a
teach-in cut in this file. During control, the TNC updates the data and makes
various evaluations.
Call the <name>.H.AFC2.DEP file via the EVALUATE TABLE soft key.

Column Function

NR Number of the machining step

TOOL Number of the tool with which the machining step was
performed (cannot be edited)

IDX Index of the tool with which the machining step was
performed (not editable)

SNOM Nominal spindle speed [rpm]

SDIF Maximum difference of the spindle speed in % of the nominal


speed

CTIME Machining time for the control cut

1450 HEIDENHAIN Technical Manual TNC 640


Column Function

FAVG Mean value of the feed rate values during cutting in %.


This allows you to determine the time saved during cutting.
If the FAVG is more than 100%, time was saved because
100% is defined by the teach-in cut.
If Learning/Controlling is mixed, the average feed rate can be
used to calculate the real time difference between learning
and controlling. An average feed rate clearly below 100% is
also a meaningful indication of tool wear.
At the end of the program, the total time saving calculated is
entered in % into the last line in addition to the total machining
time.

FMIN Mean value of the feed-rate minimum values during cutting in


%.
Based on the mean value, you obtain a meaningful tendency
for F-min (tool wear), and not only an individual instantaneous
value.

PMAX Maximum recorded spindle power during machining. The TNC


shows the value as a percent of the spindle’s rated power.

PREF Reference load of the spindle. The TNC shows the value as a
percent of the spindle’s rated power.

OVLD Reaction by the TNC to overload:


 M: Perform an NC-function macro defined by the OEM
 S: Immediately perform an NC stop
 F: Perform an NC stop once the tool has retracted
 E: Only display an error message on the screen
 –: Do not perform an overload reaction
The TNC conducts a shutdown response if, while closed-loop
control is active, the maximum spindle power is exceeded for
more than one second and at the same time the feed rate falls
below the minimum you defined.

BLOCK Block number at which the machining cut begins.

January 2015 6.17 The control loop 1451


Example of a <name>.H.AFC2.DEP file after a cut with active AFC:

NR TOOL IDX SNOM SDIFF LTIME CTIME TDIFF PMAX PREF OVLD
0 2 0 1000 3.5 00:00:40 00:00:32 -20.0 70.2 64 -

Proceed as follows to select the <name>.H.AFC2.DEP file.


 Select the Program Run, Full Sequence operating mode
 Shift the soft-key row
 Select the table of AFC settings with the SETTINGS TABLE soft key
 Select the protocol file with the EVALUATE TABLE soft key

1452 HEIDENHAIN Technical Manual TNC 640


NC-function macro The entry M in the OVLD column of AFC.TAB can be used for each control
at overload strategy to call an NC-function macro as a reaction to a detected overload. The
AFC detects that the spindle load has been exceeded if the actual feed rate is
below the value in FMIN for more than one second. No more than one minute
after the overload has been detected is the NC macro performed. The path of
the NC macro must be entered in machine parameter MP_path (System/
Paths/CfgSystemCycle/OEM_AFC_OVERLOAD):
AFC = <path><ncmacro>.H
e.g.: path = PLC:\AFC\AFC_STOP.H
If this entry is not in MP_path or the NC macro does not exist, then the NC
program is stopped with the corresponding error message. The FN17 function
SYSWRITE ID 50 NR7, which permits locking the current tool, can also be
used for the AFC NC macro. This way, a replacement tool can be inserted in a
tool-change procedure as part of an AFC-NC macro. Use the following NC
macro for this:
1 ;Lock current tool via TL=1
2 FN 17: SYSWRITE ID50 NR7 IDX momentary tool number. Current tool
index = 1 ;insert replacement tool with repositioning logic
4 FN 17: SYSWRITE ID990 NR11 = 0

Default settings for


using AFC
Settings in the configuration editor MP number
System
CfgAfc
enable 120001

Adaptive feed control is a software option (option 45), and must therefore be
enabled separately for each machine. The following settings must then be
made on the control:
 Create the TNC:\table\AFC.TAB file, and define one or more control
strategies.
 Set MP_Enable = on (CfgAfc) so that the <NC-Name>.H.AFC.DEP table for
control settings can be generated for adaptive feed control. A separate file
is created for each NC program in the learning phase.
 Enter the name of the control strategy appropriate for each tool in the AFC
column of the tool table or cutting data table.
If you do not enter a control strategy for the tool used in the NC program,
AFC will not be in effect for this tool.
If you are in the AFC column in the tool table, you can use the SELECT soft
key to select a control strategy from AFC.TAB.
 Set the macro execution for the M functions M3, M4, M5 and any other M
functions in the CfgPlcMStrobe (system/PLC) configuration data.
 In order to edit FN17, the appropriate code number (555 343) must first be
entered.

Note

The M-function macros cannot be called if radius compensation is active in


the NC program. Before calling the macros, the radius compensation must
be deactivated, and reactivated after macro execution, if necessary.

January 2015 6.17 The control loop 1453


M-function macros with which M3 or M4 automatically define the beginning
of a cut for AFC, and M5 defines the end of a cut:

0 BEGIN PGM M3 MM
1 M3
2 FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+1;after M3
3 END PGM M3 MM

0 BEGIN PGM M4 MM
1 M4
2 FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+1;after M4
3 END PGM M4 MM

0 BEGIN PGM M5 MM
1 FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+0;before M5
2 M5
3 END PGM M5 MM

Note

The M-function macros for M3, M4 and M5 (as listed above) are used to
write the control settings for the various cuts sequentially, in the same
order as the cuts in the NC program, into the <NC name>.H.AFC.DEP file. You
cannot use these M-function macros to assign a permanent number to the
individual cutting data blocks.
This means that you cannot use the Program Run, Single Block operating
mode to perform a teach-in cut for just a single cut.
You must always run the entire NC program so that AFC can update the
correct lines in <NC name>.H.AFC.DEP.

1454 HEIDENHAIN Technical Manual TNC 640


However, the FN 17:SYSWRITE ID 622 function offers you the possibility of
numbering all the cuts of an NC program, making a permanent assignment
possible. This is considered in the Program Run, Single Block operating
mode, and you can retroactively carry out the learning process for individual
cuts. You must deactivate the execution of the given M-function macros for
this, however. The definition of the beginning and end of a cut via the
N 17:SYSWRITE ID 622 function must then be done separately for each cut in
the NC program.

Note

You cannot use just any numbers when numbering the cuts in the NC
program. The beginning of the first cut must
be started after M3 or M4 with FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+1
and be ended before M5 with FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+0.
NR must be incremented for each further cut. Targeted access to individual
cutting data blocks is only possible with sequential numbering.

MP_enable
Activating/deactivating AFC
(compare to iTNC 530: MP7246, bit 3)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: off
AFC is deactivated
on
AFC is activated
Default: off
Access: LEVEL3
Reaction: NOTHING

January 2015 6.17 The control loop 1455


Initial learning and After you have entered the settings described above, proceed as follows to
controlling with carry out a learning phase for an NC program:
AFC
 In the Program Run, Full Sequence operating mode, load the NC program
for which the learning procedure is to be carried out, e.g. <NC name.H.>
 Activate AFC via the AFC ON soft key. This creates and displays the <NC
name.H.AFC.DEP> control settings table.
 Start the NC program.
 The learning procedure is performed automatically for each individual
machining cut.
 The spindle reference power determined with the teach-in cut up to that
point is displayed in a pop-up window.

Note

You do not have to run the entire machining step in learning mode. If the
cutting conditions do not change significantly, you can switch to the control
mode immediately. Press the EXIT LEARNING soft key under AFC SETTINGS,
and the status changes from L to C.
At any time during the teach-in cut, you can change the machining feed rate
with the feed-rate override potentiometer any way you want, and so
influence the ascertained reference load.
You can repeat a teach-in cut as often as desired. Manually change the
status from ST back to L. It may be necessary to repeat the teach-in cut if
the programmed feed rate is far too high and forces you to sharply decrease
the feed rate override during the machining step.
The PREF RESET soft key enables you to reset the spindle reference power
determined by the teach-in cut up to that point, and to restart reference
value determination.
You can teach any number of machining steps for a tool. A machining step
always starts with M3 or M4, and ends with M5. For machining steps in which
the tool remains the same, but it appears useful to define multiple cuts for
AFC, you can repeat the corresponding FN 17 function. A new cut is started
with each FN 17:SYSWRITE ID 622 NR0 IDX 0.0 =+1 and is ended with FN
17:SYSWRITE ID 622 NR0 IDX 0.0 =+0.

 All control settings for the individual cuts of an NC program are saved in
tabular format in the <NC name>.H.AFC.DEP file (SETTINGS TABLE soft key),
where they are used for future machining.
The status of each cutting data block changes from L (learning) to C
(controlling) after a successful teach-in cut.
 The data determined in the learning phase is saved in the <NC
name>.H.AFC2.DEP file (EVALUATION TABLE soft key).

1456 HEIDENHAIN Technical Manual TNC 640


Once the NC program has been run, the learning procedure is finished for
adaptive feed control. The status in the <NC name>.H.AFC.DEP file (SETTINGS
TABLE soft key) must have changed from L (learning) to C (controlling) for each
cut. This way a valid settings file exists for adaptive feed control. As long as
the status is not set to L (learning) or adaptive feed control has not been
deactivated with the AFC OFF soft key, the NC program is run with AFC.
 If you start the NC program again, the feed-rate override is changed by the
adaptive feed control. The control tries to maintain the spindle power as
constantly as possible at the spindle power reference value PREF.
If the AFC is active, the spindle potentiometer is fixed to the factor 100%
for the Program Run operating modes right from the start of cutting.
 The data in the <NC name>.H.AFC2.DEP file (EVALUATION TABLE soft key)
determined in the learning phase is compared with the values from
machining with AFC.

Activating/ Proceed as follows to activate or deactivate adaptive feed control:


deactivating AFC
 Select the Program Run, Full Sequence operating mode.
via soft key
 Shift the soft-key row.
 Activate adaptive feed control: Set the AFC soft key to ON.
 Deactivate adaptive feed control: Set the AFC soft key to OFF.
The setting of the AFC OFF/ON soft key is saved, and even if the control is reset,
an emergency stop occurs, or the machine is switched off via the main switch,
the current setting of the soft key is maintained.
The setting of the AFC OFF/ON soft key is also reflected in the
NN_ChnAfcSoftkey PLC double word.
 NN_ChnAfcSoftkey = 0: Soft key set to OFF
 NN_ChnAfcSoftkey = 1: Soft key set to ON

Note

If adaptive feed control is active, the TNC assumes the functions of the
feed-rate override. If you reduce the feed-rate override by more than 10%
of the current setting, then the TNC switches AFC off. In this case, the TNC
displays an information window, which you can acknowledge with the CE
key.
If you set the feed-rate override to less than 50%, the value of the override
potentiometer takes effect. However, AFC is not automatically switched
off here. If the value of the override potentiometer later exceeds 50%
again, AFC assumes control again.
The TNC shows various pieces of information in the additional status
display when adaptive feed control is active. Please refer to the User's
Manual of your control.

January 2015 6.17 The control loop 1457


Activating/ The following NC commands are available for controlling the AFC via the NC
deactivating AFC program:
via the NC program
 FUNCTION AFC CUT BEGIN TIME1 DIST2 LOAD3:
This NC command starts a sequence of cuts with active AFC. The TNC 640
determines the reference power of the spindle during machining starting
with this NC block in a so-called learning phase. In closed-loop operation, the
feed rate is controlled by the TNC 640 so that the spindle assumes the
reference load. Closed-loop mode operation begins as soon as the reference
power was determined in the learning phase, or earlier if one of the TIME,
DIST or LOAD conditions was met. TIME specifies the maximum duration of
the learning phase in seconds, DIST specifies a maximum cutting path for
the learning phase and LOAD explicitly specifies the reference load.
 FUNCTION AFC CUT END:
This NC command deactivates AFC.
 FUNCTION AFC CTRL:
This NC command activates closed-loop mode starting with this block, even
if the learning phase could not been completed yet.
Note

For further information about controlling AFC using the NC program see the
User's Manual of the TNC 640.

1458 HEIDENHAIN Technical Manual TNC 640


6.17.35 CTC – Cross Talk Compensation (option #141)
To accelerate the axes of a machine tool, motor forces or torques must be
applied. These forces can cause deformations of machine parts and thus lead
to deviations at the Tool Center Point (TCP). These deviations can occur both
in the direction of the accelerated axis and in other directions (cross talk).

If the dynamic deviations depending on the axis acceleration are known, they
can be compensated with the CTC software option and thus be minimized.
Often, the resulting error at the TCP depends not only on the acceleration but
also on the position or orientation of the axes in the working space. CTC can
also take this into account.
The CTC software option permits compensations in the following format:

Δsi = kij(sk) * aj

Where kij(sk) can be linearly dependent on the axis position k.


Ds: Error values
a: Acceleration
s: Axis position
i: Index of the axis to be compensated
j: Index of the accelerated axis
k: Index of the axis in relation to which there is a position dependency

January 2015 6.17 The control loop 1459


The figure below shows the relationships for a specific acceleration of the axis
j. Axis i is to be compensated, where the compensation value depends on the
position of the axis k:

CTC can also be used in master-slave torque control and gantry combinations.
You can only use the CTC function if the axis used as the reference for
compensation and the axis to be accelerated are connected to the same drive
control motherboard. To take a position-dependency of a third axis into
account, however, it is not necessary that this axis is located on the same
drive control motherboard as the other two axes.

Considerations Considerations before using CTC:


before using CTC
 What kind of cross talk is to be expected?
 Which dependencies in the workspace (position) concerning cross talk are
to be expected?
The cross talk to be expected must then be measured.

1460 HEIDENHAIN Technical Manual TNC 640


Measurement and The compensation values can be ascertained via the control, by setting up a
parameterization pure display axis or with an appropriate external encoder. As of version 7.2,
TNCopt supports ascertaining the compensation value via KGM and EIB 741.
For detailed information on this topic, please refer to the TNCopt User's
Manual.
Preparations for determining the compensation values for CTC:
 Create a suitable measurement program:
Linear movement in one axis at very high feed rate for high acceleration
Example for Y axis:
L Y100 F10000
L Y0 F10000
 Set up the required encoders and configure them.
Example: KGM grid encoder setup for measurement of cross talk in Y/Z
plane
 Configure the axes of the grid (W in the example) as display axis.

Determine the compensation values:


 Select the signals that are to be recorded with the integrated oscilloscope
or TNCScope. The signals to be recorded must be differentiated depending
on the cross talk:
 Determination of a deviation transverse to the accelerated axis (cross talk):
• Actual acceleration of the exciting axis
• Position value of the TCP in the direction of the axis to be compensated
(transverse direction)
 Determining the deviation in the direction of the accelerated axis:
• Actual acceleration of the exciting axis

Two signals must be recorded to determine the deviation:


• Signal 1: Position value of the TCP in the direction of the axis to be
compensated (in this case this is the exciting axis)
• Signal 2: Position value provided by the position encoder of the axis to
be compensated
• Deviation Ds = signal 1 – signal 2

January 2015 6.17 The control loop 1461


Example of determining the cross talk from Y to Z with the setup described
above:
 Select the signals that are to be recorded with the integrated oscilloscope
or TNCScope:
Actual acceleration of the exciting axis: Y a actl
Position value of the TCP in the direction of the axis to be compensated
(transverse direction): W s actl
 Start the measurement program and record the signals
 Determine the cross talk between the axes:
Example of measured values
Blue curve = s_actl (W) without CTC, Red curve = a_actl (Y)

 Determine the maximum acceleration: a_max = 1.58 m/s²

 Determine the maximum amplitude:


For the determination of the cross talk, only the dynamic portion of the
amplitude must be considered. If there is a long-range error, it must be
subtracted. In this example, the amplitude would be approx. 0.0043 mm.

 Enter the respective values in TNCOpt under: Expanded Compensations /


CTC tab

1462 HEIDENHAIN Technical Manual TNC 640


 Perform the measurement at different locations.
To determine a possible position dependence (e.g. dependence of height
from the Z position), the measurement must be repeated at another position
(second height).
 Enter all values in TNCopt and transfer to control.
The TNCopt range of functions is described in detail in the Help function of
TNCopt 6.0.

Checking the To verify the compensation values, the measurement program must then be
compensation run with active CTC. For test purposes you can activate and deactivate CTC
axis-specifically with MP_enhancedComp bit #0.
Blue curve = s_actl (W) without CTC, Green curve = s_actl (W) with CTC

MP_enhancedComp
Torsion compensation between position encoder and speed
encoder (compare to iTNC 530: MP2700.x)
Available from NCK software version: 597110-06.
Format: Number (bit-encoded)
Input: Bit 0: Cross Talk Compensation (CTC), option #141
0 = Not active
1 = Active
Bit 1: Position Adaptive Control (PAC), option #142
0 = Not active
1 = Active
Bit 2: Load Adaptive Control (LAC), option #143
0 = Not active
1 = Active
Bit 3: Motion Adaptive Control (MAC), option #144
0 = Not active
1 = Active
Bit 4: Active Chatter Control (ACC), option #145
0 = Not active
1 = Active
Bit 5: Active Vibration Damping (AVD), option #146
0 = Not active
1 = Active
Default: All bits = 0, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1463


6.17.36 Position Adaptive Control (PAC), option #142
The specifics of a machine’s kinematics cause a unique position of the axes’
center of gravity in the working space. This results in a variable dynamic
behavior of the machine, which can adversely affect the stability of the servo-
control significantly depending on the axis positions. To exploit the machine’s
dynamic possibilities, you can use the PAC option (Position Adaptive Control)
to change machine parameters depending on position.
This makes it possible to assign respectively optimal loop gain to defined
interpolation points. Additional position-dependent filter parameters can be
defined in order to further increase control loop stability. Besides the position-
dependent adjustment of machine parameters, the PAC option also provides
a way to change machine parameter values depending on other input
quantities such as velocity or acceleration of an axis.
The position-dependent parameter settings can be determined at various
positions by using TNCopt (for example, the Bode diagram). As of version 6.0,
TNCopt provides you with appropriate input forms for the parameter settings
that can be transferred to the control.
PAC can also be used in master-slave torque control and gantry combinations.

Considerations Considerations before using PAC:


before using PAC
Is there a significant position dependence concerning the controller
parameters? This becomes apparent:
 by using TNCopt if resonances vary considerably at different positions.
 if there is a position-dependent oscillation tendency of the axis. In this case
there may also be audible oscillations at certain positions.

Preparation and Activating PAC:


activation
 Activate PAC via TNCopt in the "Expanded compensations" menu item.
 Make sure that bit 1 is set in MP_enhancedComp.
 Adjust the axis at different positions (e.g. Bode diagram, step response).
 In the TNCopt form, enter the parameters you have determined for up to
four interpolation points. You can define up to five machine parameters and
up to five position-dependent filters (with two interpolation points). The
parameters are interpolated linearly between the interpolation points.
The TNCopt range of functions is described in detail in the Help function of
TNCopt 6.0 and higher.

1464 HEIDENHAIN Technical Manual TNC 640


6.17.37 Load Adaptive Control (LAC), option #143
Depending on their mass moment of inertia, the behavior of machine axes can
vary significantly. A change of the mass moment of inertia may be the result
of varying load conditions. In order to allow the control to cover these
variations and to prevent instable behavior, a very conservative, and thus not
optimally configured controller parameterization must be selected. This
increases the contour error, which, in turn makes it necessary to use lower
dynamic parameters (jerk values).
In particular, the dynamic behavior of machines that use axes on the
workpiece side (table axes, e.g. at a rotary table), can vary significantly,
depending on the mass moment of inertia of the clamped workpiece. The LAC
option (Load Adaptive Control) enables the control to automatically ascertain
the workpiece’s current mass moment of inertia and the current friction forces
and to adjust the controller gain to the ascertained mass moment of inertia.
In order to optimize changed control behavior at differing loads, adaptive
feedforward controls can exploit data on acceleration, holding torque, static
friction and friction at high shaft speeds. In addition, you can adjust the
controller gains and the speed and nominal current value filters that will be
used.
Please note that LAC cannot be used in master-slave torque control and gantry
combinations.

How does LAC For each axis movement, the controller parameters configured for LAC (e.g.
work? velocity feedforward control values, controller gain, filters) are adjusted to the
currently effective load.
To configure LAC, use TNCopt (version 6.0 or higher). TNCopt automatically
ascertains the required compensation values and saves them to the control.

Considerations / Considerations before using LAC:


preparations before
 Is it a moving table or a axis on the workpiece side? The characteristics of
using LAC rotary tables, tilting tables or movable tables change with the load.
 Does the mass of the workpiece vary significantly while machining?
 Can the friction of an axis on the workpiece side change due to the load or
other mechanical influences?
 Should LAC adjust only velocity feedforward control values to the changed
load or also do so for controller parameters?
In order to configure a suitable LAC parameterization for the controller
parameters, perform a controller adjustment for different load situations
(small, medium and high load). You then need to create a possible LAC
parameterization based on the parameters ascertained for the different load
situations.

Note

If an adaptation of kv, kp or ki is active, instable behavior of the axis might


occur because inappropriate controller parameters are applied (e.g. if the
load changes significantly while there is no axis movement). To prevent
this, you need to apply a so-called weighing run (cycle 239) when using a
controller parameter adaptation, see page 1467.

January 2015 6.17 The control loop 1465


Preparation and Activating LAC:
activation
 Activate LAC via TNCopt in the "Expanded compensations" menu item.
 Make sure that bit 2 is set in MP_enhancedComp.
Depending on the application, you can activate different velocity feedforward
control options for the adaptive feedforward control of LAC via TNCopt:
 Holding torque (MP_compCurrentOffset):
Should be activated if the holding current changes with the weight of the
workpiece. This is the case with tables functioning as vertical axes (e.g. for
vertical axes on the workpiece side).
 Basic friction (MP_compFriction0):
Should be activated if the friction changes with the weight of the workpiece.
This occurs frequently with rotary tables.
 Friction at high shaft speed (MP_compFrictionNS):
If friction changes at high rotational speeds, this feedforward control can be
adapted.
 Acceleration feedforward control (MP_compAcc):
If the weight of a table changes due to loading, the feedforward control is
adapted accordingly.
 The following controller parameters can be adapted based on four
interpolation points. The TNC will perform a linear interpolation between
them:
 kv
 kp
 ki
 kd
 In addition, the filters used can be adapted to the load. For this purpose, two
interpolation points are used. The TNC will perform a linear interpolation
between them:
 Damping
 Center frequency
 Bandwidth

Note

Please note that the filters for LAC are effective in addition the active
standard filters.

Use TNCopt to transfer the values ascertained for the controller parameters to
the control. The controller parameter will then be saved in a special file in the
directory PLC:\ccfiles. If the TNC does not find a corresponding compensation
file for LAC while LAC is active, a default parameterization becomes effective
(adaptation speed = 1, only adaptation of the basic friction, friction at high
speed and the acceleration feedforward control).
For the calculation of the current load, the motor constant is relevant. The
controller calculates the motor constant based on motor table entries. These
are given with respect to the rated speed. In most cases, the motor data sheet
contains a motor constant that is given with respect to standstill. In order to
ascertain the load more exactly, this value, which is relevant to the weighing
run, can be transferred to LAC or corrected for LAC via TNCopt, if required.

1466 HEIDENHAIN Technical Manual TNC 640


The TNCopt range of functions is described in detail in the Help function of
TNCopt 6.0 and higher.

Note

If the axis is stationary and therefore no adaptation takes place, the


controller settings for the ascertained load will be valid until you perform a
new weighing run or deactivate the LAC function.

Checking the The duration of the adaptation can be entered in TNCopt by using a gain. The
compensation default gain yields very good results in almost all cases. However, make sure
to always verify the duration of the adaptation using the control oscilloscope.
However, make sure to adjust the gain in the following cases:
 The internal control oscilloscope shows that during the phase of
acceleration or constant traversing speed, there is an integral current that is
not equal to zero and that decreases only very slowly. In this case, the
duration of the adaptation is excessive and the learning phase takes very
long.
 The internal control oscilloscope shows a lot of noise in the nominal current.
This indicates that the duration of the adaptation is too short. The adaptation
can become instable and thus, the velocity feedforward control values show
a lot of noise.

Weighing run for If the load situation changes abruptly (e.g. when a workpiece is changed) or
LAC while the corresponding axis is stationary (e.g. for a rotary axis on the
workpiece side in case of 3-D roughing), a controller parameterization that is
unsuitable for the current load situation might lead to instable behavior. For
this reason, quickly adapt the system to the current load situation by
performing a weighing run. During the weighing run, the axis must be moved
slightly so that the current load can be ascertained. For this purpose,
HEIDENHAIN provides cycle 239.

Note

At the start of the cycle or if the cycle was deactivated before, the machine
parameters configured in the configuration data will be used for to
parameterize the controller. Configure them in such a way that the
controller or the machine will be stable in all possible load situations.

January 2015 6.17 The control loop 1467


The cycle can be added to OEM macros so that, depending of the operating
state of the machine, a switchover to a safe or stable parameter set is always
possible (e.g. when opening the guard door, at the end of the NC program)
After the weighing run, the preset parameters will be adjusted for each axis
movement. If the load changes while the axis is stationary, you need to repeat
the weighing run with cycle 239.

Parameterization of the weighing run cycle


End users can only use the cycle if you create a special NC macro beforehand
that defines the weighing run procedure. This weighing run NC macro must
define the following:
 For which axes should the weighing run be performed?
 What should be the traverse distance for the individual axes?
In addition, the machine manufacturer can define further actions, such as:
 Should the weighing run be performed in a safe position?
Specify the path to the corresponding NC macro under CfgSystemCycle/
OEM_LAC_BALANCING. If you do not specify a path here, the cycle call will
not have any effect. This means that machines without preparation for LAC
will not display an error message and NC programs need not be adapted
specifically.
Use the following FN18/FN17 functions to control the weighing run procedure
in the NC macro:
 ID71 NR0 IDX0
Index of the NC axis for which the weighing run will be performed (X to W
= 1 bis 9)
 ID71 NR0 IDX1
Path for the weighing run in mm or degrees, see page 1471
Cycle 239 will call the NC macro again and again until the macro finds no
further axis for which a weighing run command exists.
The machine manufacturer can use the Q parameter Q570 to evaluate the
transfer parameter of cycle 239 in the NC macro and react accordingly, if
required.

1468 HEIDENHAIN Technical Manual TNC 640


Overview of the procedure:

Start of cycle 239, initialize the interface parameters:


FN17: SYSWRITE ID71 NR0 IDX0 = 0; Axis index
FN17: SYSWRITE ID71 NR0 IDX1 = 0; Path in mm or degrees

NC macro OEM_LAC_BALANCING
Evaluation of the interface parameters:
FN18: SYSREAD Q... = ID71 NR0 IDX0; Index of the axis last weighed,
if Q.. = 0, this is the first call of the macro
Initialization of the interface parameters:
FN17: SYSWRITE ID71 NR0 IDX0 = ...; Axis index
FN17: SYSWRITE ID71 NR0 IDX1 = ...; Path in mm or degrees

No
Transfer weighing axis?

Yes

No
Is the axis part of an axis combination
(gantry axes)?

Yes
Error message, cancel cycle

Perform weighing run

Perform LAC adaptations

End of cycle 239

January 2015 6.17 The control loop 1469


Example of an NC Example of an NC macro for the weighing run
macro for the
Weighing run for two axes, Y axis and C table:
weighing run
BEGIN PGM LAC_BALANCING MM
FN 18: SYSREAD QL0 = ID 71 NR 0 IDX 0 ; Index of the axis
; last used
FN 18: SYSREAD QL1 = ID 71 NR 0 IDX 1 ; Path of the last weighing run
FN 9: IF +QL0 EQU +0 GOTO LBL "LAC_Y" ; No axis weighed before?
FN 9: IF +QL0 EQU +2 GOTO LBL "LAC_C" ; Y axis (2) weighed before?
FN 17: SYSWRITE ID 71 NR 0 IDX 0 = 0 ; Do not weigh any axis
FN 9: IF +0 EQU +0 GOTO LBL "LAC_END"
LBL "LAC_Y"
FN 17: SYSWRITE ID 71 NR 0 IDX 0 = 2 ; Index for Y axis
FN 17: SYSWRITE ID 71 NR 0 IDX 1 = 2 ; Path for Y axis in mm
FN 9: IF +0 EQU +0 GOTO LBL "LAC_END"
LBL "LAC_C"
FN 17: SYSWRITE ID 71 NR 0 IDX 0 = 6 ; Index for C axis
FN 17: SYSWRITE ID 71 NR 0 IDX 1 = 1 ; Path for C axis in degrees
FN 9: IF +0 EQU +0 GOTO LBL "LAC_END"
LBL "LAC_END"
END PGM LAC_ BALANCING MM

Special The cycle does not support axis combinations (master-slave, gantry).
characteristics of
If the cycle is aborted while the load is being ascertained, the controller will
cycle 239
switch over, after a certain period of time, to the default parameter set. In
addition, a warning will be displayed.

1470 HEIDENHAIN Technical Manual TNC 640


Ascertaining the The traverse path necessary to ascertain the current load situation can vary,
required traverse depending on the friction of the axis and the preset dynamics parameters
for the weighing (jerk). Typically, only tiny movements are required (a few millimeters or
run degrees).
The machine manufacturer must set the traverse path for each axis in such a
way that the result of the load determination corresponds as exactly as
possible (recommended value: +/-5%) to the actual load. Typically, the smaller
the selected traverse path, the greater the deviation of the result from the
actual path (see below). It is also possible that the determined result starts to
vary significantly when the traverse becomes smaller.

 1) estimated mass / mass moment of inertia


 2) traverse path of the axis
 3) quantity to be measured
 4) +/- 5% deviation from the quantity to be measured
To determine the traverse path length for an axis, HEIDENHAIN recommends
to modify the weighing run NC macro (see shown below). The load will thus
be ascertained with an ever-decreasing traverse path. For this purpose, you
need to specify this NC macro, as well as the dedicated NC macro for the
weighing run later under CfgSystemCycle/OEM_LAC_BALANCING/path.
Example of a macro that reduces the path of the C axis from 30 to 0:
BEGIN PGM LAC_DECR_DIST MM
QL10 = 30 ;Maximum path
QL11 = 1 ;Step
QL12 = 6 ;Axis
QL19 = 0 ;Minimum path
FN 18: SYSREAD QL0 = ID71 NR0 IDX0
FN 18: SYSREAD QL1 = ID71 NR0 IDX1
FN 10: IF +QL0 NE +0 GOTO LBL "LAC"
QL1 = QL10
LBL "LAC"
FN 17: SYSWRITE ID 71 NR0 IDX0 =+0
FN 9: IF +QL1 EQU +QL19 GOTO LBL "End"
FN 12: IF +QL1 LT +QL19 GOTO LBL "End"
FN 17: SYSWRITE ID 71 NR0 IDX0 =+QL12
QL1 = QL1 - QL11 ; Decrement the path
FN 17: SYSWRITE ID 71 NR0 IDX1 =+QL1

January 2015 6.17 The control loop 1471


FN 9: IF +0 EQU +0 GOTO LBL "End"
LBL "End"
END PGM LAC_DECR_DIST MM
HEIDENHAIN recommends the following procedure to determine the length
of the traverse path for an axis:
 Select the signal J_totl,mot (for rotary axes) or M_totl,load (for linear axes)
in the internal oscilloscope and start the oscilloscope.
 Start cycle 239 with the modified NC macro (see above).
 For the evaluation, only look at the points in time in the oscilloscope when
the determination of the load is completed (i.e. the axis is stationary, see the
lower of the two following scope recordings).
 The reference value for the actual load is the value recorded for the largest
traverse.
 As described above, with a decreasing traverse path, the result typically
becomes less accurate or starts to vary significantly.
 The minimum traverse path for cycle 239 is the path where the load result
determined deviates by more than +/-5% from the reference value or starts
to vary significantly.

Note

If large traverses do not reveal a constant for the load result determined,
select a larger traverse at the beginning of the macro.

1472 HEIDENHAIN Technical Manual TNC 640


 Repeat this procedure for at least two different loads (minimum or
maximum load).
 Enter the maximum of the traverse paths thus determined into the weighing
run NC macro for this axis. For an example, see page 1470.
 Perform this procedure for all affected axes.

PLC modules Module 9046 Copy controller data to the PLC memory
Module 9046 is used to copy controller data (data of the CC) to the PLC
memory via configured channels.
Constraints:
 The module must not be called in the cyclic PLC program part.
 The module should only run once for each channel. Once a channel has
been configured successfully, the programmed CC data is copied to the PLC
memory at the PLC clock rate.
 If a channel that has already been configured must be reconfigured (other
CC data or other axis), the channel must be reset first. Direct reconfiguration
results in a module error.
Call:
PS B/W/D/K <Mode>
0: Configuration of cyclic data channels from the CC to the PLC
PS B/W/D/K <Axis/spindle index>
n: Index of the axis or spindle from CfgAxes/axisList
PS B/W/D/K <Code for CC data>
Mode 0:
–1: Reset channel (default setting)
0: Mass moment of inertia of the table [kg*m2 * 1.0e–6]
1: Mass of the table [kg]
2: Total mass moment of inertia (table and motor)
[kg*m2 * 1.0e–6]
3: Total mass (table and motor) [kg]
4: Total power of supply module [W]
5: Axis power (mechanical) [W]
6: Torque-producing nominal current (with algebraic sign) [mA]
7: Total actual current [mA]
PS B/W/D/K <Data channel>
Mode 0:

January 2015 6.17 The control loop 1473


0 to 15, up to 16 channels can be programmed
PS B/W/D/K <Target address in PLC memory>
Mode 0:
Double-word address to which the value of the
programmed data channel is copied
CM 9046
PL B/W/D <Error code>
0: No error. Data channel was (already) configured
1: Call was not in a submit/spawn job
2: NC/CC does not support the desired function
3: Invalid value in the <Mode> parameter
4: Invalid value in the parameter <Axis/Spindle index>
5: Invalid value in the <Code for CC data> parameter
6: Invalid value in the <Data channel> parameter
7: Invalid double-word address in the <Target address in
PLC memory> parameter
8: Programmed data channel is already being used
100: Programmed CC data is not available for programmed
axis
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode and/or <Code for CC data>
2 Invalid value for parameter
<Axis/spindle index>
3 Invalid value for <Data channel> parameter
4 Memory range for the programmed double-
word address is too small or does not exist
5 Programmed address is not a double-word
address (not divisible by 4).
6 Programmed data channel is already being
used
20 Call not in a submit/spawn job
45 Internal error
51 Programmed CC data is not available for this
axis on the CC, or the PLC module is not
supported by this NC software
61 Internal error

1474 HEIDENHAIN Technical Manual TNC 640


Module 9047 Reset or initialize controller algorithms
Module 9047 can reset controller algorithms or reinitialize them.
Constraints:
 The module must not be called in the cyclic PLC program part.
Call:
PS B/W/D/K <Mode>
0: Commands to the CC (reset/reinitialize)
PS B/W/D/K <Axis index>
–1: All axes
n: Index of the axis from CfgAxes/axisList
PS B/W/D/K <CC command>
0: Reset Load Adaptive Control (SW option 143)
1: Deactivate all adaptive controller parameters
2: Activate all adaptive controller parameters
3: Deactivate all adaptive control feedforward functions
(as of NCK software level 597110-08)
4: Activate all adaptive control feedforward functions
(as of NCK software level 597110-08)
5: Reserved, no function
6: Reserved, no function
CM 9047
PL B/W/D <Error code>
0: No error. Reinitialization successful
1: Call was not in a submit/spawn job
2: NC/CC does not support the desired function
3: Invalid value in the <Mode> parameter
4: Invalid value in the <Axis number> parameter
5: Invalid value in the <CC command> parameter
100: Programmed CC command cannot be performed for
axis/axes
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode and/or <CC command>
2 Invalid value for <Axis index> parameter
20 Call not in a submit/spawn job
45 Internal error
51 Programmed CC command is not available for
this axis on the CC, or the PLC module is not
supported by this NC software
61 Internal error

January 2015 6.17 The control loop 1475


6.17.38 Motion Adaptive Control (MAC), option #144
The MAC option provides a way to change machine parameters depending on
motion-dependent input quantities (e.g velocity or following error). This makes
it possible, for example, to realize a velocity-dependent adaptation of the
kV factor on motors whose stability changes through the various traversing
velocities.
MAC can also be used in master-slave torque control and gantry combinations.
If you would like to combine quantities associated with two different axes
when using the MAC function (e.g. kv factor of the X axis depending on the
speed of the Y axis), these axes must be connected to the same drive control
motherboard.

Considerations Considerations before using MAC:


before using MAC
Does the machine have a pronounced dependence on velocity or acceleration
regarding the controller parameters?
This becomes apparent in:
 The internal control oscilloscope if resonances occur at different velocities
or accelerations, and therefore the controller variables (actual speed,
nominal current) are subject to oscillations.
 Audible oscillations at certain velocities and/or accelerations, or at a certain
velocity threshold.
Is there a need to change any controller settings or feedforward functions
depending on the velocity or acceleration?
This may be required for:
 Master-slave torque drives whose tensioning is to be reduced for rapid
traverse (high acceleration), for example.

Preparation and Activating MAC:


activation
 Enable software option #144
 Activate MAC via TNCopt (using the "Expanded compensation types" menu
item).
 Make sure that bit 3 is set in MP_enhancedComp.
 Set the controller parameters of the axis for different velocities or
accelerations.
 Use TNCopt to enter the parameters you have determined for up to four
interpolation points. You can define up to five machine parameters and up
to five situation-dependent filters (with two interpolation points). The
parameters are interpolated linearly between the interpolation points.
 Following error, jerk, acceleration and velocity are available as input
quantities, to which the parameters are adjusted. Optionally, the input
quantity can be considered unsigned. This is useful in symmetrical
situations, for example to obtain the same adjustment for negative and
positive accelerations.
This function is described in detail in the TNCopt 7.0 online help. Available as
of the beginning of 2013.

1476 HEIDENHAIN Technical Manual TNC 640


Example One possible application is the acceleration-dependent change of the
tensioning torque between master axis and slave axis for master-slave torque
control.
With the MAC option, this arrangement makes it possible to attain a
significantly higher maximum acceleration at rapid traverse, for example
through parameterized reduction of the tensioning torque with increasing
acceleration. This application is possible when the torque master slave
controller is capable of very rapidly modifying the tensioning torque so that this
can change at the same speed as acceleration. Because the torque master
slave controller is often too inert for this, it can be implemented via the
feedforward of the torque master slave controller with MP_compOnlySlave.

Without MAC With MAC

ohne M A C m itM A C

M
M M otor M
M M otor

M
M max
m ax M
M max
m ax

M
M V1 M
M V1

À
# a Tisch À
# a Tisch
aa1max
1m ax aa1max
1m ax a
a2max
2m ax
M
M V2 M
M V2
aa2max
2m ax > a
a1max
1m ax

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
compOnlySlave 402317

January 2015 6.17 The control loop 1477


6.17.39 Active Chatter Control (ACC), option #145)

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
enhancedComp 401415
compAccMode 401418

High cutting strength occurs with heavy milling (high-speed milling). These
forces are transmitted between the milling spindle and the machining axes via
the tool and the workpiece. Depending on the tool spindle speed, the
resonances in the machine tool and the removal volume (metal-removal rate
during milling), the tool can sometimes begin to "chatter." This chattering
places heavy strain on the machine, and causes ugly marks on the workpiece
surface. The tool, too, is subject to heavy and irregular wear from chattering.
In extreme cases it can result in tool breakage.
To reduce chatter inclination on a machine, HEIDENHAIN provides software
option #145, Active Chatter Control (ACC)
In contrast to other chatter avoidance processes, with ACC no modifications
to the process are needed and additional actuators or sensors are not required.
ACC is however capable of damping most chatter oscillation forms (if visible
for the control and if these can be influenced by the drives). Due to the type
of damping by the drives, ACC is capable of damping chatter frequencies up
to approx. 100 Hz as often occurring with roughing and heavy milling. By using
ACC, high cutting performances are therefore possible independent of the
machine type.

Preparation and To use ACC the software option #145 must first be enabled. ACC must then
activation be activated for the relevant machining axes via MP_enhancedComp Bit#4.
Typically, these are the X, Y and Z axes. ACC is intended for heavy machining
and roughing, and is therefore automatically activated or deactivated for a
specific tool with the TOOL CALL. For this purpose, enter Y in the ACC column
of the tool table for all tools to be used for heavy machining. In addition, the
number of teeth must be entered in the CUT column. If the tool is used for both
roughing and finishing, an index tool can be created.

Note

ACC is limited to a maximum of 4 axes for each drive control motherboard.


The TNC 640 outputs an error message if ACC is activated for more than 4
axes on one drive control motherboard. The functions ACC and AVD cannot
be simultaneously active. If AVD is active and an ACC tool is loaded, then
AVD is automatically deactivated by the TNC 640.

1478 HEIDENHAIN Technical Manual TNC 640


If a tool with active ACC function is loaded and if the spindle rotates with a
tooth meshing frequency of between 20 and 115 Hz, a damping signal is
automatically set in the control loop that prevents the inclination to chatter.
The TNC 640 displays this with an ACC symbol in the status display.
In the machine operating modes an ACC ON/OFF soft key is available. The
machine operator can activate or deactivate the ACC function with this soft
key.
The machine parameter MP_compAccMode enables you to influence the
weighting of the damping signal between the axes X, Y and Z. This MP allows
you to select between three different weightings of the damping signal to be
applied.
Because the tool also influences the chatter properties of the machining
process, a tool-specific configuration can be used. For this purpose, PC-Tool
TNCopt from version 7.0 enables creating tool-specific ACC parameter files for
various tools and transferring these to the control. A machine-specific file can
also be created. If a tool with active ACC function is inserted, the NC first
searches for a tool-specific parameter file. If no such file is available, it
searches for a machine-specific file. If such a file does not exist then the
parameters from MP_compAccMode are effective.
Besides this automatic function, you have the option of creating an ACC
parameter file with TNCopt 7.0 and transfer it to the control. Since every tool
influences the chatter characteristics of the cutting process, an individual file
can be created for each tool. Alternatively you can also create a machine-
specific file. The respective chatter frequency range and the intensity of the
damping signal can be set using the parameter files. If a tool is loaded while
the ACC function is active, the NC first searches for a tool-specific parameter
file. If no such file is available, it searches for a machine-specific file. If this is
not available either, ACC operates in automatic mode.

January 2015 6.17 The control loop 1479


The block diagram shows how ACC works:

 1: Active Chatter Control (ACC)


 2: Position controller
 3: Speed controller
 4: Current controller—power module
 5: Motor
 6: Machine
 7: Linear encoder

MP_compAccMode
ACC mode
(compare to iTNC 530: MP2710.x)
Available from NCK software version: 597110-06.
Format: Number
Input: 0: Robust standard mode with an average
application of a damping signal
(recommended setting)
1: For the selected axis, chatter damping
is increased. In some cases this is advantageous for one
or twoaxes (e.g. vertical axes), but leads to slightly reduced
control precision (slightly increased
following error (servo lag)
2: For the selected axis, chatter damping is strongly
increased. This is usually advantageous for one axis at the most,
but causes reduced control precision
(increased following error).
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1480 HEIDENHAIN Technical Manual TNC 640


6.17.40 AVD – Active Vibration Damping (option #146)

Advantages of AVD With oblique or curved surfaces, surface problems often occur in the form of
visible shadows or deviations in contrast. Periodic shadows are usually caused
in low frequency oscillations with frequencies of up to 100 Hz.
Such surface problems can result from installation oscillations of the machine
or low frequency oscillations in the drive train.

Software option #146 Active Vibration Damping (AVD) enables you to


effectively reduce machine oscillations.
Advantages with use of AVD:
 Rapid, vibration-free machining – giving:
 Reduced program run times
 Improved quality of surfaces

January 2015 6.17 The control loop 1481


AVD activation  Enable software option #146
 In MP_enhancedComp ensure that bit #5 is set
 In TNCopt, select "Dynamic Efficiency / Dynamic Precision – Active Vibration
Damping"
 Activate AVD for the required axis. To activate AVD permanently, select the
"Save parameter on the TNC" function in TNCopt

Note

AVD is limited to a maximum of 4 axes for each drive control motherboard.


The TNC 640 outputs an error message if AVD is activated for more than 4
axes on one drive control motherboard. The functions ACC and AVD cannot
be simultaneously active. If AVD is active and an ACC tool is loaded, then
AVD is automatically deactivated by the TNC 640.

AVD can also be used in master-slave torque control and gantry combinations.

AVD measurement A maximum of one AVD block can be configured for each axis. On the PLC
and AVD partition of the TNC 640 TNCopt creates a *.cmp file for each AVD block in the
configuration with PLC:\ccfiles directory (e.g. AVD_00.cmp for axis 0 etc.).
TNCopt

Note

Use the TNCopt PC tool to perform all required measurements and


configure the AVD. Please also refer to the TNCopt User's Manual. It is
available for registered customers in PDF format from the HESIS Web
Including Filebase on the Internet and supplied as an online help with the
TNCopt software.

1482 HEIDENHAIN Technical Manual TNC 640


Indexed AVD
parameter sets
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
avdFileName 401419

As of NCK software version 597110-08, it is possible to use the optional


parameter MP_avdFileName to specify up to 10 different AVD compensation
files for each parameter set to be used for MP subfiles or for parameter set
switchover.
For the index that is transferred to the controller unit, the following naming
conventions apply (see file names).
 Special case: Parameter = 0; for reasons of compatibility with legacy
software without indexing, the file for index 0 is named AVD_xx.cmp
 xx = axis index from CfgAxes/axisList
 If MP_avdFileName is not part of the machine configuration, the controller
will also use the axis index from CfgAxes/axisList

MP_avdFileName
Name of the file for AVD (Active Vibration Damping) – index
assignment for AVD compensation files
(compare to iTNC 530: MP2720.x)
Available from NCK software version: 597110-08.
Format: Selection menu
Options: File names:
AVD_xx.cmp
AVD_P1_xx.cmp
AVD_P2_xx.cmp
...
AVD_P9_xx.cmp
Where xx = axis index from CfgAxes/axisList
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.17 The control loop 1483


6.17.41 KinematicsComp (software option #52) –introduction

General Increasingly stringent requirements on workpiece tolerances constantly


information increase demands placed on a the precision of a machine tool. However, the
components of the machine tool inevitably show imperfections that are for
example caused by manufacturing or installation or result from elastic
deformation. This is the reason why the commanded tool position and
orientation are not always reached exactly everywhere in the working space.
The more axes a machine has, the more sources of errors there are. The use
of mechanical means to cope with these problems requires considerable
effort, particularly in the field of 5-axis machining, or if large machines with
parallel axes are involved.
A proven means to overcome this problem is to compensate the resulting
error. The new KinematicsComp function (software option #52) of the
TNC 640 enables the machine manufacturer to save a comprehensive
description of the machine errors in the control so that they will be
compensated automatically. KinematicsComp can even be used to define
position-dependent temperature compensation. The required data is supplied
by several sensors located at relevant points on the machine.
With KinematicsComp, you can improve the machining precision and increase
contour accuracy. On large machines, long traverse paths and heavy parts
cause errors with relatively high values. As the use of mechanical means to
reduce these errors requires a lot of effort, the economic benefits achieved by
KinematicsComp are especially significant for these applications. On small
machines, precision requirements take priority. Here again, KinematicsComp
can contribute to achieve considerable improvements.

Difference to non- With the non-linear axis error compensation feature, you can create tables
linear axis error where you specify compensation values for an axis depending on the position
compensation of this or another axis, see page 1173. Thus, positioning errors and
feature straightness errors of an axis can be compensated. The figure below shows
an XY section of the working space, illustrating the error on a horizontal
machine that results from the curvature of the X guideway.
The figures below explain the limits of nonlinear axis error compensation, here
using the example of the X axis pitch as a source of error:

1484 HEIDENHAIN Technical Manual TNC 640


Here, a positioning error in the XY plane occurs (maximum error: 6.6 µm):

Pitch at the TCP for motions in the X direction:

Straightness of X movement in the Y direction:

January 2015 6.17 The control loop 1485


The pitch error of the X axis has different effects in the working space,
depending on the distance to the X guideway. Using the non-linear axis error
compensation feature, it is possible to compensate the error along paraxial
lines in the working space (dashed lines). Beyond the lines, the error is
increasing again. With the KinematicsComp function, however, it is possible
to compensate not only positioning errors and straightness errors, but also
angular motions (roll, pitch, yaw) of an axis. These errors have a local effect on
the axis. The total error of the machine to be compensated results from the
fact that the entire kinematics chain with multiple stacked axes with errors
must be considered.
Basically, this procedure ensures that the error can be minimized within the
entire volume of the working space and not only along paraxial lines. For this
reason, this type of compensation is also referred to as volumetric
compensation.

Prerequisites / To improve the accuracy using any compensation procedure, the following
limitation of conditions have to be met:
compensation
 A sufficient repeatability of the machine
procedures (even an ideal compensation can do no more than improve the precision in
such a way that it reaches the repeatability range)
 The machine behavior must be known
In most cases, a limited number of measuring points will be acquired. A
suitable procedure is used to interpolate between the measuring points
 The machine must be able to make small compensation movements at the
TCP
You can test this by programming small positioning steps (depending on the
machine precision, e.g. 1 µm) and then use a suitable encoder (e.g.
HEIDEINHAIN KGM) to check at the TCP whether these small steps are
properly compensated.

Geometry errors of ISO 230 subdivides geometry errors of an axis into motion errors and position
axes errors.
A motion error (or component error) is the deviation from the ideal motion.
These errors vary with the position of the axis under consideration. For a linear
axis, these are undesired linear motions (3 degrees of freedom) and rotary
motions (further 3 degrees of freedom) of a component that should move
along a straight path. For a rotary axis, the motion error / component error is a
change of the position (3 degrees of freedom) and orientation (further 3
degrees of freedom) of the rotary axis with respect to its mean position and
orientation as a function of the rotary angle of the axis. Position errors are
deviations from the mean position and orientation with respect to the ideal
position.
Component errors are designated by three characters (e.g. EZX, straightness
error of the X axis in Z direction). The characters designate position functions
of the axis under consideration.
 1st character (E): Designates an error
 2nd character (e.g. Z): Error direction
 3rd character (e.g. X): Axis under consideration

1486 HEIDENHAIN Technical Manual TNC 640


Position errors, deviations from the ideal axis position, are designated by 4
characters (e.g. EX0C, position error of the C axis in X direction). Position
errors are scalars.
 1st character (E): Designates an error
 2nd character (e.g. X): Error direction
 3rd character (0, zero): Designates the position error
 4th character (e.g. C): Axis under consideration

Note

In ISO 230-1, the characters following the E are written as subscripts (EZX,
EX0C). In this manual, no subscripts are used.

Strictly speaking, this model implies that the component errors of an axis only
depend on the position of this axis and not on the position of other axes. This
model is also referred to as rigid body error model. If the errors of an axis only
depend on its own position, you can image the axes as rigid curved bodies
gliding onto each other. (Nevertheless, some elastic effects can be described
with the rigid body error model, as long as the elastic axis errors only depend
on their own position).

Position errors of
linear axes

January 2015 6.17 The control loop 1487


Translational deviations:

Description Error
EX0Z No effect
EY0Z No effect
EZ0Z Offset

Rotational deviations:

Description Error
EA0Z Angular error
EB0Z Angular error
EC0Z No effect

In most cases, the machine coordinate system is defined as follows:


 The principal axis (longest axis) defines the first axis of the coordinate
system
• By definition, this axis has no angular errors
 The minor axis defines the rotation about the principal axis
• An angular error of this axis becomes 0
 The origin of the coordinate system can be selected freely
• This means that the offset errors of the three linear axes become 0
Only the angular errors between the linear axes are left.

1488 HEIDENHAIN Technical Manual TNC 640


Angular errors Example:
between the linear
 Principal axis X
axes
 1st minor axis Z
 2nd minor axis Y

EA0Y

EB0Z
EC0Y

January 2015 6.17 The control loop 1489


Component errors Example: Horizontal motion axis X
of linear axes
Translational deviations:

Description Error
EXX Positioning error
EYX Straightness error in Y direction
EZX Straightness error in Z direction

Rotational deviations:

Description Error
EAX Roll
EBX Pitch
ECX Yaw

Z
EAX
(rollen)

EZX
EBX P0
(nicken) Y
EYX
EXX ECX
(gieren)

EXX, EYX, EZX, EAX, EBX and ECX are functions of X.

1490 HEIDENHAIN Technical Manual TNC 640


Errors of rotary Example: Vertical motion axis C
axes
Position errors – Static errors (home position) of rotary axes
Translational deviations:

Description Error
EX0C Position error
EY0C Position error
EZ0C No effect

Rotational deviations:

Description Error
EA0C Angular error
EB0C Angular error
EC0C Angular error (offset)

EA0C
EB0C

EC0C

X
EX0C

EY0C

January 2015 6.17 The control loop 1491


Component errors Translational deviations:
of rotary axes
Description Error
EXC Radial error in X direction
EYC Radial error in Y direction
EZC Axial error

Rotational deviations:

Description Error
EAC Wobble relative to X (roll)
EBC Wobble relative to Y (pitch)
ECC Positioning error

Z
EAC

EZC
P0 EYC
EXC Y
EBC
ECC

EXC, EYC, EZC, EAC, EBC and ECC are functions of C.

1492 HEIDENHAIN Technical Manual TNC 640


Number of errors As shown above, linear axes have 6 component errors (functions) and 3
relevant (scalar) position errors. Rotary axes es have 6 component errors
(functions) and 5 relevant (scalar) position errors. As shown above, the
selection of a typical machine coordinate system results in 6 position errors
being zero.
In literature, such an error model is referred to as 21 error model for 3-axis
machines and a 43 error model for 5-axis machines. These numbers can be
calculated using the table below. Here, scalar position errors and component
error (functions) are treated in the same way.

Component error Position


functions error
Linear axis 6 3
Rotary axis 6 5
Spindle 5 4
Machine -6
coordinate system

Example: 3-axis machine (no spindle)


3 linear axes with 6 component errors each and 3 position errors, minus 6
errors that do not apply due to the selection of the coordinate system.
3 * (6 + 3) - 6 = 21
Example: 5-axis machine (no spindle)
3 linear axes with 6 component errors each and 3 position errors plus 2 rotary
axes with 6 component errors each and 5 position errors, minus 6 errors that
do not apply due to the selection of the coordinate system.
3 * ( 6 + 3) + 2 * (6 + 5) - 6 = 43
The subdivision as per ISO 230-1 that distinguishes position errors and
component errors, is intended to distinguish the axis movement quality
(motion errors) from the axis position quality (position errors). For a
compensation, this separation is not obligatory. The same effect can be
achieved by grouping position errors of an axis with its motion error.

January 2015 6.17 The control loop 1493


6.17.42 KinematicsComp (software option #52) – configuration

Settings in the configuration editor MP number


Channels
Kinematics
CfgKinSimpleAxis
[Key name of kinematics model]
kinCompErr
locErrX 202703.01601
locErrY 202703.01602
locErrZ 202703.01603
locErrA 202703.01604
locErrB 202703.01605
locErrC 202703.01606
compErrX 202703.01607
compErrY 202703.01608
compErrZ 202703.01609
compErrA 202703.01610
compErrB 202703.01611
compErrC 202703.01612
errOnToolSide 202703.01613
resetLocErr 202703.01614

In the same way in which you describe the kinematics model itself (nominal
kinematics), you can describe the errors of a machine using machine
parameters in the control. In the kinematics model, the machine manufacturer
describes the machine’s degrees of freedom and the positions of its rotary
axes, see page 1189. With the KinematicsComp software option, you can
additionally describe the errors of each machine axis in CfgKinSimpleAxis/
kinCompErr. This way, the actual behavior of all axes can be integrated into
the existing kinematics model. The algebraic signs and effects of the
kinematic errors arise from the order of elements within the kinematics chain,
seen from the tool towards the table. The options provided by
KinematicsComp go far beyond the rigid body error model: You can define
dependencies of errors from multiple axes at the same time and from PLC
variables (and thus e.g. temperature or load conditions).

Note

The export of the KinematicsComp software option #52 is subject to


authorization.

1494 HEIDENHAIN Technical Manual TNC 640


The entries under kinCompErr are only used for calculating the compensation
values.

Note

 The following functions only use the nominal kinematics, without taking the
compensation values under kinCompErr into account:
• Dynamic collision monitoring (DCM)
• Limit-switch monitoring
• Inverted kinematics (calculation of rotary axis positions based on the
required tool orientation)
 If KinematicsComp is activated, it is effective in any situation, no matter
whether movements are performed using the reference system (M91) or
the input system. The compensation is always effective for the position of
the TCP, always taking the current tool length and the position of the rotary
axes into account for the calculation. The angular error of the tool will not
be compensated because this could cause large, undesirable movements.

Note

If you are migrating from the iTNC 530, please note:


On the TNC 640, position and component errors re not described in
separate transformations, but are associated to a machine axis. For this
reason, you need not enter additional elements into the kinematics model
in order to perform a compensation, but it is sufficient to enter the values
or formulas related to the errors.

Use CfgKinSimpleAxis/kinCompErr to configure position and component


errors of an axis and their effects.
To configure the effects, use MP_errOnToolSide and MP_resetLocErr:
 Use MP_errOnToolSide to define on which side of the axis the error
compensation values should be applied
 Use MP_resetLocErr to specify whether the compensation values for
position errors on the other side of the axis should be reset by applying the
opposite algebraic sign.

January 2015 6.17 The control loop 1495


The effects are explained in the following table:

MP_errorOnToolSide TRUE FALSE TRUE FALSE

MP_resetLocErr FALSE FALSE TRUE TRUE

Kinematics chain Tool side Tool side Tool side Tool side

... ... ... ...

locErrX locErrX -locErrX

locErrY locErrY -locErrY

locErrZ locErrZ -locErrZ

locErrA locErrA -locErrA

locErrB locErrB -locErrB

locErrC locErrC -locErrC

compErrX compErrX

compErrY compErrY

compErrZ compErrZ

compErrA compErrA

compErrB compErrB

compErrC compErrC

Axis Axis Axis Axis

compErrC compErrC

compErrB compErrB

compErrA compErrA

compErrZ compErrZ

compErrY compErrY

compErrX compErrX

locErrC -locErrC locErrC

locErrB -locErrB locErrB

locErrA -locErrA locErrA

locErrZ -locErrZ locErrZ

locErrY -locErrY locErrY

locErrX -locErrX locErrX

... ... ... ...

Workpiece side Workpiece side Workpiece side Workpiece side

1496 HEIDENHAIN Technical Manual TNC 640


Note

Whether the error is inserted before or after the axis depends on the
measurement type or the error model used. Basically, the same kinematic
error can be described using entries on the tool side or on the workpiece
side (however please note that different entries are required to do so).
KinematicsComp allows you to do both. Typically, an entry on the tool side
is used, for this reason, MP_errOnToolSide defaults to TRUE.
By resetting position errors, it is possible to change the position of a single
axis without globally affecting the positions of the other axes. If you do not
reset position errors, the correction of position errors of an axis will also
globally affect the positions of all subsequent axes.

Configuration of position errors:


To add position errors, use MP_locErrX, MP_locErrY, MP_locErrZ,
MP_locErrA, MP_locErrB and MP_locErrC. In MP_locErrX, enter the value
of a position error of the axis in X direction (unit: mm). In MP_locErrB, enter
the value of a position error of the axis in B direction (rotation about Y, unit:
degrees). In both cases, you can enter numbers with up to 9 decimal places.
Configuration of component errors:
To add component errors, use MP_compErrX, MP_compErrY,
MP_compErrZ, MP_compErrA, MP_compErrB and MP_compErrC. In
MP_compErrX, enter a formula defining the component error of the axis in X
direction (the result of the formula must be in mm). In MP_compErrB, enter
a formula defining the component error of the axis in B direction (rotation
about Y, the result of the formula must be in degrees). The formula is a string
with a maximum of 240 characters.

Note

If you are migrating from the iTNC 530, please note:


MP_locErr<axis> corresponds to a iTNC 530 kinematics table row with
KEY=Trans, AXIS=<axis> and a number in the COMPTAB column at the
corresponding location (if MP_resetLocErr = TRUE: at the corresponding
locations) of the kinematics chain.
MP_compErr<axis> corresponds to a iTNC 530 kinematics table row with
KEY=Trans, AXIS=<Axis> and a table reference in the COMPTAB column
at the corresponding location of the kinematics chain. On the TNC 640, you
can also use formulas or multi-dimensional tables for this purpose.

January 2015 6.17 The control loop 1497


Entering a formula To build formulas, certain mathematical functions (See page 567) and variables
are available:
Available variables:

Type Prefix Identifier


Position values of an AXS_ Key of the physical axis
axis (RFNOML)
Value of a PLC variable PLC_ Names of the globally defined PLC
variables
Value from a table TAB_ The name of a table column is defined
interpolation in the cfgKinCompTable (see below)

The different variable types may be used concurrently and multiple times in a
formula.
Axis position values:
You can use the position value of axes to represent the position-dependency
of component errors. Here, position-dependencies of all axis are permitted.
Example: AXS_X
PLC variables:
PLC variables can be used to change component errors depending on any
other quantities known to the PLC. This refers mainly to temperatures or load
situations.
PLC variables are intended for quantities that change slowly. PLC variables will
be evaluated once per second. Even at standstill, changing PLC variables
might lead to axis movement. Example: PLC_DG_temperature_machine

Table interpolation Formulas may reference table interpolation results. A reference to a table can
be the only element in a formula, but it may also be combined with further
calculations. When working with table interpolation, you can use multi-
dimensional tables. You can define dependencies on up to three axes (any
axes selectable) and up to three global PLC variables. This way, it is possible
to describe the dependency on errors related to the positions of multiple axes,
as may happen for some elastic deformations. Using PLC variables, it is also
possible to define dependency on temperature, load situation or other
quantities known to the PLC. Error tables have a ".kco" file name extension.
You can create a new empty kco table with the NEW FILE soft key, see page
2435. With COPY SAMPLE FILES, you can copy various sample files to
PLC:\proto.

1498 HEIDENHAIN Technical Manual TNC 640


kco tables contain up to 3 AXIS columns (AXIS0 to AXIS2), up to 3 PLC
columns (PLC0 to PLC2) and up to 10 VALUE columns (VALUE0 to VALUE9).
Columns that are not needed can be left out.

For each kco table, there is an entry in CfgKinCompTable that specifies the
meaning of the columns:

January 2015 6.17 The control loop 1499


You can freely define the key name, but it is recommended to use the file
name. Enter the path to the kco table in MP_tablePath. In axes, define to
which axis/axes the AXIS columns in the kco table refer. In plcWords, define
to which PLC variable(s) the PLC columns in the kco table refer. PLC variables
are intended for quantities that change slowly.

Note

 PLC variables will be evaluated once per second. Even at standstill,


changing PLC variables might lead to axis movement.
 All kco tables entered in CfgKinCompTable may have a total of 32000
rows.

In values, specify the names of the VALUE columns that can then be
referenced by MP_compErr<axis> (compErrX to compErrC) of
CfgKinSimpleAxis/MP_kinCompErr.
Example: TAB_Error1

Note

The values between the interpolation points in the tables are interpolated
linearly. If the evaluation point is outside the range of interpolation points,
the outermost value defined by the interpolation points will be maintained,
just like with non-linear axis error compensation.
The interpolation points indicated in the table must be located on a paraxial
grid (also parallel to the PLC values, if applicable). The distances between
the grid lines may vary. Individual grid points may be left out. Their
neighboring points will be used instead.

Note

HEIDENHAIN recommends:
If you enter positioning errors of rotary axes into the non-linear axis error
compensation tables, the angular error will actually be compensated. If you
describe the errors with KinematicsComp, only the effect on the position of
the TCP will be compensated. All other component errors for rotary axes
must be compensated using KinematicsComp.

1500 HEIDENHAIN Technical Manual TNC 640


Activating / Using the FN function ID 290 NR7, you can activate / deactivate the
deactivating compensations of the KinematicsComp software option, e.g. in an NC macro,
KinematicsComp see page 2521. KinematicsComp can then be deactivated from within the NC
program using FN17: SYSWRITE ID290 NR7 = 0. FN17: SYSWRITE ID290
NR7 = 1 allows you to re-activate KinematicsComp. The current status can be
read using FN18: SYSREAD Qxxx = ID290 NR7. If you intend to use the FN
function ID 290 NR7 to deactivate KinematicsComp, HEIDENHAIN
recommends to query the current status before running the macro
OEM_TCALL_TS_PRE in a TOOL CALL and only then perform the reset. Restore
the old state only after the OEM_TCALL_TS_POST macro has been terminated.
KinematicsComp will always be active at the end of an NC program or after
switch-on of the control.

Note

Please note that this FN function will also be executed in a block scan,
unless you explicitly prevent it.

In addition, when you enter the code number 211258, additional soft keys are
displayed in manual mode that can be used to deactivate or activate
KinematicsComp and / or the temperature compensation in the kinematics
model (MP_temperatureComp or MP_realTimeComp).
The status of the FN function and the status of the soft keys are linked by a
logical AND operation.

Reading / changing The values of position errors of an axis and the effects (MP_errOnToolSide
position errors in and MP_resetLocErr) can be read from the NC program and can be changed.
the NC program For this purpose, the commands READ/WRITE KINEMATICS (page 1209)
support the keywords LOCERRX to LOCERRC and RESETLOCERR and
ERRONTOOLSIDE. These can be used to access the corresponding attributes
in CfgKinSimpleAxis\<Key>\kinCompErr. For RESETLOCERR and
ERRTOOLSIDE, you can only read or write the values "0" (FALSE) and "1"
(TRUE). Example:
QS100 = "AX_X"
QS110 = "0.001;0.002;0.0;0.0;0.0;0.0;1;1"
WRITE KINEMATICS NOTE_QS100 RESULT_Q1 KEY
"LOCERRX;LOCERRY;LOCERRZ;LOCERRA;LOCERRB;LOCERRC;ERRONTOOLSIDE;RESET
LOCERR" = QS110

January 2015 6.17 The control loop 1501


Checking the When you enter the code number 211258, the KIN COMP tab appears in the
effects status display.

The KIN COMP tab shows the activation state of KinematicsComp and the
current compensation values for the X, Y and Z axes (axis positions from real
kinematics minus the axis position from ideal kinematics). The display shows
the total of all effective compensations (e.g. kinematic temperature
compensation, KinematicsComp). The values displayed are only valid if they
are static (i.e. the axes do not move).

1502 HEIDENHAIN Technical Manual TNC 640


6.18 Monitoring functions

6.18.1 Monitoring the drives

Settings in the configuration editor MP number


System
CfgHardware
I32stopsMonitoring 100102

The NC monitors the dynamic response of the machine by using the following
monitoring functions:
 Position monitoring
 Standstill monitoring
 Movement monitoring
If the specified values are exceeded, it displays an error message and stops
the machine.
You can switch off the monitoring functions for individual axes or for all axes
(globally) if drive enabling is canceled (I32 = 0).

Attention

Safe machine operation is not possible if the monitoring functions are


switched off. Uncontrolled axis movements are not detected.

Switching off The monitoring functions for all drives are switched off if I32 = 0 and
monitoring MP_I32stopsMonitoring = On:
functions globally
MP_I32stopsMonitoring
Behavior of input I32 (drive enabling)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
If I32 = 0, all monitoring functions that can be influenced by the
PLC are switched off.
off
Input I32 has no effect on the monitoring functions.
Default: off
Access: LEVEL3
Reaction: RUN

January 2015 6.18 Monitoring functions 1503


Switching off Set PP_AxDeactivateMonitoring to switch off monitoring for individual axes.
monitoring
functions for
PLC operand / Description Type
individual axes
PP_AxDeactivateMonitoring M
Deactivate monitoring functions
0: Monitoring functions active
1: Monitoring functions inactive

The following table shows the status of monitoring as a function of the


axis-specific PLC operand PP_AxDeactivateMonitoring and drive enabling
(I32) if MP_I32stopsMonitoring = On.

Monitoring functions PP_AxDeactivate MP_I32stopsMonitoring


for Monitoring = = On;
I32=
Individual All drive
drive motors
motor

Inactive Inactive 0 0

Active Active 0 1

Active Inactive 1 0

Inactive Active 1 1

1504 HEIDENHAIN Technical Manual TNC 640


6.18.2 Position monitoring

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
servoLagMin1 400802
servoLagMax1 400803
servoLagMin2 400804
servoLagMax2 400805
CfgControllerAuxil
driveOffLagMonitor 400601
maxPosDiff 400605
maxSpeedDiff 400609
posDiffCountDir 400604
CfgReferencing
endatDiff 400405

Note

The parameters MP_maxPosDiff, MP_maxSpeedDiff and


MP_posDiffCountDir are available only with digital drive control.

The parameter object


 CfgControllerAuxil is not required for:
• Virtual axes (MP_axisMode = Virtual)
• Axes that are only for display (MP_axisMode = Display)
 CfgReferencing is not required for:
• Virtual axes (MP_axisMode = Virtual)

The axis positions are monitored by the TNC 640 as long as the control loop is
closed.
The input values for position monitoring depend on the maximum possible
following error (servo lag). Therefore the input ranges for operation with
following error and velocity feedforward are separate.
For both modes of operation there are two range limits for position monitoring.
If the first limit (MP_servoLagMin1, MP_servoLagMax1) is exceeded, the
warning Excessive servo lag in [axis] appears. The machine stops.
This message can be cleared. An actual-to-nominal value transfer is then
executed for the respective axes.
If the second limit (MP_servoLagMin2, MP_servoLagMax2) is exceeded,
the emergency-stop error message "Excessive servo lag in [axis]" appears.

January 2015 6.18 Monitoring functions 1505


The control-is-ready signal output is reset. The machine stops. You cannot
clear this message. You must restart the control to correct the error.
 In the machine parameters given below, define two range limits for position
monitoring.
 Adjust the input values to the machine dynamics.

Sa (V)

servoLagMax2
v
servoLagMax1

servoLagMin2
servoLagMin1

MP_servoLagMin1 and MP_servoLagMin2 apply with a constant feed rate,


whereas MP_servoLagMax1 and MP_servoLagMax1 apply with a changing
feed rate.

MP_servoLagMin1
Minimum value for following-error monitoring (clearable)
(compare to iTNC 530: MP1410)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
Default: 1 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_servoLagMax1
Maximum value for following-error monitoring (clearable)
(compare to iTNC 530: MP1420)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
Default: 5 [mm] or [°]
Access: LEVEL3
Reaction: RUN

1506 HEIDENHAIN Technical Manual TNC 640


MP_servoLagMin2
Minimum for following-error monitoring (emergency stop)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
Default: 1 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_servoLagMax2
Maximum for following-error monitoring (emergency stop)
(compare to iTNC 530: MP1420)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
Default: 5 [mm] or [°]
Access: LEVEL3
Reaction: RUN

Clamped axes, If MP_driveOffLagMonitor is active, clamped axes or hanging axes are


hanging axes monitored when the drive motor is switched off. The value from
MP_servoLagMax2 is monitored.

MP_driveOffLagMonitor
Following-error monitoring with drive switched off
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Monitoring of hanging axes is active
off
Monitoring of hanging axes is not active
Default: off
Access: LEVEL3
Reaction: RUN

Note

The monitoring functions for hanging axes can not be switched off by using
MP_I32stopsMonitoring.

January 2015 6.18 Monitoring functions 1507


Difference between When the TNC 640 is switched off, the actual position of the axes is saved in
position at switch- SRAM with an absolute encoder. During switch-on, it is compared to the
on and shutdown position values read by the encoder.
If the positions differ by more than the difference defined in MP_endatDiff, a
pop-up window showing both positions appears. The new position must be
confirmed with a soft key. If it is not confirmed an error message displays.
If the motor is located at the correct position, you can confirm the message.

Note

The cause for one of the above listed messages can also be a defect in the
encoder or control.

MP_endatDiff
Permissible difference between the switch-on position and the
switch-off position for axes with absolute encoders
Available from NCK software version: 597110-01.
Format: Number
Input: -100 000 to 100 000 [mm] or [°] with max. 9 decimal places
Default: 0 [mm] or [°]
Access: LEVEL3
Reaction: REF
Using the CfgAxis/advancedSettings/clearShutoffPos parameter,you can
reset the axis switch-off position to zero specifically for each axis. This
parameter is evaluated during the start-up of the TNC 640 and is removed from
the machine configuration after evaluation.
See "MP_advancedSettings" on page 1033.

1508 HEIDENHAIN Technical Manual TNC 640


Determining the If shaft-speed and position encoders are connected to a machine, then the
difference between TNC 640 can ascertain and monitor deviations between the two systems.
speed encoder and These differences can be displayed in the oscilloscope (PosDiff oscilloscope
position encoder signal).
 Specify in MP_maxPosDiff the maximum permissible position difference
between the position and speed encoders in [mm] or [°].
 Specify in MP_maxSpeedDiff the maximum permissible speed difference
between the position and speed encoders in [mm/min] or [°/min].
 The parameters MP_maxPosDiff and MP_maxSpeedDiff are optional.
Deactivate the parameters in order to switch monitoring off.

MP_maxPosDiff
Maximum position difference between position and speed
encoders
Available from NCK software version: 597110-03.
Format: Number
Input: 0 to 100 000 [mm] or [°] with max. 9 decimal places
0: Monitoring is switched off
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_maxSpeedDiff
Maximum speed difference between position and speed
encoders
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 100 000 [mm/min] or [°/min] with max. 9 decimal places
0: Monitoring is switched off
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

In MP_posDiffCountDir, you can configure the counting direction of the


speed encoder for calculating the difference between the position and speed
encoders.
 With the automatic setting, the TNC 640 tries to determine the direction of
the motion in the opposite direction automatically.
If the TNC 640 cannot clearly recognize that the position and speed encoder
are counting in opposite directions, the counting direction of the speed
encoder can still be set manually.
 Use the integrated oscilloscope (PosDiff signal) to inspect the position error
between the position encoder and the speed encoder.

January 2015 6.18 Monitoring functions 1509


If you determine via the oscilloscope that the actual position of the axis
"wanders," then you must invert the parameter MP_posDiffCountDir. To
avoid problems in adapting the direction of traverse (polarity and counting
direction) of axes with position encoders, the machine parameter
MP_posDiffCountDir is determined internally from
MP_signCorrNominalVal and MP_signCorrActualVal. For this purpose set
MP_posDiffCountDir to Automatic (default value).

MP_posDiffCountDir
Counting direction of the motor encoder
Available from NCK software version: 597110-03.
Format: Selection menu
Options: automatic
The motor encoder counts in positive or negative direction
(depending on the opposite direction of movement ascertained)
positive
Motor encoder counts in positive direction
negative
Motor encoder counts in negative direction
Default: automatic
Access: LEVEL3
Reaction: REF

1510 HEIDENHAIN Technical Manual TNC 640


6.18.3 Movement monitoring

Note

The MP_movementThreshold parameter is not effective for digitally


controlled axes! It is only evaluated on the TNC 128 and TNC 320 for analog
control loops (without CC controller unit).

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
movementThreshold 400705
thresholdDistance 400706

Movement monitoring is possible during operation both with velocity


feedforward and with following error.
If the MP_movementThreshold parameter is set to a value greater than 0,
the manipulated value of the position controller is totaled in the IPO clock as
soon as the threshold configured in the parameter is exceeded. In
MP_thresholdDistance you enter the distance at which the comparison is to
be performed, and so define the monitoring cycle. The TNC 640 now
calculates a nominal path and compares it with the actual path traversed,
based on the distance defined in the optional parameter
MP_thresholdDistance. If MP_thresholdDistance is not defined, the default
distance of 5 mm is effective.
An error message is displayed if the actual path traversed is…
 less than a quarter of the nominal path
or
 four times greater than the nominal path.
If the encoder is defective, the axis moves no more than the distance defined
in MP_thresholdDistance.
Intentional movements smaller than indicated in MP_movementThreshold
are ignored.
 In MP_movementThreshold, enter the distance over time at which
movement monitoring is to start.
 Enter in MP_thresholdDistance the distance at which the nominal and
actual paths are to be checked.

Attention

 If MP_movementThreshold = 0, movement monitoring is not active.

January 2015 6.18 Monitoring functions 1511


MP_movementThreshold
Threshold above which the movement monitoring functions
(compare to iTNC 530: MP1140)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 36 000 000 [mm/min] or [°/min] with max. 9 decimal places
0: Monitoring switched off
Default: 199.98 [mm/min] or [°/min]
Access: LEVEL3
Reaction: RUN

MP_thresholdDistance
Tolerance at and above which the following error is included
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 36 000 000 [mm] or [°] with max. 9 decimal places
Default: 5 [mm] or [°]
Access: LEVEL3
Reaction: RUN

1512 HEIDENHAIN Technical Manual TNC 640


6.18.4 Standstill monitoring

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerAuxil
checkPosStandstill 400602

Standstill monitoring is effective during operation both with velocity


feedforward and with following error, as soon as the axes have reached the
positioning window.
If the position difference is greater than the value defined in
MP_checkPosStandstill, the error message Standstill monitoring in
[axis] appears. The message also appears if, while moving to a position, an
overshoot occurs that is larger than the value entered in
MP_checkPosStandstill, or if the axis moves in the opposite direction when
beginning a positioning movement.
Manually moving a spindle while the control loop is open (e.g. during a manual
tool change) causes following error to build up. This following error could
trigger activation of the standstill monitoring. Therefore, monitoring is only
active in the following situations:
 The control loop does not apply to a spindle and
MP_checkPosStandstill > 0.
Here, it is not relevant whether the axis is in a control loop or not.
 If the control loop applies to a spindle and MP_checkPosStandstill > 0, the
axis must additionally be position-controlled for standstill monitoring to be
effective.
 Enter in MP_checkPosStandstill the threshold from which the standstill
monitoring should go into effect:

MP_checkPosStandstill
Standstill monitoring
(compare to iTNC 530: MP1110)
Available from NCK software version: 597110-01.
Format: Number
Input: 0: Monitoring switched off
0 to 100 000 [mm] or [°] with max. 9 decimal places
Default: 10 000 [mm] or [°]
Access: LEVEL3
Reaction: RUN

January 2015 6.18 Monitoring functions 1513


6.18.5 Positioning window

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerTol
posTolerance 401101
timePosOK 401102

The parameter object CfgControllerTol is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)

If the axes have reached the positioning window after a movement, the status
is shown in NN_AxInPosition. This also applies to the status after the
machine control voltage is switched on.
The NC resets NN_AxInPosition as soon as you start a positioning movement
or traverse the reference marks.
In the Electronic Handwheel mode of operation, NN_AxInPosition for the
current handwheel axis is reset.
NN_AxInPosition is not set for contours that can be machined with constant
surface speed.

Danger

Incompatibility with earlier HEIDENHAIN TNC controls!


When an NC program is run, the TNC 640 does not set the operand
NN_AxInPosition until the beginning of the following NC block. It is not set at
the end of the current block! Example of Program Run, Single Block mode of
operation:
Program:
.....
5 L W+30
6 L X+10
7 L W+60
.....
If the block N5 is run in Single Block mode,
 the program cursor is located on block N6.
 the W axis is located at +30.
 the status of the operand is:
NN_AxInPosition = 0
In this example the PLC clamps the W axis and the Marker NN_AxInPosition
is set. But the marker is not set until the next block N6 is run. (With earlier TNC
controls, the marker is already set at the end of block N5.)
Please take this status into account in your PLC program.

1514 HEIDENHAIN Technical Manual TNC 640


Axes in position The TNC 640 reports "axis in position" (NN_AxInPosition), if
 the axis is stationary for the time MP_timePosOK within the positioning
window MP_posTolerance.
 no axis direction key for the axis is pressed.
After the position has been reached, the control begins running the next block.
The position controller can correct a disturbance inside this window without
activating the "Return to the Contour" function. NN_AxInPosition is reset as
soon as there is a request to move an axis (NN_AxMotionRequest = 1).
 Specify in MP_posTolerance the size of the positioning window.
 Specify in MP_timePosOK how long the axis is to remain within the
positioning window.
The control window is monitored during positioning as concerns various
parameters. A following error is calculated from the control parameters, and
compared with the actual following error.

Note

Only for analog closed-loop axes (as of software version 597110-08):


If the deviation is greater than the calculated value as well as the parameter
value in MP_posTolerance, then the error message [Axis] does not
attain the control window is output after 20 seconds.
This error message can be cleared, and traverse can continue.

MP_posTolerance
Positioning window
(compare to iTNC 530: MP1030.x, MP3420)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 001 to 100 [mm] or [°] with max. 9 decimal places
Default: 0.005 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_timePosOK
Hysteresis time for "positioning window reached"
Available from NCK software version: 597110-01.
Format: Number
Input: 0.006 to 10 [s] with max. 9 decimal places
Default: 0.01 [s]
Access: LEVEL3
Reaction: RUN

PLC operand / Description Type

NN_AxInPosition M
Axis in position
0: Axis not in positioning window
1: Axis in positioning window

January 2015 6.18 Monitoring functions 1515


Axis movement by If the interpolator wants to move the axes, the markers
interpolator NN_AxMotionRequest or NN_SpiMotionRequest are set. The PLC then
switches on the drive, activates the control loop, releases the brake, and
enables the feed rate or spindle.
If a spindle is moved by the NC and not by the PLC program, the
NN_SpiMotionRequest marker is set. This allows the PLC program to decide
when the spindle drive is to be switched on.

PLC operand / Description Type

NN_AxMotionRequest M
Axis movement by interpolator
0: No axis movement by interpolator
1: Axis movement by interpolator
NN_SpiMotionRequest M
Spindle movement by interpolator
0: No spindle movement by interpolator
1: Spindle movement by interpolator

Axes in motion During an axis movement, the NC sets NN_AxInMotion.

PLC operand / Description Type

NN_AxInMotion M
Axes in motion
0: Axis not in motion
1: Axis in motion

1516 HEIDENHAIN Technical Manual TNC 640


January 2015 6.18 Monitoring functions 1517
6.18.6 Temperature monitoring

Temperature of the The internal temperature of the MC is continuously monitored. At about 55 °C


MC the early warning Temperature warning appears. If the temperature does not
fall below 55 °C, the warning is reactivated after two minutes. Beginning at
about 60 °C the error message Temperature too high <temperature> °C
appears and an emergency stop is triggered. If the temperature does not fall
below 60 °C when the machine is switched on again, the error message
reappears after 10 to 20 seconds.

Interrogating the Module 9133 allows you to interrogate the internal values of the analog-to-
internal ADC digital converter of the MC.
Module 9133 Interrogating the internal ADC
Call:
PS B/W/D/K <Code>
0: Internal temperature sensor in [°C]
1: Temperature CPU1 (basic PCB) in [°C]
2: Temperature CPU2 (additional PCB) in [°C]
3: Voltage of buffer battery in [mV]

CM 9133
PL B/W/D <Value>
Error code:

Marker Value Meaning


NN_GenApiModule 0 Value ascertained
Error 1 Value could not be determined; error code
in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid code programmed
ErrorCode 8 No second processor present (for code 2)

1518 HEIDENHAIN Technical Manual TNC 640


Motor temperature To measure the motor temperature, a KTY 84 must be connected at pins 13
and 25 of X15 to X20, X80 to X83. The temperature value is ascertained at
least once per second. The maximum permissible motor temperature is taken
from the motor table.
If an ENDAT 2.2 encoder is used, and if a temperature signal is not evaluated
via the ENDAT 2.2 protocol but with the KTY input of the control, then in
MP_miscCtrlFunct0 the bit 02 must be set, i.e. enter the value 4.
As soon as the given temperature is exceeded, the error message : MOTOR
TEMPERATURE <AXIS>TOO HIGH appears and the drives are automatically
switched off.
Appropriate measures can be taken before the motor reaches the maximum
temperature.

MP_miscCtrlFunct0
Special controller functions
Available from NCK software version: 597110-06.
Format: Number
Input: Bit 2 = 1: Motor temperature sensor is connected to KTY input
of the control (not to X15...20 or X80...83).
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

Module 9165 Read the temperature of the drive motor


The module provides the temperature of a drive motor controlled by the
integral current controller in degrees Celsius.
Constraints:
 The measuring range is 0 to 255 °C.
 For non-existing axes the value 0 °C is read.
 The temperature value is measured every 5 seconds.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
CM 9165
PL B/W/D <Temperature>
Range: 0 to 255 °C
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Control has no current controller

January 2015 6.18 Monitoring functions 1519


Measuring the Linear motors usually have a KTY and several PTC thermistors or
temperature of thermoswitches for temperature measurement.
linear and torque
motors

Attention

The PTC thermistors or thermoswitches must be galvanically isolated


and evaluated by the PLC.
The KTY requires double insulation to the motor windings, which must be
provided by the motor manufacturer. Otherwise, do not connect the KTY
to the control!

The KTY is monitored by the control (NC). The temperature signal is conducted
to the control together with the encoder signals (X15 to X20, X80 to X83). If
the KTY is not evaluated, then this function must be deactivated with
MP_motEncCheckOff – bit 4 = 1 (See "Monitoring functionswhen using the
CC 61xx and CC 424" on page 1562).
For linear and torque motors, the conductor for the temperature signal of the
KTY is frequently in the motor power cable, which can cause interference.
Since the conductor for the temperature signal is then led into the conductor
of the speed encoder, the interference causes noise in the encoder signals.
HEIDENHAIN therefore recommends conducting the temperature signals
over the line drop compensator, so that the interference signals are filtered.
If an ENDAT 2.2 encoder is used, and if a temperature signal is not evaluated
via the ENDAT 2.2 protocol but with the KTY input of the control, then in
MP_miscCtrlFunct0 the bit 02 must be set, i.e. enter the value 4.

Note

HEIDENHAIN recommends the additional temperature monitoring of the


PTC thermistors or thermo switches via the PLC, since these are
distributed over the entire length (linear motors) or circumference (torque
motors) (as opposed to the KTY, for which there are only spot
measurements).

For example, PTC thermistors can be connected to a PLC input via the
securely grounded 3RN1013-1BW10 thermistor motor-protection device from
SIEMENS.

1520 HEIDENHAIN Technical Manual TNC 640


Temperature of the At X51 to X60 the temperature warning signal is available at pin 10a.
power module’s
If the permissible temperature of the heat sink on the power module is
heat sink
exceeded, this signal is reset.

Attention

To avoid destroying the power module, the drives must be brought to a


standstill immediately after a temperature warning.
Data on maximum permissible temperatures are available from the
manufacturer of your power supply unit.

The temperature warning signal is not evaluated in the NC.


 Use Module 9160 (recommended, See "Module 9160 Status
query of temperature and I2t-monitoring" on page 1527 or Module 9360 to
interrogate the temperature warning, and take appropriate measures.

Module 9360 Monitor the temperature of the power modules


This module provides the temperature of the power modules. If the
temperature is exceeded (ERR_TEMP signal at X51 to X60), the axis-specific
bits are reset.
Call:
CM 9360
PL D <Temperature monitoring, bit-encoded>
Bit 15876543210
Axis:Sxxxxx987654321
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error possible
Error

January 2015 6.18 Monitoring functions 1521


6.18.7 I2t monitoring

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motFactorI2t 401304
CfgPowerStage
ampFactorI2t 401208

The parameter objects CfgServoMotor and CfgPowerStage are not required


for:
 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

General HEIDENHAIN inverter systems feature individual I2t monitors, one for each
information power module and motor.

Function An I2t monitor calculates and supervises the temperature pattern in a thermal
motor or power-stage model during operation, even if temperature
measurement is also provided by the hardware.
The basis for calculation are the active current, the rated or stall current,
(multiplied by MP_motFactorI2t for motors and by MP_ampFactorI2t for
power modules) and a device-specific temperature model. A first-order
temperature module is available for monitoring power modules, first and
second-order modules are available for motors. These models make it
possible to permanently calculate the temperature of the stator winding in the
motor or the semiconductor in the power module.

1522 HEIDENHAIN Technical Manual TNC 640


Temperature model in an example comparison (motor)

T [°C]

200
180
160
140
120
100
80
60
40
20
0
0 100 200 300 400 500 600 700 800 900 1 000
t [s]
First-order temperature model
Second-order temperature model
Motor temperature

The I2t monitor responds if this calculated temperature exceeds a certain limit.
Because temperature increase and heat dissipation are uneven when the
motor is stationary or moving slowly, the I²t monitor distinguishes between
standstill and traversing mode.
This limit range is defined in a motor table or power module table The
following entries are important:
 F-AC (transition frequency in traversing mode [Hz])
 F-DC (transition frequency at standstill [Hz])

Fundamentals The following graphics illustrate these parameters in relation to the reference
voltage. Remember here that the parameters of the CC 422 may differ from
those of the CC 61xx or CC 424.
With the CC 61xx and CC 424 it is possible to use an interpolated current
range for the transition from standstill to traverse. This allows a more exact
calculation of the temperature model.
For the CC 422, no difference is made between F-DC and F-AC. Instead, F-AC
is used as a rigid limit frequency for the transition between standstill and
traversing mode.
If there is no stall torque value given in the motor table, the following model
of current (with respect to the rated current) is used to calculate the
temperature in the motor. The factors for MP_motFactorI2t and
MP_ampFactorI2t are not yet taken into account.

January 2015 6.18 Monitoring functions 1523


I rated [%]

100

Threshold from interpolation with CC 61xx


70.7
Direct transition with CC 422 (F-AC)

Rated speed n
F-DC F-AC

1524 HEIDENHAIN Technical Manual TNC 640


If the stall current value is given in the motor table, the following model of
current (with respect to the stall current) is used to calculate the temperature
in the motor. This is only used for synchronous motors, however. For
asynchronous motors the above model of current applies, which is used if no
stall current is given. For synchronous motors, the factors from
MP_motFactorI2t and MP_ampFactorI2t are not yet taken into account in the
following description.

Io [%]
Direct transition with CC 422 (F-AC)
100

I rated
70.7
Threshold from interpolation with CC 61xx

Rated speed n
F-DC F-AC

Commissioning and  In MP_motFactorI2t, enter the factor for the I2t monitoring of the motor.
evaluation The input value is a factor for the reference current (1 = 100% of the motor
standstill current or nominal current). If you enter zero, the I2t monitoring for
the motor (not for the power module) is switched off.
 In MP_ampFactorI2t, enter the factor for the I2t monitoring of the power
module. The input value is a factor of the power module’s rated current (1 =
100%). If you enter zero, the I2t monitoring for the power module (not for
the motor) is switched off.
 All required entries for calculation of a temperature model have to be
available in the motor table or power module table (See "Temperature
models" on page 1529).
 Query the I2t monitoring via Module 9160 (recommended) or Module 9367,
See "Module 9160 Status query of temperature and I2t-monitoring" on page
1527.

January 2015 6.18 Monitoring functions 1525


Limit values The limit values for the I2t function (measure of the permissible temperature
inside the device [%]) are managed by the control's NC and are structured as
follows:
 Value exceeds 100%: An axis-specific I2t early warning is sent to the PLC
(for evaluation and possible countermeasures, such as reduction of the feed
rate with error message by PLC program using PLC Module 9367).
If the value does not exceed 110% and falls below 90%, the axis-specific
early warning is reset.
 110%: An NC stop is triggered and the drives are switched off.

Note

In the oscilloscope you can display the current value of the I2t monitoring
of the motor and power module, as well as the current load of the drive.

Motor overload with I2t monitoring

1526 HEIDENHAIN Technical Manual TNC 640


Machine MP_motFactorI2t
parameters Reference value for I2t monitoring of motor
(compare to iTNC 530: MP2302.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1000 [· rated or stall current of the motor] with max. 9
decimal places
0: I2t monitoring of the motor switched off
(I2t monitoring of power module remains active)
1: Rated current of motor is reference value
Default: 1
Access: LEVEL3
Reaction: RUN

MP_ampFactorI2t
Reference value for I2t monitoring of the power module
(compare to iTNC 530: MP2304.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1000 [· rated current of power module] with up to 9 decimal
places
0: I2t monitoring of the power module switched off
1: Rated current of power module is reference value
Default: 1, optional parameter
Access: LEVEL3
Reaction: RUN

Query via Module 9160 Status query of temperature and I2t-monitoring


PLC module The I2t monitoring reported by the module is given with respect to the first
I2t-monitor response (power module or motor) if both I2t monitors are
activated (MP_motFactorI2t and MP_ampFactorI2t). This early warning is
withdrawn as soon as the limit for reset is reached. For the response behavior,
See "Limit values" on page 1526.
Constraints:
 Unconnected axes respond with all error bits as 0.
 The I²t monitoring responds when the current value exceeds 110% of the
rated current.
 After an e-function, the current is limited to 110 % of Inoml. The time
constant for this is approx. 2.56 seconds.
 The response time for the I²t monitoring at 2 * Inoml without preload is
approx. 2.1 seconds. With a nominal load hysteresis every 10 seconds the
monitoring responds after approx. 200 ms.
 The message "I²t early warning" is set approx. 200 ms before limiting, and
the message "I²t monitoring" when limiting is activated.

January 2015 6.18 Monitoring functions 1527


Call:
CM 9160
PL D <Temperature monitoring>
Bit 15876543210
Axis:Sxxxxx987654321
PL D < I2t monitoring I²t early warning>
Bit 15876543210 15 876543210
Axis Sxxxxx987654321 Sxxxxx987654321
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error possible
Error

Module 9367 I2t-monitoring


The module reports
 an I2t early warning
 an I2t error (temperature exceeded)
The I2t monitoring reported by the module is given with respect to the first I2t
monitor response (power module or motor), if both I2t monitors are activated
(MP_motFactorI2t, MP_ampFactorI2t).
The I2t early warning is withdrawn as soon as the limit for reset is reached. For
the response behavior, See "Limit values" on page 1526.
Constraints:
 Unconnected axes respond with all error bits as 0.
 The I2t monitor responds if the current value exceeds 110% of the rated
current.
 The "I2t early warning" is set approx. 200 ms before the limit takes effect.
The "I2t monitoring" is set when the limit is reached.
 For the spindle axis, only the I2t early warning is possible.
Call:
CM 9367
PL D <I2t early warning, bit-encoded>
(Bit 0 represents logic axis 0, etc.)
PL D <I2t error, bit-encoded>
(Bit 0 represents logic axis 0, etc.)
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error possible
Error

1528 HEIDENHAIN Technical Manual TNC 640


Temperature The temperature model of the motor or power module is defined by the
models entries in the motor table or power module table, respectively (motor.mot,
motor.amp). It must be observed that the calculation used by the temperature
model depends only on the parameters (exists/non-existent). In addition, the
parameters for motors and power modules are to be evaluated separately.
These parameters are explained below using the respective temperature
model for the calculation.

Temperature The following values (entries in the motor table or power module table) are
model, first order required for the first-order temperature model to calculate the temperature.
 F-DC [Hz]:
This parameter is not evaluated for the CC 422.
Lower limit frequency for the transition of traverse to standstill with the
CC 61xx and CC 424.
F-DC = 0 – Default value (0) is active
F-DC > 0 – Input value in Hz is active
 T-DC [s]:
Thermal time constant for operation at standstill (not evaluated at present)
 F-AC [Hz]:
Upper limit frequency for the transition from standstill to traverse.
F-AC = 0 – Default value (0) is active
F-AC > 0 – Input value in Hz is active
 T-AC [s]:
Thermal time constant for the motor or power stage. Identifies the point in
the temperature curve at which 63 % of the maximum temperature is
reached.
T-AC = 0 – Default value: 10 s for axes, 150 s for ball screw
T-AC > 0 – Input value [s] for power modules. For motors, this input value is
active if Tth2 = 0.
 Only for motors Tth2 [s]:
Thermal time constant for the motor. Identifies the point in the temperature
curve at which 63 % of the maximum temperature is reached.
Tth2 = 0 – Default value: 10 s for axes, 150 s for ball screw
Tth2 > 0 – Input value in [s] for motors

January 2015 6.18 Monitoring functions 1529


First-order temperature model of the motor

KTY

P Cth2 Rth2

 P: Heat output of the three phases


 KTY: KTY temperature sensor in the winding
 Cth2: Thermal capacity of the motor housing
 Rth2: Thermal resistance on the motor housing
 Tth2: Thermal time constant Rth2 · Cth2

1530 HEIDENHAIN Technical Manual TNC 640


Temperature The following values (entries in the motor table) are required for the second-
model, order temperature model to calculate the temperature (default values [axis/
second order spindle] are valid for the entry "0"):
 F-DC [Hz]:
This parameter is not evaluated for the CC 422.
Lower limit frequency for the transition of traverse to standstill with the
CC 61xx and CC 424.
F-DC = 0 – Default value (0 Hz) is active
F-DC > 0 – Input value in Hz is active
 T-DC [s]:
Thermal time constant for operation at standstill (not evaluated at present)
 F-AC [Hz]:
Upper limit frequency for the transition from standstill to traverse.
F-AC = 0 – Default value (0 Hz) is active
F-AC > 0 – Input value in Hz is active
 Tth1 [s]:
Thermal time constant for the transition from winding to housing
Tth1 = 0 – Default value (0 s) is active
Tth1 > 0 – Input value in [s] is active
 Rth1 [K/W]
Thermal resistance for the transition from winding to housing.
Rth1 = 0 – Default value: 0 K/W
Rth1 > 0 – Input value in [K/W] is active
 Tth2 [s]:
Thermal time constant for the transition from housing to coolant
Tth2 = 0 – Default value: 10 s for axes, 150 s for ball screw
Tth2 > 0 – Input value in [s] is active
 Rth2 [K/W]:
Thermal resistance for the transition from winding to coolant
Rth2 = 0 – Default value: 0 K/W
Rth2 > 0 – Input value in [K/W] is active
 When the CC starts up, the current motor temperature (KTY sensor) is taken
into the calculation model in order, for example, to compensate any
excessive temperatures.

Note

 All parameters have to be entered for the model to become active. If a


parameter is missing, the
first-order temperature model becomes active, either with the thermal
time constant "Tth2" or with "T-AC."

January 2015 6.18 Monitoring functions 1531


Second-order temperature model of the motor

KTY Tth1
Tth2
Rth1

Rth2

P Cth1
Cth2

 P: Heat output of the three phases


 KTY: KTY temperature sensor in the winding
 Cth1: Thermal capacity of the winding
 Cth2: Thermal capacity of the housing
 Rth1: Thermal resistance winding/housing
 Rth2: Thermal resistance housing/coolant
 Tth1= Rth1 · Cth1
 Tth2= Rth2 · Cth2

Compatibility Old motor tables can generally also be used in newer software versions. If the
columns/parameters required in the temperature models are missing from a
motor table, however, it is of course impossible to calculate a second-order
temperature model.
In such a case the entries F-DC, T-DC, F-AC, T-AC are used for a first-order
temperature model. If this model, too, has no entries (entries "0"), the default
values of the above temperature models apply.

1532 HEIDENHAIN Technical Manual TNC 640


6.18.8 Current utilization of drive motors
Module 9166 provides the momentary utilization of the given drive motor as a
percentage value.
Utilization means:

Speed range nactl < rated speed nactl Š rated speed


Asynchronous P
M --------------------
motor ----------------------- PRated
M ratedRate rated

Synchronous motor M –
-----------------------
MRate rated

Instead of the drive torque, one uses the effective component Iq of the
current, which is proportional to the torque.
IqMean is formed as mean value of the individual current values Iqx of the last
20 ms:

I qMittel
 ( Iq1 ..Iqn )
------------------------------
mean =
n
I qMittel
Mean
Auslastung = 1000 ⋅ -------------------
I qNennRated

For asynchronous motors:


2 2
I qNenn
Rated = I N – I mag

IN: Rated current of motor


Imag: Magnetizing current

For synchronous motors:


IqRated = <Rated current of motor>

The utilization display of synchronous motors is with respect to the rated


torque (M/Mrated).

January 2015 6.18 Monitoring functions 1533


Module 9166 Read momentary utilization of drive motor
The module provides the momentary utilization of a drive motor controlled by
the integral current controller in percent [%] of the rated utilization. The
momentary utilization is ascertained by the current controller, under
consideration of the equivalent circuit data of the motor.
In the speed range (n actl) < (n noml) utilization refers to the quotient |M/
Mlimit|, in the range (n actl) >= (n noml) utilization refers to the quotient |P/
Plimit|.
Constraints:
 The value 0 is read for axes that are not connected.
 The spindle must be coded as axis 15.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
CM 9166
PL B/W/D <Utilization of the drive in [%]>
Error code:

Marker Value Meaning


NN_GenApiModule 0 Utilization read
Error (M4203) 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid value for <Axis> parameter
ErrorCode

1534 HEIDENHAIN Technical Manual TNC 640


6.18.9 Status of HEIDENHAIN hardware and software
Module 9066 is used to determine the status information of the HEIDENHAIN
components. With Module 9067 you can interrogate the status of software
settings—at present with code 0 of the set SIK options.
Module 9066 Status of HEIDENHAIN hardware
Module 9066 interrogates the status information of HEIDENHAIN hardware
components and the SIK component.
Constraints:
 The module can only be called in the cyclic PLC program.
Call:
PS B/W/D/K <Code for hardware component>
0: HEIDENHAIN inverter (only with digital control)
1: SIK ID
If you are migrating from the iTNC 530, please note:
iTNC: SIK ID as BCD number
NCK: SIK ID as decimal number
2: I2t early warning (only with digital control)
3: I2t monitoring (only with digital control)
4: Error of analog part (only with digital control)
CM 9066
PL B/W/D <Status information>
Bit 0: Reserved
Bit 1: DC-link voltage too high
Bit 2: Heat sink temperature too high
Bit 3: Reserved
Bit 4: DC-link current too high
Bit 5: Power supply unit not ready
Bit 6: Leakage current too high
Code 1: SIK ID
Codes 2 to 4: Axis masks
Error code:

Marker Value Meaning


M4203 or 0 Status ascertained
NN_GenApiModule 1 Error code in W1022 or
Error NN_GenApiModuleErrorCode
W1022 or 2 Invalid code for HEIDENHAIN hardware
NN_GenApiModule 24 Module was called in a spawn or submit
ErrorCode job

January 2015 6.18 Monitoring functions 1535


Module 9067 Status of software settings
Status information for the software settings can be interrogated with Module
9067. Module 9067 can currently be used to interrogate the software options
set in the SIK.
Call:
PS B/W/D/K <Mode>
0: Interrogate whether SW option is set in the SIK
PS B/W/D/K <Number>
If mode is 0: Number of SIK option
CM 9067
PL B/W/D <Status>
Status of SIK option (if mode is 0)
0: Not set
1: Set
Error code:

Marker Value Meaning


M4203 or 0 Function performed successfully
NN_GenApiModule 1 Error code in W1022 or
Error NN_GenApiModuleErrorCode
W1022 or 1 Invalid value for number
NN_GenApiModule 2 Invalid value for mode
ErrorCode

Example:

Query if option 10 is set in the SIK:

PS K0
PS K10
CM 9067
PL DL_statusinfo_9067
M_display_module_error(KG_error_module_9067)

1536 HEIDENHAIN Technical Manual TNC 640


Suppressing the
status signals of the
HEIDENHAIN Settings in the configuration editor MP number
supply unit
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
powStatusCheckOff 401209

The parameter object CfgPowerStage is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

The HEIDENHAIN power supply units have several status signals which lead
to error messages on the control. MP_powStatusCheckOff is used to
suppress the error message for each status signal.
HEIDENHAIN does not recommend suppressing the error messages from the
power supply units. If you are using a UE 2xx, the signals must be suppressed
because the UE 2xx compact inverter does not provide these signals.
The handling of status signals from HEIDENHAIN power supply units, which
are already inactive during control start-up, varies depending on
MP_ampStatusCheckOff – bit 0.
MP_powStatusCheckOff
 Bit 0 = 0: Missing signals do not result in an error message when the drive
is switched on.
 Bit 0 = 1: Missing signals result in an error message when the drive is
switched on. Signals that are not provided by the power supply unit must be
suppressed with MP_powStatusCheckOff (bit 1 to bit 6), because non-
existent signals are always identified as errors.

Note

Signals that change their status during operation are always identified as
errors.

January 2015 6.18 Monitoring functions 1537


MP_powStatusCheckOff
Suppress error messages from the HEIDENHAIN supply units
(compare to iTNC 530: MP2195)
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 0 – Status signals that are already active during control
power-up.
0: Ignore missing signals
1: Evaluate missing signals
Bit 1—ERR.UZ.GR signal
0: Do not suppress error message
1: Suppress error message
Bit 2—ERR.TMP signal
0: Do not suppress error message
1: Suppress error message
Bit 3 – Reserved
Bit 4—ERR.IZ.GR signal
0: Do not suppress error message
1: Suppress error message
Bit 5 – RDY.PS signal
0: Do not suppress error message
1: Suppress error message
Bit 6—ERR.ILEAK signal
0: Do not suppress error message
1: Suppress error message
Bit 7—PF.PS.AC signal
(only on CC 61xx / UEC 11x)
0: Do not suppress error message
1: Suppress error message
Bit 8—PF.PS.DC signal
(only on CC 61xx / UEC 11x)
0: Do not suppress error message
1: Suppress error message
Bit 9 – Monitoring of DC-link voltage Uz or
LIFTOFF function
(only on CC 61xx / UEC 11x)
0: Uz monitoring and LIFTOFF function are active
1: Uz monitoring and LIFTOFF function are not active
Bit 10 – Spindle power is reduced if maximum power is
exceeded when supplied by the same UV
0: Reduction of power not active
1: Power is reduced if maximum power is exceeded (function
active)
Default: All bits = 0, optional parameter
Access: LEVEL3
Reaction: RUN

1538 HEIDENHAIN Technical Manual TNC 640


6.18.10 Motor brake

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
vCtrlSwitchOffDelay 400927
vCtrlSwitchOnDelay 400929
CfgServoMotor
motEncCheckOff – bit 3 401303

The parameter objects CfgSpeedControl and CfgServoMotor are not required


for:
 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

Controlling the The motor brakes are controlled with the BRK braking signal, which is
motor brakes transmitted to the HEIDENHAIN inverters via the PWM interface (X51 to
X62). The corresponding outputs are activated there. See the basic circuit
diagrams. Registered customers can download the current basic circuit
diagram from the "HESIS-Web Including Filebase" on the Internet (http://
hesis.heidenhain.de).
The parameters MP_vCtrlSwitchOffDelay and MP_vCtrlSwitchOnDelay
enable you to describe the delay time until the brake is engaged or released in
order to prevent the axis from sagging during this time (e.g. the controller
switches off the current too early, holding brake of the brake is still < 100%).
By defining the parameters MP_vCtrlSwitchOffDelay and
MP_vCtrlSwitchOnDelay, you can also prevent the drive from oscillating
during switch-on/off. Oscillation might cause whistling noises or other effects
on the affected axes.
 In MP_vCtrlSwitchOffDelay, enter the time required by the brake to
engage (plus safety margin). The properties of the controlled system change
during brake engagement. The NC software adapts the controller to the
changed controlled system by adapting the parameters during the overlap
time for braking.

Note

The oscillations can only be suppressed by means of


MP_vCtrlSwitchOffDelay under the following conditions:
 The brake is controlled through X344 of the HEIDENHAIN inverter.
OR
 The brake is controlled through the PLC. In this case, the brake must be
controlled simultaneously with the deactivation of the drive via PLC
Module 9161.

January 2015 6.18 Monitoring functions 1539


 In MP_vCtrlSwitchOnDelay, you can define a time during which the
parameter adaptation is active directly after the drive has been switched on.
In this parameter, you enter the time required by the brake for releasing.
The motor brakes are opened no later than 50 ms after the speed controller is
switched on.
For safety reasons, the controller is not switched off until the braking signal
has been output.
If the inverter sends the RES.PS reset signal, then the BRK braking signals are
output immediately upon switch-off of the controllers, i.e. without any overlap
time.
 Use MP_motEncCheckOff bit 3 to deactivate the parameter adjustment.
HEIDENHAIN recommends that you do not switch off the parameter
adaptation for suppressing the oscillations.

MP_motEncCheckOff
Monitoring functions
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 3 – Switching off the controller when the motor brakes are
activated
0: Suppress oscillations
1: Oscillations are allowed
(cf. iTNC 530: MP2220 Bit 3)
Default: 0
Access: LEVEL3
Reaction: RUN

MP_vCtrlSwitchOffDelay
Dwell time of speed controller during feedback control switch-
off
(compare to iTNC 530: MP2308.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 5 [s] with up to 9 decimal places;
Time between output of the braking signal BRK and switching
off of the controller (overlap time)
Default: 0 [s], optional parameter
Access: LEVEL3
Reaction: RUN

MP_vCtrlSwitchOnDelay
Controller parameters adjusted to closed brake
(compare to iTNC 530: MP2309.x)
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 5 [s] with up to 9 decimal places
0: Function not active
The time [in seconds] after switch on in which the controller
parameters are adapted for a locked brake. For the defined
time, the parameters of the control loop are reduced after the
motor switch-on in order to prevent oscillations.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

1540 HEIDENHAIN Technical Manual TNC 640


Automatic test of
the motor brake
Settings in the configuration editor MP number
Axes
CfgBrake
[Key name of the parameter set]
connection 403301
testBrakeCurrent 403302
testBrakeTolerance 403303
timeToBrakeTest (only with FS) 403304

You can carry out an automated functional test of the motor brake after
switching on the drive, either before traversing the reference mark or through
activation by PLC Module 9143.
The brake management of the control enables the separate configuration and
testing of one or several brakes for a drive. Even with several holding brakes
on one axis, this enables each brake to be checked for functionality. Each
individual brake can be configured in the configuration entity CfgBrake and
assigned to an axis via MP_Brakes.
This brake test functions together with HEIDENHAIN inverter systems with
use of the inverter brake outputs or any PLC outputs. The inverter brake
outputs are controlled directly by the controller unit and the PLC outputs must
be controlled by the PLC program. The value for the control comes from the
PLC words NN_AxBrakeReleaseRequest and NN_SpiBrakeReleaseRequest
that are also set when the inverter outputs are set by the control unit. Observe
the HEIDENHAIN basic circuit diagram.
 Enter the type of brake control in the machine parameter MP_connection.
This is relevant to testing the motor brake controls and to testing the motor
brakes:
–2: The brake is controlled through the brake output (X344) of the inverter
(with the entry –2, the control is compatible to the previous control)
–1:
–1: The brake is controlled through an arbitrary PLC output.
To test the motor brake a torque (current) is applied for one second with the
brake applied, and the path around which the axis moves is measured. If the
permissible path is exceeded, the error message 8130 Motor brake defective
<axis> appears, and the axis remains controlled. The test is carried out
simultaneously for all affected axes.

Attention

In case of an error, the axis must be moved to a safe position, and physically
supported, if necessary. Only then may the machine be switched off so
that the defect can be corrected.

January 2015 6.18 Monitoring functions 1541


The brake test is activated (insert optional parameter) or deactivated (delete
optional parameter) separately for each servo drive via
MP_testBrakeCurrent. An additional test torque is applied to the servo drive
during the brake test. This test torque is defined via a multiplier for the motor
stall current I0. MP_testBrakeCurrent defines the multiplier. This test torque
exerts additional load on the holding brake of the servo drive. The axis is
prevented from moving during the brake test and the brake test is considered
to have been passed only if the brake withstands this load.
The control determines the algebraic sign of the test torque individually for
each servo drive depending on the holding torque.
If no motor current flows while testing the motor brakes, the error message
8140 No current for brake test <axis> appears.
 Enter in MP_testBrakeCurrent a factor for the motor stall current with
which the motor brake test is to be carried out. If the test is not to be carried
out, or for motors without brakes, delete the parameter from the
configuration.
The reference value for the factor from MP_testBrakeCurrent is the stall
current I0 entered in the motor table. If I0 in the motor table equals 0, then
the rated current I-N from the motor table is used.
Recommended input value for MP_testBrakeCurrent:

ML
MP_testBrakeCurrent ≥ 1.3 ⋅ ----------
M0

ML: Maximum load torque of the axis. In a standard case the holding torque of
a vertical axis is used here. It is to be ensured via activation of the brake that
a vertical axis does not fall down when the drive controllers are switched off.
M0: Stall torque of the motor
It is possible that a stall torque M0 = 0 m is entered in the motor table. The
following alternative formula also enables a test current to be determined with
this specification:

I1
MP_testBrakeCurrent ≥ 1.3 ⋅ -----
I0

I1: Load current


I0: Stall current (reference value for the test current)

1542 HEIDENHAIN Technical Manual TNC 640


Always keep in mind:
 Torque for motor test ≥ 1.3 ⋅ maximum load torque of the axis
 Stall torque of the motor ≥ maximum load torque of the axis
 Holding torque of the motor brake ≥ torque for the motor test
Note

 Please note that when reading the current via the internal oscilloscope on
the CC 61xx or UEC 11x you are seeing the effective value of the current.
 Please note that the test torque can only be generated with a certain
factor of uncertainty. Factors of influence here are the accuracy of the
current sensors and the torque constant of the motor.

 Enter in MP_testBrakeTolerance the permissible path that the motor is


allowed to move against the brake.
To prevent standstill monitoring from responding, the following is required:
MP_testBrakeTolerance < MP_checkPosStandstill!
Recommended input value for MP_testBrakeTolerance:

MP_distPerMotorTurn
MP_testBrakeTolerance = 2 ⋅ α ⋅ ---------------------------------------------------------------------------
360°
360°

α: Permissible braking angle: Backlash of the motor brake as per the


manufacturer specifications (for HEIDENHAIN motors, α ≤ 1°)
Example:
QSY 155B-EcoDyn: M0 = 13 Nm, MBr = 40 Nm
ML = 11 Nm

11 Nm
MP_testBrakeCurrent ≥ 1.3
1,3 ⋅ --------------------- = 1.1
1,1
13 Nm

MP1054.x (distance per motor revolution) = 20 [mm]


α = 1°

20 mm
MP_testBrakeTolerance = 2 ⋅ 1° ⋅ ---------------------- = 0,111
0.111 mm
360°

 Assign corresponding brakes to a drive via the optional axis-specific machine


parameter MP_brakes.
The automatic test with use of several brakes for each axis is fundamentally
as described above. The following modifications however are made with use
of several brakes for each axis:
 1. If multiple brakes are configured for a drive, these are tested separately
and sequentially. The results of the test are entered only when all brakes
have been tested for an axis.
 2. If during a test a brake is found to be defective, the test is not aborted and
the other brakes are tested. An error is entered at the end as the result of
the complete test for the drive. With this simultaneously set error message
the operator is informed which of the brakes on the axis caused the error.

January 2015 6.18 Monitoring functions 1543


 The PLC program receives this information to allow a query for this
information via Module 9364 (or API marker).
 The PLC program must ensure that the drives are not deactivated during
active tests.

Note

If during the brake test or between two sequential subtests for an axis of
the drive this specific axis is deactivated (via PLC program or emergency
stop) then this causes a failure of the test. The machine can then only be
switched off.

Note

 The parameter MP_timeToBrakeTest is only evaluated in systems with


functional safety (FS). Please refer to the Technical Manual for Functional
Safety (FS)!
 For analog closed-loop axes, the motor brake test is not available, i.e. the
machine parameters MP_connection, MP_testBrakeCurrent and
MP_testBrakeTolerance are not evaluated, see page 1091.

1544 HEIDENHAIN Technical Manual TNC 640


PLC modules PLC Module 9143 starts the test for the brake(s) for a drive (as above). All
brakes of the drive are sequentially tested.
PLC Module 9144 for starting the repeated self-test and the actual self-test
after booting the control also tests the brakes of an axis sequentially. The
result is only established after all brakes on an axis have been tested. If the
test registers a defective brake, the test is not aborted and the other brakes
are tested. An error is entered at the end as the result. The displayed error
message informs the operator which of the participating brakes on the axis
caused the error. Observe that in your PLC program a drive cannot be
deactivated during a brake test.
For sequentially testing several brakes on one axis the PLC program must
interrogate whether and which brake must be activated. This request for
releasing a brake is made available with the PLC words:

PLC operand / Description Type

NN_AxBrakeReleaseRequest D
Request to release the axis brakes.
Bit-encoded axis 1 to axis n corresponds to bits 0 to n
0: Request to activate the brake
1: Request to release the brake
NN_SpiBrakeReleaseRequest D
Request to release the spindle brakes.
Bit-encoded axis 1 to axis n corresponds to bits 0 to n
0: Request to activate the brake
1: Request to release the brake

The information of both PLC words NN_AxBrakeReleaseRequest and


NN_SpiBrakeReleaseRequest corresponds to the information from PLC
Module 9159. The PLC module, however, provides this information globally
for all drives, while the PLC words provide drive-specific information.
Module 9048 also returns the result of the brake test. If several brakes are
configured on an axis the collected status of all brakes is returned. If the test
failed with a brake, this is registered for the axis. The test is only registered as
successful when all axis brakes were tested and when all were functional.
In addition to Module 9143, the new PLC Module 9363 enables the specific
testing of only one brake. If the test is started with Module 9363, only the
specified brakes of the programmed axis are tested (bit mask). All other brakes
on the axis are not tested. With this test no result is entered for the axis at the
end, apart from if the axis has only one brake to be tested. In addition, the
direction (algebraic sign of the test torque) can be explicitly specified for
machines where the direction of power on the brake cannot be correctly
determined.

January 2015 6.18 Monitoring functions 1545


MP_connection
Control of brake or brake wiring
Available from NCK software version: 597110-08.
Format: Number
Input: –1, –2
-2: The brake is controlled through X344 of the inverter.
In systems with FS functional safety, this means that the +24 V
side of the brake is controlled via the converter and the 0 V side
is controlled via the A channel of an FS output.
-1:
–1: The brake is controlled through an arbitrary PLC output.
In systems with FS functional safety, this means that the brake
is controlled only via a dual-channel FS output without the
inverter.
Default: -2
Access: LEVEL3
Reaction: RUN

MP_testBrakeCurrent
Multiplier for motor current during test of motor brake
(compare to iTNC 530: MP2230.x)
Available from NCK software version: 597110-05.
Format: Number
Input: 0.1 to 30 [· motor stall current] with up to 9 decimal places
Recommended: 1.3 · ML / M0
If the optional attribute is missing, do not perform the brake
test.
Default: No value, optional parameter (= brake test inactive)
Access: LEVEL3
Reaction: RUN

1546 HEIDENHAIN Technical Manual TNC 640


MP_testBrakeTolerance
Maximum permissible path during test of motor brakes
(compare to iTNC 530: MP2232.x)
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 10 [mm] or [°] with max. 9 decimal places
(cf. iTNC 530: MP2232.x)
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_timeToBrakeTest
Maximum time until the test of the motor holding brakes via the
holding torque (evaluation only for systems with functional
safety (FS)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 60000 [min]
0: No time monitoring through the SKERN
Default: 480
Access: LEVEL3
Reaction: RUN

Module 9143 Activate the brake test


This module can start an axis-specific brake test with the configuration from
the machine parameters or with other values for the MP_testBrakeCurrent
and MP_testBrakeTolerance machine parameters.
Constraints:
 Programming in a submit job blocks other submit jobs until the test is
completed.
 The PLC module automatically passes the processing time to other spawn
and submit processes.

Note

With use of functional safety FS the following applies: A successfully


implemented test leads to resetting the timer for the brake test of this
drive.
If the rated current transferred from PLC Module 9143 for the test torque
is less than the configured value in the MP or if the transferred permissible
path is greater than the configured MP value, the test is still conducted with
the values from the machine parameters to fulfill the requirements
specified there.
Please refer to the Technical Manual for Functional Safety (FS).

January 2015 6.18 Monitoring functions 1547


Call:
PS K/B/W/D <Axis number>
0 = 1st axis, 2 = 2nd axis, etc.
PS K/B/W/D <Multiplier for rated current>
Value in 1/1000 or
0: Default MP2230 (factor of nominal current)
PS K/B/W/D <Permissible traverse path>
Value in 0.1 [um] or
0: Default MP2232
CM 9143
PL B/W/D <Status/Error>
0: Brake OK
1: Brake defective
2: Invalid axis or negative values for rated current or traverse
path
3: Call during running NC program or during other PLC jobs
4: Call from cyclic PLC program
5: Error during data exchange
6: Module not supported by the control
7: Drive not ready
8: Brake test was aborted (e.g. by emergency stop)
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid axis programmed (invalid axis
ErrorCode number, not a closed-loop axis, axis
currently open-loop axis or slave axis) or
negative values programmed for the
traverse path or current
8 Module not supported by this control
20 Module was not called in a submit or
spawn job
21 Call during program run or during other
active PLC jobs for the programmed axis
40 Drive not ready
45 Canceled due to error during data
exchange or due to external influences
(e.g. emergency stop)

1548 HEIDENHAIN Technical Manual TNC 640


Module 9363 Brake test with specification of brake to be tested
The PLC Module 9363 enables a brake test for specific brakes or for all brakes
on a drive to be implemented.
Constraints:
 The module should be programmed in a spawn subprogram. When calling
from a submit subprogram the module blocks all other submits until the test
is completed.
 The PLC module automatically passes the processing time to other spawn
and submit processes.
 In contrast to Module 9143, values for rated current and permissible path
can no longer be programmed. Values from the MP configuration are used.
 An axis that is not configured as "active," or an axis that is currently
deactivated, is treated as if it were not present.
The request to the PLC about which axis brakes should be released is made
available by the NC in the following structures:
PlcApiAxis structure: nn_AxBrakeReleaseRequest
PlcApiSpindle structure: nn_SpiBrakeReleaseRequest

Note

The module can also be used if integrated functional safety (FS) is in use.
Please refer to the Technical Manual for Functional Safety (FS).

Call:
PS B/W/D/K <Mode>
0: Axis-specific brake test
PS B/W/D/K <Axis number>
PS B/W/D/K <Brakes>
Mode 0: Bit mask of the brake(s) to be tested
Bit 0: first brake, bit 1: second brake etc.
-1: Test all axis brakes
PS B/W/D/K <Direction>
Mode 0:
0: Automatic
1: Positive
–1: Negative
PS B/W/D/K <Additional parameters>
Mode 0:
0: Must be programmed but currently has no effect
CM 9363
PL B/W/D <Status>
0: Brake OK
1: Brake defective
2: Invalid parameter value
3. Call during a running NC program or during other PLC jobs
(e.g. PLC positioning)
4: Call from cyclic PLC program
5: Error during data transfer
6: Module not supported by the control
7: Drive not ready
8: Brake test was aborted (e.g. drive deactivated,
emergency stop)

January 2015 6.18 Monitoring functions 1549


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error. Brake test was performed
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid axis programmed (axis number
ErrorCode invalid, no closed-loop axis, currently open-
loop axis, slave axis or analog axis) or
invalid value programmed for mode, brake
mask, direction or additional parameters
8 Module not supported by the control
20 Call not in a submit/spawn job
21 Call during program run or other active PLC
jobs for programmed axis
40 Drive not ready
45 Interruption due to the internal error with
data exchange or due to external
influences (e.g. emergency stop)

1550 HEIDENHAIN Technical Manual TNC 640


6.18.11 Emergency stop monitoring
For the emergency stop routine of the TNC 640 without functional safety
(FS), the PLB 62xx has the PLC "control-is-ready" output X9/3a (-STO.A.G) and
the two emergency stop inputs -ES.A (X9/7a) and -ES.B (X9/7b) (ES:
Emergency Stop). The delayed control of the safety relay in the compact
inverters or supply units (X71, X72) over the PLC output -STO.A.G is
mandatory. Please read the basic circuit diagram of the TNC 640.
The -STO.A.G output signalizes the readiness of the control and has the value
= 1 until one of the following conditions is met:
 Controller unit reports fatal error
 Controller unit reports an error with an emergency stop as reaction
 Main computer reports fatal error
 Main computer reports an error with an emergency stop as reaction
 PLC, PLC program reports an error with an emergency stop as reaction
 No PLC program is run
As a result of these events, -STO.A.G becomes 0. When the error message
is acknowledged, -STO.A.G becomes 1 again and the control is ready for
operation again. To prevent that the control then immediately changes back
into closed-loop mode, the -STO.A.G signal must be wired into the emergency
stop chain (-ES.A, -ES.B). Switching -STO.A.G off must result in a switch-off of
the -ES.A and -ES.B inputs. This triggers additionally an external emergency
stop. In addition, -STO.A.G = 0 must remove the latching of the machine
control voltage. This makes it possible to switch the machine back on by
means of "Control voltage on."

Note

Switching STO.A.G off must result in a switch-off of the -ES.A and -ES.B
inputs.

On the system PL, the -ES.A and -ES.B inputs are available for triggering an
emergency stop on the TNC 640 with functional safety (FS). However, the
wiring of the safety relays in the compact inverters or power supply units via
the PLC outputs STO.A.G and STOS.A.G is then optional.

Note

Please note the special documentation for controls with functional safety
(FS) an the corresponding basic circuit diagram!

January 2015 6.18 Monitoring functions 1551


Internal If an internal emergency stop is triggered (e.g. due to standstill monitoring),
EMERGENCY STOP
 the nominal speed value "null" is transmitted, braking the drives on the
intended braking ramp (usually at the limit of current)
 the control-is-ready output is switched off (-STO.A.G on PL; responsible
watchdog reacts after 10 ms at the latest)
 the inverter enabling signals are switched off (-STO.A.x over PWM cable;
the responsible watchdog reacts within the time set in MP_watchdogTime
from 1 to 30 s), and thus the inverters are de-energized.
 the NN_GenNcEmergencyStop marker is set by the NC.
The parameter MP_watchdogTime serves to monitor the braking of the
drives. The monitoring time for the braking process is defined in
MP_watchdogTime. The time for switching off the pulses (entry in
MP_watchdogTime) must be greater than the maximum possible braking
time of the axis/spindle that can occur through electrical braking. Especially for
axes/spindles without mechanical braking, you must ensure that the pulses
are not switched off until after the maximum possible braking time for the axis/
spindle that can occur through electrical braking. Non-decelerated axes/
spindles coast to a stop after pulse switch-off. In the worst case, this can
cause damage to the machine. Specific operating conditions of the machine,
such as maximum feed rate, overload on the axes, etc., must also be taken
into account.
During an internal emergency stop, an error appears on the screen. Depending
on its class (cause), it is possible that an error cannot be cleared with the CE
key:
 Correct the error and restart the switch-on routine.

MP_watchdogTime
Delay for the SH1B signal (inverter enable)
Available from NCK software version: 597110-03.
Format: Number
Input: 1 to 30 [s]
Default: 3 [s]
Access: LEVEL3
Reaction: RUN

1552 HEIDENHAIN Technical Manual TNC 640


External emergency For triggering an emergency stop, controls with HSCI have the emergency-
stop -ES.A and - stop inputs –ES.A and –ES.B (e.g. –ES.A (X9/7a) and –ES.B (e.g. X9/7b) on the
ES.B PL). A "0" signal at –ES.A or –ES.B triggers an emergency stop reaction with
the error message external emergency stop. The familiar PLC inputs I3 and
I32 are being replaced by –ES.A and –ES.B in HSCI systems.
Both emergency stop inputs –ES.A and –ES.B must be wired. Both inputs
must carry the same signal. This signal is a safety-related signal and must be
generated by the appropriate devices (e.g. dual-channel emergency stop
button, safety contactor combinations).
If an external emergency stop is triggered,
 the nominal speed value "null" is transmitted, braking the drives on the
intended braking ramp (usually at the limit of current)
 the External emergency stop error message is displayed, and
 the NN_GenNcEmergencyStop marker is set by the NC.
You can clear the error message with CE after switching the machine control
voltage back on.
However, an external emergency stop (–ES.A, –ES.B) does not disconnect the
output –STO.A.G.
Maximum reaction times of the control until the response is triggered at the
input after the signal change.

Input Reaction time Reaction

–ES.A = 0 5 ms EMERGENCY
STOP
–ES.B = 0

Minimum required pulse width for detection by the control at the –ES.A, –ES.B
inputs: pulse width > 3 ms

PLC operand / Description Type

NN_GenNcEmergencyStop M
Control in external emergency stop state
0: Control is not in external EMERGENCY STOP state
1: Control is in external EMERGENCY STOP state

January 2015 6.18 Monitoring functions 1553


Axis enabling HEIDENHAIN recommends using the axis-specific "axis enable" of the CC via
the configuration in MP_driveOffGoupInput and MP_driveOffGroup in
addition to –ES.A and –ES.B, see page 351.
On controls with HSCI but without functional safety (FS), a pure axis enable,
which up to now has been realized over I32, can only be realized through the
function of the former X150. However, the CC 61xx and UEC 11x do not have
an X150 connector for axis-specific or axis-group-specific drive enabling.
Instead, you can now enter in the MP_driveOffGroupInput machine
parameter (100106) eight numbers of those PLC inputs that simulate the
inputs of X150. If one of these PLC inputs is switched off, the corresponding
drives are decelerated on the provided braking ramp (usually at the limit of
current). Over PLC module 9161 you have to switch off the axes of the
affected axis groups. To do so, you can use PLC module 9157 to scan the
corresponding PLC inputs.
The axes are assigned to individual axis groups through the axis-specific
parameter MP_driveOffGroup (400015).
If the corresponding PLC inputs are switched off, the NC
 transmits the nominal speed value "null", braking the drives on the intended
braking ramp (usually at the limit of current)
 detects the standstill of the drives after braking and switches off the pulses
of the power stage over the PWM interface (-STO.B.x).
Machine parameter MP_vCtrlTimeSwitchOff serves to monitor the braking
of the drives. The monitoring time for the braking process is defined in
MP_vCtrlTimeSwitchOff. After the monitoring time has expired, the control
checks whether the servo drive is at a standstill. If this is not the case, the
control assumes that a serious error has occurred and switches off the pulses
of the power stages via -STO.B.x (signal to PWM cable).
This ensures that, after a request to switch off the servo drives (e.g.
emergency stop, X150, PLC or alarm), the pulses are safely switched off (via
-STO.B.x) at the latest after the time specified in MP_vCtrlTimeSwitchOff
expires. If the standstill is detected right before expiration of the time defined
in MP_vCtrlTimeSwitchOff, the active braking process is continued and the
pulses are not switched off until after the overlap time.
The time for switching off the pulses (entry in MP_vCtrlTimeSwitchOff) must
be greater than the maximum possible braking time of the axis/spindle that
can occur through electrical braking. Especially for axes/spindles without
mechanical braking, you must ensure that the pulses are not switched off until
after the maximum possible braking time for the axis/spindle that can occur
through electrical braking. Non-decelerated axes/spindles coast to a stop after
pulse switch-off. In the worst case, this can cause damage to the machine.
Specific operating conditions of the machine, such as maximum feed rate,
overload on the axes, etc., must also be taken into account.

1554 HEIDENHAIN Technical Manual TNC 640


Maximum reaction times of the control until the response is triggered at the
input after the signal change.

Input Reaction time Reaction

PLC input on PLD in 18 ms Stop axis group along the


slots 1 to 4 emergency braking ramp

PLC input on PLD in 21 ms Stop axis group along the


slots 5 to 8 emergency braking ramp

Minimum required pulse width for detection by the control at PLC inputs on
PLDs in slots 1 to 4: pulse width > 6 ms

Attention

The time for switching off the pulses via -STO.B.x, (entry in
MP_vCtrlTimeSwitchOff) must always be greater than the maximum
possible braking time of the axis/spindle that can occur through electrical
braking. However, do not set too large a value in MP_vCtrlTimeSwitchOff.
Otherwise the safety function of the machine parameter cannot be
ensured.

MP_vCtrlTimeSwitchOff
Pulse switch-off of the power modules (STO.B.x)
(compare to iTNC 530: MP2173.x)
Available from NCK software version: 597110-05.
Format: Number
Input: 0.1 to 100 [s]
0 = 3 seconds (default value)
Default: 3 [s]
Access: LEVEL3
Reaction: RUN

PLC outputs PLC outputs can be controlled by the PLC program and switched off in the
event of an emergency stop. Additionally, the IOconfig configuration tool
enables you to define the behavior of PLC outputs in the event of an
emergency stop. Outputs that are defined as output type 3 (switch-off in case
of an emergency stop) are switched off (= 0) if an external or internal
emergency stop is triggered. In this case, the type 3 outputs remain switched
off until the emergency stop is rescinded and the control voltage has been
switched on again.

Note

Test the desired behavior of the PLC outputs in the event of an emergency
stop!

January 2015 6.18 Monitoring functions 1555


Failure test For test purposes, the behavior in the event of a failure of the MC main
computer can be simulated in order to inspect the correct wiring of the holding
brakes. Performing the FAILTEST means:
 There are no more software-controlled actions—neither by the NC nor by
the PLC
 In HSCI systems, the control-is-ready output –STO.A.G is reset

Danger

Hanging axes must be supported before the test in order to prevent


damage to the machine in case of error.

 Under MOD, enter the code number 6871232.


 Press the ENT key and the test will start.
After the test has been completed, you must restart TNC 640.

Connection In the event of an error, a drop-off of the control-is-ready output (-STO.A.G)


diagram must trigger an emergency stop. The control therefore checks this output
every time that line power is switched on.

Note

The circuitry recommended by HEIDENHAIN is illustrated in the Basic


Circuit Diagram.
Ensure that the control-is-ready acknowledgment occurs within 1 second.

Emergency stop After the emergency stop test or a self-test is started, internal signals of the
test HSCI participants are tested for proper function in a first phase. In a further,
second phase the emergency stop test and brake test are conducted with
external signals (–ES.A, –ES.B, –STO.A.G).
In the event of an error, a drop-off of the control-is-ready output (MC.RDY or
-STO.A.G) always triggers an emergency stop.

Note

The circuitry recommended by HEIDENHAIN is illustrated in the Basic


Circuit Diagram of the TNC 640.

With NN_GenSafetySelftest you can find out via the PLC program whether
the emergency-stop test is running:

PLC operand / Description Type

NN_GenSafetySelftest M
0: Self-test of control is not performed
1: Self-test of the control (emergency stop test) is being
performed

1556 HEIDENHAIN Technical Manual TNC 640


During the self-test, the operator is informed of this via a progress bar. This is
hidden when errors are triggered during the self-test that interrupt the self-test
process, or when an action must be implemented by the operator for
continuing the self-test, e.g. "Activate control voltage".

January 2015 6.18 Monitoring functions 1557


Time diagram of essential signals after the TNC 640 has been booted and
during the emergency-stop test:

Step Function Screen display


1 Start of the self test, immediately after
compiling of the PLC program
2 Phase 1 of the self-test:
Triggering and detection of essential
internal signals are tested. In this phase of
the self-test, the signals STO.A.G (X9/3a)
and STOS.A.G (X9/2a) are set and deleted
several times.
3 Waiting for machine control voltage RELAY EXT. DC
VOLTAGE MISSING
4 Detection of the control voltage and cut-off EMERGENCY STOP test
of the STO.A.G/STOS.A.G signal by the NC
software.
ES.A/ES.B must switch to zero within one
second.
5 Switch-on of the STO.A.G/STOS.A.G signal
by the NC software.
6 Phase 2 of the self-test:
Release and detection of the emergency
stop signals ES.A and ES.B are tested
internally. No hardware terminals are
switched!
7 Normal control operation TRAVERSE REFERENCE
Control voltage is on, STO.A.G/STOS.A.G POINTS
output and ES.A/ES.B are at "1".

1558 HEIDENHAIN Technical Manual TNC 640


The following error messages can occur during the test:
 Timeout during self-test
At least one HSCI participant has not answered a request or has not
correctly detected a signal condition to be tested. Possible causes:
• HSCI participant/device is defective
• HSCI cabling is faulty
• The hardware components used and/or software are not compatible
with each other.
 Error during self-test
The sequence of the individual test steps and processes in the self-test do
not fulfill the requirements. A signal condition to be tested is not in the
required initial condition. Possible causes:
• HSCI participant/device is defective
• HSCI cabling is faulty
• The hardware components used and/or software are not compatible
with each other.
 Error in self-test
Has same causes as Error during self-test. However, after the cause of
error is corrected (e.g. by closing the guard door), the test can be continued
without the TNC 640 having to restart.

January 2015 6.18 Monitoring functions 1559


Repetition of the One of the requirements of EN ISO 13849-1 for the TNC 640 is that the power-
power-up test up test (emergency-stop test and braking test) must be repeated within no
more than 168 hours. It must be ensured by the PLC program that this
requirement is met. However, a running NC program can be run to its end
even after the 168 hours have passed if the guard doors have been and remain
closed the entire time. However, this may only be done if the guard doors
remain closed until the power-up test has been repeated! If the guard doors
are open and the 168 hours have expired, the PLC program must trigger an
error with an emergency stop reaction. According to standards, once the 168
hours have passed it is no longer possible to rule out any faulty behavior of the
safety functions.
The emergency stop test can be started directly through the PLC module
9144. The braking test is started through the PLC module 9143. The required
timer for monitoring must be realized in the PLC program. When the control is
booted after the main switch is on, the control automatically runs the power-
up test.
Module 9144 Configuration of the EMERGENCY STOP test
PLC module 9144 is used to activate special functions regarding the safety
self-test or emergency-stop test, as well as the functional safety (FS) of a
HEIDENHAIN control system. The test can be started directly through the PLC
module. Also, a PLC soft key can be made available through the PLC program
if all minimum requirements are fulfilled so that the user can start the self test
directly by soft key.
With module 9144, you can specify whether a repeated self test should be
started immediately (mode 0) or by the user via soft key (mode 1).
It must be ensured by the PLC program that the following minimum
requirements are met before the self-test is started:
 All guard doors must be closed and, if possible, locked.
 No active machining operation is allowed.
 All servo drives must be switched off.
If a TNC 640 with functional safety (FS) is used, there are further constraints:
 Defining an NC operating mode for functional safety in NCK-based
controls
The PLC program must select an NC operating mode for systems without
operating-mode group (PNC 610). After booting the system, in mode 10 you
must set the value of parameter 1 to 2 to initiate the homing and testing of
the axes. Then, you must use the PLC to switch to one of the two NC
operating modes (e.g. operation through machine operating panel). The
system with Functional Safety is not ready for operation until both of the two
above-mentioned actions have taken place.
 Testing the axis positions for functional safety in NCK-based controls
In systems without operating-mode group (PNC 610), the PLC program
must request that the axis positions be tested so that functional safety can
be realized. The user must confirm the test with the permissive button.

1560 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Mode>
0: Start self test immediately
1: Prompt the user to start the self-test
10: Define the operating mode for functional safety
11: Request for testing the axis position
PS B/W/D/K <Parameter 1>
Mode 0: No evaluation, but must be programmed
Mode 1: No evaluation, but must be programmed
Mode 10:
0: Operation through machine operating panel
1: Operation through manual control unit
2: Homing and testing of axes
Mode 11: Number of axis to be tested
PS B/W/D/K <Parameter 2>
Mode 0: No evaluation, but must be programmed
Mode 1: No evaluation, but must be programmed
Mode 10: No evaluation, but must be programmed
Mode 11: No evaluation, but must be programmed
CM 9144
PL B/W/D <Status/Error>
Mode 0:
0: Function is being run
1 = Error in NN_GenApiModuleErrorCode
Error code:

Marker Value Meaning


NN_GenApiModule 0 Function is being run
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid value for parameter <Mode> or
ErrorCode <Parameter>
28 Test already active
43 This is not an HSCI system or a system
without functional safety (FS)
58 Control with operating-mode group
61 Function is not supported by this control

January 2015 6.18 Monitoring functions 1561


6.18.12 Monitoring functionswhen using the CC 61xx and CC 424

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motEncCheckOff – bit 4...8 401303

The parameter object CfgServoMotor is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

The following monitoring functions are only available when you are using the
CC 61xx and CC 424. Use MP_motEncCheckOff to activate/deactivate these
functions:
 Bits 4, 5: The KTY temperature sensor of the motors is monitored by the
TNC 640 for excessive and insufficient temperatures. If the KTY is not to be
evaluated (because for example the temperature sensor is not double-
insulated), this function must be deactivated.
 Bit 7: The CC 61xx or CC 424 monitors the input frequency of the speed
encoders. If this leads to problems (e.g. unjustified responses), the
monitoring function can be deactivated. The following error messages can
appear:
• Speed encoder: 8860 Input frequency from speed encoder <axis>
• Position encoder: 8870 Input frequency from position encoder
<axis>
 Bit 8: Position encoders are not used with linear or torque motors. If such
an axis is removed from the closed-loop control and later reintroduced, a
mechanical offset can occur. This offset is not fixed "in one blow," but
instead is adjusted by gradually raising the kV factor from 0 to the original
value.

1562 HEIDENHAIN Technical Manual TNC 640


MP_motEncCheckOff
Monitoring functions
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 4: – Monitoring for excessive motor temperature
0: Monitoring active
1: Monitoring inactive
Bit 5: – Monitoring for too low a motor temperature
0: Monitoring active
1: Monitoring inactive
Bit 7 – Monitoring the input frequency of the speed encoder
0: Monitoring active
1: Monitoring inactive
Bit 8 – Adjust mechanical offset by gradually increasing the kV
factor
0: Function active
1: Function inactive
Default: 0
Access: LEVEL3
Reaction: RUN

January 2015 6.18 Monitoring functions 1563


6.18.13 EN 13849-1 on the TNC 640 with HSCI without functional safety (FS)
The safety functions provided to you vary depending on the hardware and
software installed in the various HEIDENHAIN control systems.
On the TNC 640 with HSCI without integrated functional safety (FS), no
integrated safety functions, such as safe operating modes or safe speed
monitoring, are available. The entire implementation of these functions
according to EN 13849-1 requires external safety components. TÜV Süd only
inspected this control in regard of the safe switch-off of the drives. Control
systems with HSCI without integrated functional safety (FS) only support the
SS1, STO and SBC safety functions.
The HEIDENHAIN safety system for the TNC 640 with HSCI without
functional safety (FS) has a dual-channel structure. Safety contactor
combinations (SCC) are central to the measurement and evaluation of all
safety-relevant assemblies (e.g. keylock switch, emergency stop button). The
SCCs generate output signals that are received as input signals by the two
safety channels. The safety functions are implemented over dual-channel
enabling of the function.
One channel is implemented through external wiring with the SCCs to the
enable relays in the inverters. The second channel includes the control, which
consists of the main computer (MC) and one or more drive controller modules
(CC= controller computer). Safety-relevant errors always lead to safe stopping
of all drives through defined stop reactions.
The basic circuit diagram of the respective control serves as the basis for this
dual-channel design of cut-off paths. This is a non-binding proposal from
HEIDENHAIN, and must be adapted to the requirements of the machine used.
As a machine manufacturer, you are responsible for adhering to the relevant
standards and safety regulations.
The documentation on this topic consists of a system description with
application conditions from HEIDENHAIN. The requirements stated in this
document must be adhered to; the document is available from your
HEIDENHAIN contact person upon request.
The software used in the individual controls is not relevant for the dual-channel
cut-off paths and was therefore not examined by TÜV Süd. Only the hardware,
the inverters, and the external safety components used are decisive for the
evaluation of the cut-off paths.
In addition, the control-is-ready output of the control is only a single-channel
design and is therefore not a "safe" output. The control-is-ready output in the
HEIDENHAIN controls, however, serves as single-channel acknowledgment
signal to the SCCs and must be wired according to the basic circuit diagrams.
For the TNC 640 with integrated functional safety (FS), further integrated
safety functions, such as STO, SOS, SLS are available, see page 242. If you
require more information, please get in touch with your HEIDENHAIN contact
person.

1564 HEIDENHAIN Technical Manual TNC 640


6.19 Spindles
The spindle is controlled via the PLC. The PLC can transfer the control of the
spindle to the NC.
The programmed speed can be output as
 Digital nominal speed value for a digital spindle
 Analog nominal speed value for an analog spindle
 Coded control of the PLC outputs
 Analog nominal speed value for an analog spindle
 Coded control of the PLC outputs

6.19.1 Configuring spindles

Settings in the configuration editor MP number


System
CfgAxes
spindleIndices 100002

The TNC 640 basically treats spindles like axes, i.e. just like the axes in the
system, also a spindle has a logical axis number. The spindle key names and
axis key names must therefore be entered in CfgAxes/axisList.
The logical spindle number is additionally specified with MP_spindleIndices.
The spindle key name's place in the list in MP_spindleIndices defines the
programmable spindle number used by the PLC to identify the spindle.
Spindles are indicated by sequential numbering starting from the index [0].
The key names shown in the selection menu of the MP_spindleIndices
parameter are automatically taken from the MP_CfgAxes/axisList parameter.
Select the key name(s) of the spindle(s) from the menu.
The TNC 640 the supports a maximum of 4 spindles, i.e. MP_spindleIndices
can contain up to 4 elements.

January 2015 6.19 Spindles 1565


MP_spindleIndices
Key names of all spindles on the machine
Available from NCK software version: 597110-02.
Format: Selection menu
Options: The key names from CfgAxes/axisList are automatically
presented as a selection menu. Select the key name of the
spindle.
The index number determines the logical spindle number.
Default: –
Access: LEVEL3
Reaction: RESET
The PLC specifies the number of configured spindles, the logical spindle
number and the index of the NC channel to which the spindle is assigned in
the following PLC operands:

PLC operand / Description Type

NN_GenSpiCount D
Number of configured spindles
NN_SpiLogNumber D
Logical axis number of the spindle. Equals the index of
the spindle from CfgAxes > MP_axisList
0...n: Logical axis number
–1: Spindle does not exist
–2: Spindle deactivated (example: alternation between
C axis and spindle)
NN_SpiChannel D
Index of the NC channel to which the spindle is
currently assigned
–1: Spindle is free (unassigned)

1566 HEIDENHAIN Technical Manual TNC 640


6.19.2 Spindle in position control loop

Position encoder of Analog and digital spindles can be driven in a closed position control loop. In
the spindle this case, the spindle needs its own position encoder, or you use the speed
encoder to measure the position of a digital spindle.
Due to the higher required accuracy, the position encoder should be mounted
directly on the spindle.
 Enter the encoder model for position measurement in
MP_posEncoderType.
 Enter the value 360 in MP_posEncoderDist.
 Enter the line count of the encoder being used in MP_posEncoderIncr.
1 VPP signals undergo 1024-fold subdivision.
 Enter the value 360 in MP_distPerMotorTurn.
If the position encoder cannot be mounted to the spindle because of its
design, the encoder will output several reference pulses per revolution. For
example, with a transmission of 4:1 (motor to spindle), you will receive four
reference pulses (every 90°) per spindle revolution.
 Define the position encoder-to-spindle transmission ratio in
MP_distPerMotorTurn, for example:
360
MP_distPerMotorTurn = ------- = 90
4

Set MP_externRefPulse = spindleRef to use an external reference pulse


input (X30 or –REF.SP) as reference signal. The reference mark of the position
encoder will not be evaluated in this case, see page 1575.
 Evaluate the reference mark with Module 9220 (See "Renewed traversing
of the reference marks" on page 1271).
The individual gear ranges are implemented via one spindle parameter set
each, See "Gear shifting" on page 2401.

January 2015 6.19 Spindles 1567


In NN_SpiReferenceAvailable, the NC reports whether the reference
position of the spindle has been determined.

PLC operand / Description Type

NN_SpiReferenceAvailable M
Reference position found
0: Reference position not found
1: Reference position found
PP_SpiReferenceMarkSignal M
Trip dog
0: Trip dog not triggered
1: Trip dog triggered

Spindle
Oriented spindle
stop (spindle point Settings in the configuration editor MP number
stop)
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
M19MaxSpeed 400307
M19NcSpeed 400310
CfgSpindle
kvFactorM19 401510
m19FilterTime 401515

Note

The spindle position must be measured by an encoder before an oriented


spindle stop can be executed. If the parameter CfgAxisHardware/
posEncoderType is set to no encoder, an oriented spindle stop is not
possible.

1568 HEIDENHAIN Technical Manual TNC 640


Spindle An oriented spindle stop (spindle point stop) with rotating spindle and at high
Oriented spindle speeds is executed in two steps if you set MP_M19MaxSpeed accordingly:
stop with rotating
 Momentary speed >= 120% of MP_M19MaxSpeed (phase 1):The spindle
spindle is braked until the speed limit (MP_M19MaxSpeed) on the limit of current
(speed control with VSoll = 0).
 Momentary speed < 120% of MP_M19MaxSpeed (phase 2):The position
controller is activated with the speed limit (MP_M19MaxSpeed). The actual
position, actual speed and actual acceleration at the time of the transition of
phase 1 to 2 are the initial values for positioning under position feedback
control. This results in a continuous movement, speed and acceleration until
the target position is reached. The jerk is limited during deceleration and
positioning, whereby the maximum jerk can be set.

The oriented spindle stop with rotating spindle and at a speed < 120 % of
MP_M19MaxSpeed is executed under position feedback control.

Note

Please note that MP_maxAcceleration is not effective when the speed in


MP_M19MaxSpeed is lower than the spindle speed at which braking was
initiated.
In the example above, position feedback control is active for the spindle
starting with T1, but MP_maxAcceleration is not effective during the
entire braking process.

January 2015 6.19 Spindles 1569


Note

Make sure that the rotational speed limit is not set too low. Otherwise, due
to the position-controller cycle time it will be impossible to generate jerk-
limited positioning commands.
HEIDENHAIN recommends the following for the setting of
MP_M19MaxSpeed:
 Set a minimum of 3000 rpm for dynamic milling spindles.
 For slower milling spindles set a minimum of 1000 rpm.
The absolute minimum for the input value of MP_M19MaxSpeed is 100
rpm.
With an interpolator cycle time of 3 ms, the technically possible maximum
value is 10000 rpm. If the entry exceeds this threshold, the NC software
automatically limits the value.

MP_M19MaxSpeed
Maximum rotational speed limit for M19
(compare to iTNC 530: MP3520.1)
Available from NCK software version: 597110-01.
Format: Number
Input: 100 to 20 000 [1/min]
Default: 1 000 [1/min]
Access: LEVEL3
Reaction: RUN

1570 HEIDENHAIN Technical Manual TNC 640


For a spindle orientation requested by the NC (tapping, measuring) the
parameter MP_M19NcSpeed (400310) can now be used to specify the speed
for it.

MP_M19NcSpeed
Nominal speed for an oriented spindle stop commanded by the
NC
Available from NCK software version: 597110-03.
Format: Number
Input: Shaft speed [rpm]
Default: 8 [rpm]
Access: LEVEL3
Reaction: RUN

Note

Please note that the value preset in MP_M19NcSpeed will not be effective
if the spindle is positioned by the PLC program.

Specific kv factor As the position control of the spindle is based on other internal algorithms than
for spindle the position control of the axes, it can be useful to set the control behavior of
orientation the spindle so that it differs from that of the axes. The position control of the
spindle is calculated on the MC—this results in time offsets that can, under
certain circumstances, necessitate a reduction of the spindle's kv factor.
Use the parameter MP_kvFactorM19 to define a specific kv factor for the
oriented spindle stop. If M19 is active, the value defined in CfgPosControl/
kvFactor is replaced.

MP_kvFactorM19
kv factor for oriented spindle stop
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 1000 [1/s] with up to 9 decimal places
Only effective with active spindle orientation (M19); replaces
the value in CfgPosControl/kvFactor.
If the parameter is not defined or 0, the value in
CfgPosControl/kvFactor is used.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.19 Spindles 1571


Spindleorientation A ramp algorithm determines the acceleration with a stationary spindle.
with existing MP_maxAcceleration determines the steepness of the ramp during
spindle acceleration, MP_maxAcceleration determines the steepness of the ramp
during braking. The MP_maxFeed parameter or the speed from Module 9414
limits the ramp.

st-
max
A B

C
P0 P1

Legend:
 P0: Initial position
 P1: Target position
 st-max: MP_maxFeed or the rotational speed from 9414
 A: MP_maxAcceleration
 B: MP_maxAcceleration

If the spindle motors (C spindle / C axis) are optimally adjusted for position
mode, orienting the spindle might result in noises, as well as in inappropriate
ramps and jerks.
 Parameter MP_m19FilterTime enables you to specify the mean-value filter
of the nominal position values with M19.

MP_m19FilterTime
Time of nominal position value filter with M19 from standstill
Available from NCK software version: 597110-08.
Format: Number
Input: 33 to 750 [ms] with up to 9 decimal places
Default: 33 [ms], optional parameter
Access: LEVEL3
Reaction: RUN

Spindle See "Spindle control by PLC" on page 1585.


orientation via the
PLC module

1572 HEIDENHAIN Technical Manual TNC 640


Stopping/
Referencing
the spindle at trip Settings in the configuration editor MP number
dog position
Axes
ParameterSets
[Key name of the parameter set]
CfgSpindle
fastInputType 401501
fastInput 401502
zeroPosEdge 401503
stopOnSwitchSpeed 401504
CfgReferencing
refAuxFunctions
externRefPulse 400415

The parameter object CfgSpindle is not required for:


 Axes that are not defined as spindles (not entered in MP_spindleIndices)
 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)

A spindle that is not driven in a position control loop can also be stopped at a
defined position (trip dog position). The prerequisite for this is that the position
is reported to a fast PLC input or a special reference signal input (X30 or –
SP.REF). A fast PLC input is not read in PLC cycle time but in the IPO clock.
On the TNC 320 you can either use the input X30 or specify any PLC input of
X42 of the MC 320 processing unit as input signal in the MP_fastInput
parameter. Ensure that the specified input is not being used by the PLC
program.
On the TNC 640, either the input –SP.REF is used as the input for the spindle
reference signal or a vacant PLC input on the PL 62xx PLC system module or
a vacant PLC input of the UEC 11x. Use one of the first two slots from the left
on the PL 62xx. Use the IOconfig PC software to determine a vacant PLC input
and identify its input number.
During a spindle stop, the PLC transfers the rotational speed for "waiting for
the input signal" (See "Module 9414 Position the spindle" on page 1598) in
Module 9414.
The spindle is stopped in three steps.
1 The spindle is decelerated until the defined rotational speed is reached.
2 The spindle continues rotating at the defined rotational speed.
3 The spindle is stopped immediately (without ramp) as soon as the input
signal of the spindle trip dog is detected.

With the MP_fastInputType parameter you specify how the TNC 640 handles
the signal of the reference trip dog. Select forStopping to stop the spindle at
trip dog position with M19 upon receiving this input signal.

January 2015 6.19 Spindles 1573


Select forReferencing to use the input signal as spindle reference pulse.

Note

If you use the forReferencing function, you have to set the parameter
MP_refType = None in the CfgReferencing configuration object.

Reference run process:


 With M3 or M4:
The spindle accelerates to the programmed speed and picks up the
reference point during this process.
 With M19:
If the spindle was not referenced before, it rotates at 10 rpm in positive
direction until the reference pulse has been recognized. Then the spindle
stops and orients.

Referencing with Set the value spindleRef in MP_externRefPulse if you want to use an
external reference external reference signal instead of the reference signal of the connected
signal motor encoder or position encoder (e.g. when gear ranges are used). Only
one axis in the entire system can be homed with an external reference signal.
Machine parameters:

MP_fastInputType
Treatment of the fast input for the spindle
Available from NCK software version: 597110-01.
Format: Selection menu
Options: none
Spindle does not have any trip dog for reference end position
(no signal) or the signal is not evaluated.
forStopping
For M19 without rotary encoder, the spindle is stopped at the
trip dog upon receiving this input signal.
forReferencing
The input signal is used as spindle reference signal. The TNC
640 handles the signal of the trip dog for reference end position
as reference pulse of the encoder.
Default: none
Access: LEVEL3
Reaction: RUN

MP_fastInput
Number of the fast PLC input for the spindle reference run
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 32767
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

1574 HEIDENHAIN Technical Manual TNC 640


MP_zeroPosEdge defines the trip dog edge, which defines the spindle stop
position in positive direction of rotation.

MP_zeroPosEdge
Evaluation of the edge
Available from NCK software version: 597110-01.
Format: Selection menu
Options: zeroOne
Zero-one transition is evaluated.
oneZero
One-zero transition is evaluated.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN
MP_stopOnSwitchSpeed defines the speed for positioning at the trip dog. If
you defined the value forStopping in the MP_fastInputType parameter, you
have to enter the positioning speed here.

MP_stopOnSwitchSpeed
Shaft speed for positioning to the trip dog
Available from NCK software version: 597110-03.
Format: Number
Input: RPM [1/min] with up to 9 decimal places
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_externRefPulse
Referencing with external reference signal
Available from NCK software version: 597110-04.
Format: Selection menu
Options: off
The reference signal of the connected motor encoder or the
position encoder is used.
spindleRef
In systems with HSCI, the reference signal at the –SP.REF+ and
–SP.REF– inputs at X9 of the external PL is evaluated; in
systems with MC 320 or MC 42x the reference signal at input
X30 is evaluated.
Default: off, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.19 Spindles 1575


6.19.3 Spindle in speed feedback control

Speed encoder of
the spindle
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motEncCheckOff – Bit 0, 1 401303
CfgEncoderMonitor
checkRefDistance 400704

The parameter object


 CfgServoMotoris not required for:
• Virtual axes (MP_axisMode = Virtual)
• Axes that are for display only (MP_axisMode = Display)
• Analog axes (MP_axisHw = Analog)
 CfgEncoderMonitor is not required for:
• Virtual axes (MP_axisMode = Virtual)

Digital speed control requires a speed encoder.


The TNC 640 monitors the reference mark of the speed encoder. The monitor
checks whether the line count for one revolution from reference mark to
reference mark is equal to the line-count entry in the motor table.
If differences occur, the DSP error message C3A0 Incorrect reference
position S appears. In this case check the speed encoder, the speed encoder
cable and whether you have specified the correct motor.
With a gear wheel encoder, even if it is properly installed, monitoring can
result in this error message due to its inherent inaccuracy:
 In this case, switch the monitoring off with
MP_motEncCheckOff – Bit 0 = 1
The TNC 640 monitors the direction of rotation. If the nominal value of current
exceeds the limit value for a certain time, the DSP error message C380 motor
<spindle n, axis> not controllable appears.
At lower speeds, high-frequency spindles only have a low amount of torque.
If such a spindle is in speed control the tool changer may slightly twist the
spindle, which causes the current limit value to be exceeded. This leads to the
above error message:
 In this case, switch the monitoring off with
MP_motEncCheckOff – Bit 1 = 1

1576 HEIDENHAIN Technical Manual TNC 640


MP_motEncCheckOff
Monitoring functions
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 0 – Monitoring the reference mark
0: Monitoring active
1: Monitoring inactive
Bit 1 – Monitoring the direction of rotation
0: Monitoring active
1: Monitoring inactive
Default: 0
Access: LEVEL3
Reaction: RUN

Attention

Monitoring of the direction of rotation (MP_motEncCheckOff – bit 1) must


not be deactivated for axes. An error (e.g. one motor phase interchanged
with another or incorrect entry in the DIR column of the motor table) might
cause uncontrolled acceleration of the motor in one direction if the
monitoring function for the rotational direction is deactivated. This also
applies to spindles. For spindles, however, an incorrect acceleration in one
direction is less dangerous than for axes.
Monitoring of the direction of rotation (MP_motEncCheckOff – Bit 1) for
synchronous motors (entry SM in the column TYPE in the motor table) cannot
be switched off.

 In MP_checkRefDistance, define the monitoring of the datum-to-datum


distance of the spindle.

MP_checkRefDistance
Monitoring the reference mark of the spindle speed encoder
(compare to iTNC 530: MP2221)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
The reference mark of the speed encoder is monitored.
off
No monitoring
Default: off
Access: LEVEL3
Reaction: RUN

January 2015 6.19 Spindles 1577


Spindle
acceleration
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
maxAccSpeedCtrl 400311
maxDecSpeedCtrl 400312
limitSpeedAcc 400313
limitSpeedDec 400314
limitAccSpeedCtrl 400315
limitAccSpeedCtrlF 400317
limitDecSpeedCtrl 400316
limitDecSpeedCtrlF 400318

The TNC 640 permits you to define adapted acceleration values for the speed-
controlled spindle with M3/M4/M5 and for the position-controlled spindle with
M19.
In MP_maxAccSpeedCtrl and MP_maxDecSpeedCtrl you define the
acceleration and braking ramp values for the spindle in speed control (M3/M4/
M5). If the two optional parameters are not part of the configuration, the value
from MP_maxAcceleration is effective.
The optional parameters MP_limitSpeedAcc, MP_limitSpeedDec,
MP_limitAccSpeedCtrl(F) and MP_limitDecSpeedCtrl(F) are available to
enable better adaptation of the acceleration behavior of large, speed-
controlled main spindles to the actual situation. This enables you to realize a
"broken" acceleration characteristic. The broken characteristic is also effective
for spindles in spindle synchronism (for master and slave).
Description of the machine parameters:

Machine parameter Effective in Description


mode
MP_maxAccSpeedCtrl: M3/M4/M5 Acceleration for the spindle with shaft speed control. Also
effective for the braking ramp if MP_maxDecSpeedCtrl
is not defined.
MP_maxDecSpeedCtrl M3/M4/M5 Braking ramp for the spindle with shaft speed control
MP_maxAcceleration M19 Acceleration of spindle in position feedback control. Also
effective for the spindle in the speed control loop if
MP_maxAccSpeedCtrl and/or MP_maxDecSpeedCtrl
are not defined.
MP_limitSpeedAcc M3/M4/M5 Limit speed for reduction of the acceleration
MP_limitSpeedDec M3/M4/M5 Limit speed for reduction of the braking deceleration
MP_limitAccSpeedCtrl M3/M4/M5 Absolute acceleration. Effective above
MP_limitSpeedAcc
MP_limitAccSpeedCtrlF M3/M4/M5 Enter a formula for acceleration. Effective above
MP_limitSpeedAcc. For the syntax for entering
formulas, see page 567.If no formula has been entered,
MP_limiAccSpeedCtrl is effective.

1578 HEIDENHAIN Technical Manual TNC 640


Machine parameter Effective in Description
mode
MP_limitDecSpeedCtrl M3/M4/M5 Absolute deceleration during braking. Effective above
MP_limitSpeedDec.
MP_limitDecSpeedCtrlF M3/M4/M5 Enter a formula for the deceleration during braking.
Effective above MP_limitSpeedDec. See page 567 for
the syntax for entering formulas. If no formula has been
entered, MP_lmitDecSpeedCtrl is effective.

The parameters MP_limitSpeedAcc, MP_limitSpeedDec,


MP_limitAccSpeedCtrl(F) and MP_limitDecSpeedCtrl(F) are effective for
speed-controlled spindles or spindles in spindle synchronism. If the
parameters do not exist or the value 0 has been entered, a "kink-free" ramp
with the values from MP_maxAcceleration or MP_maxAccSpeedCtrl and
MP_maxDecSpeedCtrl is output.

MP_maxAccSpeedCtrl
Optional acceleration for the spindle with shaft speed control
Available from NCK software version: 597110-03.
Format: Number
Input: Value in [1/min/s] or [°/s2] with up to 9 decimal places
This parameter is only effective for spindles. If 0 is entered or
there is no parameter, the acceleration from
MP_maxAcceleration is used.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.19 Spindles 1579


MP_maxDecSpeedCtrl
Optional braking ramp for the spindle with shaft speed control
Available from NCK software version: 597110-03.
Format: Number
Input: Value in [1/min/s] or [°/s2] with up to 9 decimal places
This parameter is only effective for spindles. If the value 0 is
entered or the parameter is not available, the value from
MP_maxAccSpeedCtrl will be used for the brake acceleration.
If MP_maxAccSpeedCtrl is also 0 or not present, the value
from MP_maxAcceleration will be used.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

Exemplary
configuration
Machine parameter Value
MP_maxAccSpeedCtrl: 2050 rpm
MP_maxDecSpeedCtrl 1850 rpm
MP_limitSpeedAcc 1400 rpm
MP_limitSpeedDec 1600 rpm
MP_limitAccSpeedCtrl 1650 rpm/s
MP_limitAccSpeedCtrlF 2050*6*(1400*6/V)
MP_limitDecSpeedCtrl 1750 rpm/s
MP_limitDecSpeedCtrlF 1850*6*(1600*6/V)

1580 HEIDENHAIN Technical Manual TNC 640


MP_limitSpeedAcc
Limit speed for reduction of the acceleration
Available from NCK software version: 597110-05.
Format: Number
Input: Value in [1/min] or [°/min] with up to 9 decimal places
Acceleration of the spindle with "broken" acceleration curve:
The parameter sets the absolute limit speed above which the
acceleration is reduced.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_limitSpeedDec
Limit speed for reduction of the braking deceleration
Available from NCK software version: 597110-05.
Format: Number
Input: Value in [1/min] or [°/min] with up to 9 decimal places
Braking of the spindle with "broken" deceleration curve:
The parameter sets the absolute limit speed above which the
braking deceleration is reduced.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_limitAccSpeedCtrl
Absolute acceleration. Effective above MP_limitSpeedAcc
Available from NCK software version: 597110-05.
Format: Number
Input: Value in [1/min/s] or [°/s2] with up to 9 decimal places
Acceleration of the spindle with "broken" acceleration curve:
Specifies the absolute acceleration of the spindle, which
becomes effective above the speed defined with
MP_limitSpeedAcc.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_limitAccSpeedCtrlF
Enter a formula for acceleration. Effective above
MP_limitSpeedAcc.
Available from NCK software version: 597110-09.
Format: String
Input: Formula (max. 300 characters), (1)
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN
(1) See page 567 for the syntax for entering formulas in
MP_limitAccSpeedCtrlF.

January 2015 6.19 Spindles 1581


MP_limitDecSpeedCtrl
Absolute deceleration during braking. Effective above
MP_limitSpeedDec
Available from NCK software version: 597110-05.
Format: Number
Input: Value in [1/min/s] or [°/s2] with up to 9 decimal places
Braking of the spindle with "broken" deceleration curve:
Specifies the absolute deceleration during braking, which
becomes effective above the speed defined with
MP_limitSpeedDec.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_limitDecSpeedCtrlF
Enter a formula for the deceleration during braking. Effective
above MP_limitSpeedDec.
Available from NCK software version: 597110-09.
Format: String
Input: Formula (max. 300 characters), (1)
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN
(1) See page 567 for the syntax for entering formulas in
MP_limitDecSpeedCtrlF.

1582 HEIDENHAIN Technical Manual TNC 640


6.19.4 Filtering the acceleration values

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPositionFilter
manualFilterOrder 401605

The parameter object CfgPositionFilter is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)

The MP_manualFilterOrder parameter differentiates between axes and


spindles. Linear acceleration is used for the operation of spindles.
MP_manualFilterOrder allows you to filter the acceleration values.
MP_manualFilterOrder for axes: See "Filter before position control loop" on
page 1396
 Define the order of the mean-value filter for spindles in
MP_manualFilterOrder.

MP_manualFilterOrder
Order of the mean-value filter in Manual Operation
Available from NCK software version: 597 110-01.
Format: Number
Input: 1 to 51
Default: 11
Access: LEVEL3
Reaction: RUN

January 2015 6.19 Spindles 1583


6.19.5 Controlling the spindle

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerTol
speedTolerance 401103
timeSpeedOK 401104

Also, the parameter object is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)

The following figure shows the procedure for switching the spindle drive on/
Switching on/off off.
spindle drive

The NC or PLC store the information on controlling the spindle in the following
PLC operands.

PLC operand / Description Type

NN_SpiDriveReady M
Spindle drive is ready
0: Drive not ready for operation
1: Drive ready for operation
PP_SpiDriveOnRequest M
Switch spindle drive on. This operand is used to switch
closed-loop control of the spindle on or off. It can be
switched on only in the ready condition
(NN_SpiDriveReady = 1).
0: Do not activate the drive
1: Activate the drive
NN_SpiDriveOn M
Spindle drive is switched on (and is at least speed-
controlled)
0: Drive is off
1: Drive is on

1584 HEIDENHAIN Technical Manual TNC 640


PLC operand / Description Type

PP_SpiSpeedMax D
Maximum spindle speed
PP_SpiEnable M
Spindle enabling
0: Spindle not enabled
1: Spindle enabled
NN_SpiInMotion M
Spindle in motion
0: Spindle not in motion
1: Spindle in motion
The operand is set if the nominal velocity of a spindle is
not equal to 0, e.g. when
- The spindle is controlled by the NC (tapping)
- It is controlled by the PLC (9000 modules for M3/M4)
The operand is not set (not even if the above conditions
are fulfilled):
- With spindle override = 0
- PLC has withdrawn the spindle enabling
(PP_SpiEnable = 0)

Note

The PLC program offers the following ways to detect a real movement of
the spindle:
 Find the actual speed of the spindle through Module 9411 (<desired
spindle information> : 10)
 Connect "NN_SpiInMotion = 0" and "NN_SpiSpeedOK = 1". This attains
the information that the spindle speed is less than 5 rpm.

Spindle control by The PLC controls the spindle by using the following modules:
PLC
 Module 9412: Stop the spindle, see page 1587
 Module 9413: Rotate the spindle, see page 1588
 Module 9414: Position the spindle (M19), see page 1598
 Module 9416: Select gear range and associated settings for spindle, see
page 2403.
 Module 9417: Set shaft speed for spindle
 Module 9418: Set status for spindle, see page 1107
The status is queried by
 Module 9410: Read spindle status

Note

PP_SpiEnable = 1 must be set for a spindle movement to be executed.

January 2015 6.19 Spindles 1585


In order to remain compatible with old PLC programs that use the numerical
programming interface API 1.0, PLC Module 9171 is available as an alternative
(See "Module 9171 Start of a spindle orientation with adjustable parameters"
on page 1590).
Module 9410 Read spindle status
The module reads the status of the specified spindle.
This module is only supported by the new symbolic memory interface. If the
iTNC-compatible programming interface is used (API 1.0), the module returns
an error.
Call:
PS B/W/D/K <Spindle index>
CM 9410
PL D <Spindle status>
1: No job active – Last job was OK
2: No job active – Last job was faulty
3: Job is being executed
PL D <Spindle mode>
1: Spindle at standstill
2: Spindle turning clockwise
3: Spindle turning counterclockwise
4: Spindle is position-looped (M19)
5: Spindle is in external use (reference run, tapping)
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status ascertained
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid spindle number
ErrorCode 99 Module is not supported (control does not
operate with symbolic memory interface)

1586 HEIDENHAIN Technical Manual TNC 640


Module 9412 Stop the spindle
Use Module 9412 to stop the specified spindle (M5 status).
This module is only supported by the new symbolic memory interface. If the
iTNC-compatible interface (API 1.0) is used, the module returns an error.
Call:
PS B/W/D/K <Spindle index>
CM 9412
PL D <Error code>
0: Module successfully executed
1: Incorrect module call
2: No permission for module call (example: NC is cutting a
thread at the time it is instructed to execute a command)
Error code:

Marker Value Meaning


NN_GenApiModule 0 Spindle is stopped
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid spindle number
ErrorCode 9 Module call not possible at this time
99 Module is not supported (control does not
operate with symbolic memory interface)

January 2015 6.19 Spindles 1587


Module 9413 Move the spindle
The module rotates the specified spindle in CW/CCW direction (M3/M4) at a
constant rotational speed or at a constant cutting speed.
Constraints:
 This module is only supported by the new symbolic memory interface. If the
iTNC-compatible interface (API 1.0) is used, the module returns an error.
 With an analog spindle the voltage to be output for a reciprocation
movement is read from the configuration data, and the shaft speed given is
ignored. With a digitally controlled spindle, the given shaft speed is
interpreted as the motor shaft speed for the reciprocation movement.
 If a constant surface speed is preset, but no NC channel was assigned to
the spindle and thus the cutting speed cannot be calculated, the module
returns error 4.
Call:
PS B/W/D/K <Spindle index>
PS B/W/D/K <Mode>
Bit 0 and bit 1: Direction of rotation
01 = CW rotation (M3)
10 = CCW rotation (M4)
Bits 2, 3 and 4: Type of rotation
001 = Constant surface speed
010 = Constant shaft speed
100 = Constant motor shaft speed for reciprocation
movement
Bit 5 (only in connection with constant shaft speed)
0 = Take limitation for minimum speed from CfgFeedLimits/
minFeed into account
1 = Ignore limitation for minimum speed from
CfgFeedLimits/minFeed
PS B/W/D/K <Shaft speed or cutting speed>
Constant cutting speed in [m/min]
Constant rotational speed in [rpm]
CM 9413
PL B/W/D <Error number>
0: Module successfully executed
1: Incorrect module call
2: No permission for module call
3: Rotational speed not allowed
4: Mode not allowed
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status determined, spindle is turning
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid task data transferred (see error
ErrorCode number in returned value)
9 Module call not possible at this time
99 Module is not supported (control does not
operate with symbolic memory interface)

1588 HEIDENHAIN Technical Manual TNC 640


Module 9417 Set default shaft speed for spindle
You use Module 9417 to enter a default shaft speed for the spindle for the
display. It can also set a shaft speed for the monitoring when switching
between wye to delta operation.
Constraints:
 The default shaft speed for the display is not offset by the spindle override,
i.e. any value set with the override potentiometer must be included via the
PLC program.
 The maximum actual shaft speed is shown, as well as the shaft speed
entered via the module.
 The shaft speed for calculations in the NC program may only be set if no NC
program is being executed or if a strobe with synchronization of the advance
calculation is pending. The value SYNC_CALC must be set for MP_sync
when configuring the strobe.
 The shaft speed must not be negative.
 Modes 2 to 4 of this module are only supported by the new symbolic
memory interface. If you are using the iTNC-compatible memory interface
(API 1.0), the module returns an error. Use Module 9173 if you are using the
iTNC-compatible memory interface.
Call:
PS B/W/D/K <Spindle index>
PS B/W/D/K <Mode>
1: Shaft speed for display
2: Shaft speed for NC program
3: Switchover speed from wye to delta operation
4: Switchover speed from delta to wye operation
PS B/W/D/K <Speed in 1/1000 rpm>
CM 9417
PL B/W/D <Error number>
0: Module successfully executed
1: Invalid spindle number given
2: Invalid mode given
3: Negative shaft speed given
4: Shaft speed for NC program was changed during program
run
Error code:

Marker Value Meaning


M4203 or 0 No error; shaft speed set
NN_GenApiModuleError 1 Error code in W1022 or
NN_GenApiModuleErrorCode(a) or
See error code above
W1022 or 2 Invalid task data transferred (see error
NN_GenApiModuleError number in returned value)
Code 21 Shaft speed for NC program was
changed during program run
99 Function is not supported (control
does not operate with symbolic
memory interface)

January 2015 6.19 Spindles 1589


Module 9171 Start of a spindle orientation with adjustable parameters
Module 9171 can be used to start an orientation of the spindle. The orientation
speed, orientation angle and the direction of rotation can be set. The module
sets M4130, which displays that the positioning is running and for how long.

Note

This PLC module was introduced in order to remain compatible with older
PLC programs (with API version 1.0) of older HEIDENHAIN contouring
controls. This module is not supported if the symbolic programming
interface is used. Use Module 9414 instead.

Constraints:
 If no speed output has occurred for the spindle, the call will have no effect.
 If the marker M4130 is set in the same PLC scan and Module 9171 is called,
the spindle is oriented with the parameters from the module call.
 If the module is called several times in the same scan, the spindle will be
oriented with the parameters of the last call.
 If the module is called although an orientation from an earlier PLC scan is not
yet finished, the call will have no effect.
 The module functions only in the cyclic PLC program.
 If the module is called while the spindle is turning, the direction of
orientation that was transferred will be ignored. The spindle is always
oriented in the direction of spindle rotation.
 If the values +2 to +4 are transferred as direction of rotation, the spindle can
be oriented to the angle last defined in CYCL DEF 13. The transferred angle
of orientation is added to the value from CYCL DEF 13. Therefore the PLC
can transfer an additional spindle preset.
 If 0 is transferred as the speed, the speed from MP3520.1 is used.
 The module is only supported for PLC programs that use API version 1.0.
Call:
PS B/W/D/K <Orientation angle [1/10000 degrees]>
or additional preset if there is a value from CYCLE DEF 13
PS B/W/D/K <Speed [1/1000 rpm]>
PS B/W/D/K <Direction of rotation>
–1: Negative direction (M04)
0: Direction of the shorter path
1: Positive direction (M03)
2: Same as –1, but angle from CYCLE DEF 13
3: Same as 0, but angle from CYCLE DEF 13
4: Same as +1, but angle from CYCLE DEF 13
CM 9171

1590 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModuleError 0 No error (spindle is being oriented,
M2712/M4130 = 1)
1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModuleError 1 The value for direction of rotation or
Code rotational angle is invalid
2 The spindle number or speed is
incorrect, or there has been no speed
output
19 Spindle is not a closed-loop spindle
24 Module was called in a submit/spawn
job
27 A spindle orientation is already
running

January 2015 6.19 Spindles 1591


Tolerances for The TNC 640 reports "Rotational speed reached" (NN_SpiSpeedOK = 1), if
"rotational speed
 the actual speed has reached the tolerance band specified under
reached" MP_speedTolerance for the time from MP_timeSpeedOK,
 the nominal speed does not lie below the minimum speed of the current
parameter set as specified in MP_minFeed,
 the spindle is no longer in the acceleration/braking ramp.
The programmed speed serves for comparison.
Special characteristics:
 If the programmed speed is not equal to 0 and MP_speedTolerance =
100 %, the TNC 640 sets NN_SpiSpeedOK = 1.
 If the spindle movement is to be stopped (programmed speed = 0), the TNC
640 monitors the spindle for a speed n < 5 rpm.
 In MP_speedTolerance, define the size of the control window.
 In MP_timeSpeedOK, define the period of time which the rotational speed
(feed rate) is to remain within the control window.
 In MP_minFeed of the respective spindle parameter set, define the
minimum permissible speed for the spindle.
Note: The evaluation would also be made for linear axes and rotary axes [Key
name of the parameter set]. The default value (=0) should not be changed
here so as not to limit the minimum axis feed rate.

Spindle speed n

Vnom Vact
0
time t

1
NN_SpiInMotion
0

1
NN_SpiSpeedOK
0

1592 HEIDENHAIN Technical Manual TNC 640


MP_speedTolerance
Rotational speed (feed rate) window
Available from NCK software version: 597110-01.
Format: Number
Input: 0.000 000 01 to 100 [%] with max. 9 decimal places
Default: 10 [%]
Access: LEVEL3
Reaction: RUN

MP_timeSpeedOK
Hysteresis time for monitoring the speed deviation
Available from NCK software version: 597110-01.
Format: Number
Input: 0.006 to 10 [s] with max. 9 decimal places
Default: 0.01 [s]
Access: LEVEL3
Reaction: RUN

MP_minFeed
Applies only to spindles: minimum spindle speed
(compare to iTNC 530: MP3240.1)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 36 000 000 [°/min] with max. 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN
The NC provides the information "rotational speed reached" in
NN_SpiSpeedOK.

PLC operand / Description Type

NN_SpiSpeedOK M
Spindle speed reached
0: Spindle speed not reached
1: Spindle speed reached

January 2015 6.19 Spindles 1593


Monitoring the
spindle speed
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the spindle parameter set]
CfgSpindle
relSpeedTolerance 401513
absSpeedTolerance 401514
[Key name of the parameter set]
CfgSpeedControl
vCtrlSpinSpeedTol 400930
vCtrlSpinMinSpeed 400931
delayEmStopSpin 400933

With MP_relSpeedTolerance and MP_absSpeedTolerance you set the


maximum permitted excessive spindle speed. An NC stop with a subsequent
emergency stop is triggered if the actual spindle speed is greater than the
nominal spindle speed + the permitted excess speed. With this function you
can also have the spindle be monitored for unexpected start-up.
In MP_relSpeedTolerance, you enter a relative value in percent, and in
MP_absSpeedTolerance an absolute value for the permissible excessive
speed. The absolute value in MP_absSpeedTolerance is only used if the
absolute value that results from MP_relSpeedTolerance is less than the value
in MP_absSpeedTolerance.
If you want to use monitoring of the spindle speed for spindles with gear
stages, then you should be more generous with the tolerance that results
from MP_relSpeedTolerance and MP_absSpeedTolerance, since the
spindle speed can vary significantly when switching between the gear stages.

1594 HEIDENHAIN Technical Manual TNC 640


A percentage value for the permissible shortfall of the nominal spindle speed
can be entered in MP_vCtrlSpinSpeedTol. You can thus use this machine
parameter for monitoring whether the spindle speeds falls below a specific
spindle speed limit.
Example:
Nominal speed = 500 rpm, MP_vCtrlSpinSpeedTol = 20 %
If the speed falls below 400 rpm, monitoring is activated.
Monitoring is useful for power milling where the workpiece is to be machined
at a high feed rate and a low constant spindle speed. If the monitoring function
responds, an EMERGENCY STOP reaction is triggered in order to protect the
machine from possible damage, for example if the spindle comes to a
standstill while still engaged in the material. The error message 8BF0 Actual
speed value too small is displayed.
Monitoring for falling below the lower spindle speed limit (defined in
MP_vCtrlSpinSpeedTol) does not become active until the actual spindle
speed exceeds the value defined in MP_vCtrlSpinMinSpeed. This threshold
is required in order to avoid activating the monitoring function before a
reasonable shaft speed is reached A reasonable shaft speed has been reached
if the noise of encoders at the actual value of the spindle speed is of
subordinate importance. MP_vCtrlSpinMinSpeed also prevents monitoring
from becoming active when the tool plunges into the material.
In an EMERGENCY STOP, braking of the spindle is delayed compared to
braking of the axes by the time in MP_delayEmStopSpin. This avoids tool
breakage during power milling, because low spindle speeds might result in the
spindle coming to a standstill before the axes do. However, the spindle
braking is delayed by no more than half a spindle revolution.

MP_relSpeedTolerance
Maximum relative overshoot of the spindle speed
(compare to iTNC 530: MP3350)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 100 [%] relative from nominal value of the spindle speed
with max. 9 decimal places
Default: 10 [%], optional parameter
Access: LEVEL3
Reaction: RUN

MP_absSpeedTolerance
Maximum absolute overshoot of the spindle speed
(compare to iTNC 530: MP3351)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 100 000 [1/min] with max. 9 decimal places
Default: 0 [1/min], optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 6.19 Spindles 1595


MP_vCtrlSpinSpeedTol
Permissible spindle speed shortfall
(compare to iTNC 530: MP3540)
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 100 [%] with up to 9 decimal places
0: Monitoring not active
Permissible lower limit of the actual spindle speed multiplied by
a percentage of the nominal speed. If the current spindle speed
falls below the defined value, the TNC 640 outputs an error
message.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_vCtrlSpinMinSpeed
Minimum spindle speed as of which the monitoring in
MP_vCrtrlSpinSpeedTol becomes active
(compare to iTNC 530: MP3542)
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 166 666.5 [1/min] with max. 9 decimal places
0: Monitoring not active
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_delayEmStopSpin
Delay of emergency-stop reaction of spindles
(compare to iTNC 530: MP3550)
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 0.1 [s] with up to 9 decimal places
0: Delay not active
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

1596 HEIDENHAIN Technical Manual TNC 640


Increased spindle
power for roughing
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the spindle parameter set]
CfgSpindle
incrPowForRoughing 401516

With MP_incrPowForRoughing,you can avoid a reduction in the maximum


spindle power during roughing due to changes in load when the tool’s teeth
are engaged in the material.
If this parameter is set, the TNC 640 will increase the spindle speed beyond
the nominal speed value while no load is applied. The energy accumulated due
to the inertia of the spindle is then available when the teeth engage the
material. The mean spindle power increases, and the mean speed
corresponds to the nominal speed.
If MP_incrPowForRoughing is set, an overshoot can occur when the nominal
speed is reached. If the overshoot proves to have a negative effect, deactivate
MP_incrPowForRoughing.

MP_incrPowForRoughing
Increased spindle power for roughing
Available from NCK software version: 597110-09.
Format: Selection menu
Options: TRUE
Increased spindle power for roughing active
FALSE
Function not active.
Default: No value, optional parameter (= FALSE)
Access: LEVEL3
Reaction: RUN

January 2015 6.19 Spindles 1597


Positioning the The PLC command defined in
spindle (M19/trip
 Module 9414 instructs the NC to activate spindle positioning.
dog position)
 Module 9412 instructs the NC to deactivate spindle positioning.
Use Module 9414 to switch on position feedback control. Position feedback
control is effective until it is switched off by Module 9412.

Module 9414 Position the spindle


The module is used for the following functions:
 Position the spindle (M19): The spindle is stopped at the specified position.
The mode defines the direction of rotation.
 Stop the spindle at the trip dog position (mode bit 3 = 1): The spindle is
positioned to the trip dog at the specified rotational speed (See "Stopping/
Referencing the spindle at trip dog position" on page 1573).
This module is only supported by the new symbolic memory interface. If the
iTNC-compatible interface (API 1.0) is used, the module returns an error.
Call:
PS B/W/D/K <Spindle index>
PS B/W/D/K <Mode>
Bits 0 to 2: Direction of rotation
000 = Shortest direction of rotation, absolute position
entry
001 = Rotation CW, absolute position entry
010 = Rotation CCW, absolute position entry
100 = Relative position entry, rotational direction from
algebraic sign of position entry
Bit 3: Select the function
0 = "Position the spindle (M19)" function
1 = "Stop spindle at trip dog position" function
PS D/K <Absolute or relative position in [0.0001°]>
PS D/K <Rotational speed in [0.0001 rpm]>
CM 9414
PL D <Error code>
0: Module successfully executed
1: Incorrect module call
2: No permission for module call
3: Rotational speed not allowed
4: Mode not allowed
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status ascertained
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid spindle number
ErrorCode 9 Module call not possible at this time
99 Module is not supported (control does not
operate with symbolic memory interface)

1598 HEIDENHAIN Technical Manual TNC 640


The NC specifies the status of spindle positioning in the following PLC
operands.

PLC operand / Description Type

NN_SpiControl M
Spindle in position control loop
0: Spindle is not in position control loop
1: Spindle is in position control loop
NN_SpiControlInPos M
Spindle in position
0: Spindle is not in position
1: Spindle is in position

Tapping The NC puts the spindle in the position control loop during tapping and thread
cutting (Cycle 18 for TNC controls). Please be aware that the spindle is
position-looped (NN_SpiControl = 1) even for tapping with a floating tap holder
(Cycle 2). The job is not transmitted by the PLC.
The NC shows in the following PLC operands that a tapping operation is
currently being executed (both markers are set simultaneously).

PLC operand / Description Type

NN_SpiTapping M
Tapping active
0: Tapping not active
1: Tapping active
NN_SpiRigidTapping M
Tapping with spindle interpolated with Z axis active
0: Tapping not active
1: Tapping active

January 2015 6.19 Spindles 1599


6.19.6 Switching the operating modes
As soon as the operating mode is switched with Module 9163, the NC
switches the drive controller of the spindle off and activates the parameter set
from the motor table and the machine parameters. You can check this with
Module 9162. After the operating mode has been switched, you must
reactivate the drive controller of the spindle with Module 9161.
For a spindle motor, two parameter sets with the same name can be saved in
the motor table. This may be necessary if
 Another parameter set applies to a spindle motor at the higher speed range.
 A wye/delta connection switchover is carried out for a motor.
With Module 9163 you can switch between the drive parameters for wye and
delta connections of the spindle. The switchover can be carried out during
standstill or with a revolving spindle.

Danger

The contactor for the wye/delta switchover must not be switched under
load!

To use the operating-mode switchover:


 Enter the two parameter blocks of your spindle motor with the same name
in the motor table. Identify parameter block 1 by entering 0 in the MODE
column, and parameter block 2 by entering 1.
 Switch between the two operating modes with Module 9163.
 With Module 9161, reactivate the drive controller.
For the two operating modes, you can use different machine parameters for
the spindle (e. g. current and speed controller):

Settings in the configuration editor MP number


System
PLC
CfgPlcSStrobe
[Key name of S strobe]
gearSpeed0 104008
gearSpeed1 104009

 Enter the key names of spindle parameter sets either in the


MP_gearSpeed0 parameter (wye connection) or MP_gearSpeed1 (delta
connection). The specified parameter sets define the gear ranges for
operating modes 0 or 1 if selected with PLC Module 9163. Then create the
parameter sets with the desired parameters in the configuration editor.

Note

Use the KeySynonym function to create a new parameter set, See "The
KeySynonym function" on page 627

1600 HEIDENHAIN Technical Manual TNC 640


The configuration object CfgFeedLimits of the respective parameter set
defines the minimum and maximum spindle shaft speed for each gear range.
The list must be sorted in ascending order, with the smallest shaft speed at
the top. Gear ranges are not supported if the list is missing or empty.
Module 9163 reports an error if it is called from a PLC program using the
numerical TNC API version 1.0.

MP_gearSpeed0
Key names of parameter sets for gear ranges (operating mode
0)
Available from NCK software version: 597 110-02.
Format: Array [0 to 99]
Input: List with key names for spindle parameter sets for operating
mode 0.
Default: –
Access: LEVEL3
Reaction: RESET

MP_gearSpeed1
Key names of parameter sets for gear ranges (operating mode
1)
Available from NCK software version: 597 110-02.
Format: Array
Input: List with key names for spindle parameter sets for operating
mode 1.
Default: –
Access: LEVEL3
Reaction: RESET

Module 9163 Switch the drive parameters for delta and wye connection
The module cancels the pulse release of the designated axis, and activates the
given parameter set for the drive. When 0 is transferred the parameter set for
wye connection is activated, and when 1 is transferred the set for delta
connection is activated. Define in MP_gearSpeed0 the parameters for wye
connection, and in MP_gearSpeed1 the parameters for delta connection.
Constraints:
 The axis must be configured as a spindle. It may neither be assigned to an
NC channel, nor may it be controlled by one.
 The position control loop for the axis must not be a closed position loop, not
even if the motor is switched off.
 A parameter set must be configured for the combination of selected
operating mode and active gear range.
 Do not call the module again with the already active operating mode.
 Do not call the module again during a switchover.

January 2015 6.19 Spindles 1601


Call:
PS B/W/D/K <Axis>
PS B/W/D/K <Type of connection>
0: Wye connection
1: Delta connection
CM 9163
Error code:

Marker Value Meaning


NN_GenApiModule 0 Parameters were switched
Error 1 Faulty call parameters, see error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 1 An axis that is not configured or not
ErrorCode configured as a spindle was transferred.
2 Incorrect type of connection transferred
3 No parameter set was defined for the
combination of switching type and gear
range
9 The entered switching type is already
active
21 The transferred axis is currently being
controlled by an NC channel
27 The position control loop of the transferred
axis is currently closed
28 A switchover is already active

1602 HEIDENHAIN Technical Manual TNC 640


6.19.7 Analog axis/spindle with unipolar motor

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisAnalog
unipolar 400113

Note

This function is only available if the spindle is controlled via an analog


nominal-value output!

With a "unipolar" spindle the same polarity of nominal value voltage is output
for both directions of rotation (M3 and M4). (E.g. for speed with 9 V and 1000
1/min a voltage of +4.5 V is output for S500 both with M3 and M4). The motor
is then switched over by means of a contactor controlled by a PLC output.
Active unipolar drives are determined with PLC Module 9038 (reading of axis
status information), No. 10, see page 1093.
You configure a unipolar spindle as follows:
 Open the parameter set of the spindle concerned and move the cursor to
the CfgAxisAnalog config object.
 Add the optional parameter MP_unipolar (400113) to the configuration.
 Configure the parameter as required (see parameter description below;
usually always positive or always negative)
Servo control of unipolar motors:
As of software 597110-06 you can also operate unipolar motors in servo
control (e.g. on very old machines) with clip positive or clip negative. Please
note that this type of servo control is not very precise and can lead to a very
large servo lag.
A positive (negative) output voltage must not be converted to a negative
(positive) voltage in this case. This is ensured here, too.

PLC operand / Description Type

NN_axMotionNegativeDir M
Axis/spindle with unipolar motor
1: Nominal value output for axis/spindle for negative
traverse direction
0: Nominal value output for axis/spindle for positive
traverse direction

January 2015 6.19 Spindles 1603


Tapping with Observe the following constraints when tapping with a unipolar spindle:
unipolar spindle
 Tapping is only possible with a floating tap holder.
 The machine parameter "CfgAxisAnalog/unipolar" must be set to the value
"clip positive" or "clip negative".
 The requested direction of rotation can be determined from the algebraic
sign of status information #11 "Nominal speed" in PLC Module 9411 "Read
actual spindle values (speed, coordinates)".

MP_unipolar
Algebraic sign with analog unipolar drives
Available from NCK software version: 597110-03.
Format: Selection menu
Options: off
Not a unipolar drive.
always positive
A positive voltage is output for each direction of rotation (M3,
M4).
always negative
A negative voltage is output for each direction of rotation (M3,
M4).
clip positive
If the nominal voltage < 0, the output is 0. If it is > 0, the nominal
voltage is output.
clip negative
If the nominal voltage > 0, the output is 0. If it is < 0, the nominal
voltage is output.
Default: off, optional parameter
Access: LEVEL3
Reaction: RUN

1604 HEIDENHAIN Technical Manual TNC 640


6.19.8 Spindle Synchronism (option #131)

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgSpindle
kvFactorSync 401512
CfgControllerTol
syncTolerance 401105
timeSyncOK 401106

The parameter object CfgControllerTol is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)

Note

Spindle synchronism (option #131) is required for special machining


procedures
(e.g. polygon turning). You can activate spindle synchronism via Module
9415. For this purpose, it is absolutely necessary to enable the option.
Spindle synchronism is also used by some of the HEIDENHAIN cycles. In
this case, it is not necessary to enable option #131 because these cycles
internally activate the spindle synchronism while machining.

Note

If spindle synchronism is active for a spindle that is not referenced, the error
message "Spindle has not yet been homed" appears.

January 2015 6.19 Spindles 1605


Separate kv factor With MP_kvFactorSync, you can preset a separate kv factor for spindle
for spindle synchronism that applies instead of the value from CfgPosControl/kvFactor.
synchronism If you enter nothing or the value 0 in MP_kvFactorSync, the control
automatically uses the value from CfgPosControl/kvFactor for the spindle
synchronism, as well.

MP_kvFactorSync
kv factor for spindle synchronism
Available from NCK software version: 597110-09.
Format: Number
Input: 0 to 999 999 999 [1/s] with up to 9 decimal places
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

Tolerances for The control reports that the synchronism of two spindles is reached if the
synchronism spindle remains within the MP_syncTolerance control window for the period
of time defined in MP_timeSyncOK.
 In MP_syncTolerance, define the size of the control window.
 In MP_timeSyncOK, define the period of time which the spindle is to
remain within the control window.

MP_syncTolerance
Angle tolerance for spindle synchronism
Available from NCK software version: 597110-09.
Format: Number
Input: 0.0000000001 to 100 [°] with max. 9 decimal places
Default: 0.01 [°], optional parameter
Access: LEVEL3
Reaction: RUN

MP_timeSyncOK
Hysteresis time for spindle synchronism
Available from NCK software version: 597110-09.
Format: Number
Input: 0.006 to 10 [s] with max. 9 decimal places
Default: 0.01 [s], optional parameter
Access: LEVEL3
Reaction: RUN

1606 HEIDENHAIN Technical Manual TNC 640


Spindle The NC stores the spindle synchronism in the following operands.
synchronism
PLC operand / Description Type

NN_SpiSyncSpeed M
Rotational speed synchronism active
0: Rotational speed synchronism not active
1: Rotational speed synchronism active
NN_SpiSyncAngle M
Angle synchronism active
0: Angle synchronism not active
1: Angle synchronism active
NN_SpiSyncReached M
Synchronism achieved
0: Synchronism not achieved
1: Synchronism achieved (or no synchronism active)

Module 9415 Synchronize spindles


The SLAVE spindle entered is operated in synchronous speed operation with
the MASTER spindle. The speed ratio of the MASTER to the SLAVE spindle is
specified with two speed factors. A negative value of these factors results in
the SLAVE spindle turning in the opposite direction.
This module can be called multiple times if several SLAVE spindles are to be
synchronized with a MASTER spindle.
This module is only supported by the symbolic memory interface. If the iTNC-
compatible interface is used, the module returns an error.
Rotational speed: The rotational speed of the master spindle is programmed.
The speed factors then determine the speed of the slave spindle.
Remember that:
Master speed * FM = Slave speed * FS
 FM: Speed factor of master
 FS: Speed factor of slave
The angle offset is set as default.

January 2015 6.19 Spindles 1607


Call:
PS B/W/D/K <Spindle index of MASTER>
PS B/W/D/K <Spindle-index of SLAVE>
PS B/W/D/K <Mode>
0: Switch off all synchronism functions (the spindle
numbers have no meaning)
1: Switch synchronization off
2: Switch synchronization on
PS D/K <Speed factor of MASTER>
PS D/K <Speed factor of SLAVE>
PS D/K <Angle offset in [0.0001°]>
CM 9415
PL D <Error number>
0: Module successfully executed
1: Incorrect module call
2: No permission for module call
3: Invalid mode
4: Invalid speed factor
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status ascertained
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid task data transferred (see error number
ErrorCode in returned value)
9 Module call not possible at this time
99 Module is not supported (control does not
operate with symbolic memory interface)

1608 HEIDENHAIN Technical Manual TNC 640


6.19.9 Spindle of the kinematic model

Settings in the configuration editor MP number


Channels
Kinematics
CfgKinComposModel
[Key name of kinematics model]
subKinList
activeSpindle 202902

In MP_activeSpindle you specify the spindle used in the kinematic model.


This assignment is required for different calculations (for example: calculate
feed per revolution, determine tool life, etc.)

MP_activeSpindle
Key of the active spindle of this kinematic model
Available from NCK software version: 597 110-01.
Format: String
Input: The key name of the spindle is read from CfgAxes/
spindleIndices, e.g. "S", "Spindle1", etc.
Default: –
Access: LEVEL3
Reaction: RUN
For more information on the configuration of the machine kinematics of your
TNC 640, See "Machine kinematics" on page 1186.

January 2015 6.19 Spindles 1609


6.19.10 Gear shifting
The PLC is responsible for gear shifting. The PLC also manages the
parameters that are required for gear shifting. Please refer to "Gear shifting" on
page 2401 in the PLC section of this documentation.
A separate parameter set can be created for every gear range.
The PLC analyzes the rotational speed and switches to the gear range defined
for this rotational speed.

6.19.11 Tapping

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgThreadSpindle
sourceOverride 113603
limitSpindleSpeed 113604

Tapping is always executed with position feedback control. The spindle and
tool axis interpolate with each other, a floating tap holder is not required.
The tool axis is moved to set-up clearance and an oriented spindle stop is
executed before tapping, i.e. every axis position is assigned a certain spindle
angle. This synchronization makes it possible to cut the same thread more
than once. The NC orients the spindle (NN_SpiControl = 1).
During position-controlled tapping (NN_SpiTapping = 1) the acceleration and
braking process of the spindle and tool axis is defined through the axis-specific
MP_maxAcceleration. The acceleration value of the weaker axis applies to
both axes.
The jerk limiting set in MP_axPathJerk is also effective for the position-
controlled spindle and tool axis during tapping. The jerk is limited to the value
of the weaker axis.
With small thread depths and excessive spindle speeds it is possible that the
programmed spindle speed may not be attained. The immediate transition
from the acceleration phase to the braking phase can diminish the quality of
the thread. In MP_limitSpindleSpeed you can therefore limit the spindle
speed so that the spindle runs for about 1/3 of the tapping time at constant
speed.
The feed-rate can be changed during tapping. In MP_sourceOverride, you
define the override source (feed-rate override or spindle speed override) for
tapping, see page 2174. The TNC 640 automatically adapts the spindle speed
if the feed rate is changed.
 Define another parameter set and switch to this parameter set if you want
to achieve a specific control response for tapping.

1610 HEIDENHAIN Technical Manual TNC 640


Under certain circumstances it can make sense to define a separate kv factor
for the spindle during tapping. Example:
Reduce the kv factor during tapping to optimize the control response of the
spindle.
 You can define a specific kv factor for the spindle during tapping in
MP_kvFactorTapping. This parameter overwrites the value in the
CfgPosControl/kvFactor parameter.
The following diagram shows the temporal sequence of operations of the
cycle if the spindle is at standstill at the beginning of the cycle:

Limitation from MP_limit Spindle Speed

Ramps from
MP_max Acceleration
F (spindle)

NN_SpiTapping

NN_SpiControl

PLC-cycle

January 2015 6.19 Spindles 1611


The following diagram shows the temporal sequence of operations of the
cycle if the spindle is already rotating at the beginning of the cycle:

PLC ramp

Ramps from
MP_max Acceleration
F (spindle)

0
Ramp from
MP_max Acceleration
(axis-specific)

NN_SpiTapping

NN_SpiControl
PLC-cycle

MP_kvFactorTapping
kv factor for tapping
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 1000 [1/s] with up to 9 decimal places
Only effective during tapping. Replaces the value in
CfgPosControl/kvFactor.
If the parameter is not defined or 0, the value in CfgPosControl/
kvFactor is used.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_limitSpindleSpeed
For limiting the spindle speed with Cycles 17, 18 and 207.
(compare to iTNC 530: MP7160, Bit1)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
Spindle speed is limited so that it runs with constant speed
approx. 1/3 of the time
FALSE
Limiting not active.
Default: FALSE, optional parameter
Access: LEVEL1
Reaction: RUN

1612 HEIDENHAIN Technical Manual TNC 640


Tapping with
floating tap holder
and coded spindle- Settings in the configuration editor MP number
speed output
Channels
ChannelSettings
[Key name of the machining channel]
CfgThreadSpindle
thrdWaitingTime 113601
thrdPreSwitchTime 113602

Constraint:
 The parameter MP_axisMode must be set to the value "PlcControlled" for
coded output of the spindle speed to be supported during tapping.
If the spindle speed is output in code, the spindle and feed-rate ramps cannot
be synchronized:
 Enter in MP_thrdPreSwitchTime the advanced switching time of the
spindle.
You can delay a subsequent spindle start with M04:
 Enter in MP_thrdWaitingTime a dwell time. The ramp follows
MP_maxDecSpeedCtrl
You can delay restarting the infeed:
 Change the programmed dwell time in the cycle.
The NC uses M05 to switch off the spindle. The switch-off ramp follows
MP_maxDecSpeedCtrl. The spindle is then switched on again with M03.
The feed rate override for tapping must be limited. Otherwise the floating tap
holder may be damaged:
 Limit the feed rate during tapping via the PLC (PP_ChnFeedOverride)

January 2015 6.19 Spindles 1613


The following diagram shows the temporal sequence of operations of the
cycle.

Dwell time from


CYCL DEF 2.3
S

0
MP_thrdPreSwitchTime

M03

M05
MP_thrd
WaitingTime

M04

MP_acknowledge

NN_SpiTapping

MP_thrdWaitingTime
Waiting time at reversal point in thread base
(compare to iTNC 530: MP7120.0)
Available from NCK software version: 597110-03.
Format: Number
Input: Time in seconds [s] with up to 9 decimal places
The spindle stops for this time at the bottom of the thread
before starting again in the opposite direction of rotation
Default: No value, optional parameter
Access: LEVEL1
Reaction: RUN

MP_thrdPreSwitchTime
Advanced switching time of spindle
(compare to iTNC 530: MP7120.1)
Available from NCK software version: 597110-03.
Format: Number
Input: Time in seconds [s] with up to 9 decimal places
Default: No value, optional parameter
Access: LEVEL1
Reaction: RUN

1614 HEIDENHAIN Technical Manual TNC 640


6.19.12 Alternating operation of several spindles
The TNC 640 can operate several spindles alternatively, i.e. only one spindle
can always be active. You can configure a maximum of 4 spindles in CfgAxes/
spindleIndices.
Milling machines are often fitted with two spindles—one spindle is used for
roughing (high torque, low speed), and the other spindle is used for finishing
(high speed, low torque).
Spindles are switched by changing the kinematic description. This can be
done, for example through an OEM cycle. The respective spindle must be
assigned to its own kinematic model. The switch is made in the background
through the PLC.

Preparations in the The machine configuration must be prepared for the alternating spindles for
machine the PLC to be able to switch between spindles with Module 9097 (kinematic
configuration switchover). The second spindle is controlled instead of an axis. This means
then that not all axes will be available. Each spindle needs its own S strobe for
control, e.g. strobes S and S1.
Together with the spindle switching, readable and writable spindle information
is switched through FN17: and FN18: to the respectively active spindle.

Note

The PLC program of the machine must be prepared for the control of two
alternating spindles!

 Expand the machine configuration. Enter the spindles into the configuration
(Axes > PhysicalAxis > CfgAxis) and define parameter sets for both
spindles. Specify the encoder inputs and nominal value outputs.
 Remember that you have to write an individual parameter set for each gear
range of the respective spindle. You can easily write the spindle parameter
sets with the "key synonym" (see "KeySynonym function" on page 256).

Note

If the speed encoder of the spindle (with active reference mark monitoring,
MP_motEncCheckOff bit 0) is disconnected and reconnected, the
reference mark must be reevaluated after the drive has been switched on
again with Module 9418, otherwise the TNC 640 issues an error message.

January 2015 6.19 Spindles 1615


 Enter the key names of up to 4 spindles in System > CfgAxes >
MP_axisList (100001) and MP_spindleIndices (100002).
 Expand the configuration of the S strobes with further strobes. For this
purpose, enter for example a key name for a second S strobe in
CfgPlcSStrobes (104000). In the configuration data for the new S strobe,
specify all required parameters and gear ranges (MP_gearSpeed0,
MP_gearSpeed1)
 Add the settings for the machining channel to the new S strobe. To do this,
in the configuration object CfgPlcStrobes (201602), open the sStrobe
folder and add the previously specified key names for the S strobe to the list.
 Specify the kinematic configurations and assign the specific spindle (key
name from MP_axisList) as a spindle of the kinematic model via the
MP_activeSpindle parameter.

1616 HEIDENHAIN Technical Manual TNC 640


6.19.13 C-axis operation
The TNC 640 supports the following configurations for C-axis operation:
 The C axis and spindle use the same servo drive. As the speed encoder is
built into the motor, it measures both the C axis and the spindle.
 The C axis and spindle each use their own servo drive. As the speed encoder
is built into the motor, the C axis and the spindle use separate speed
encoders.
Note

If the C axis is driven by a separate drive ("Operation with external C axis"),


and the same position encoder is used for the spindle and the C axis, bit 9
must be set in MP_miscCtrlFunct1 under CfgCCAuxil, i.e. the value 512
must be entered. The value entered does not become effective until the
control is restarted.
If this entry is missing, the error message "0x8C20 Position encoder S1
defective" occurs in the above-mentioned use case when switching from
spindle operation to C-axis operation.

 The C axis and spindle use a common position encoder.


 The C axis and spindle each use a separate position encoder. The position
encoder inputs must be on the same drive-control motherboard of the
CC 61xx in this case. It is not possible to distribute the position encoder
inputs to various drive-control motherboards.
 The axis and spindle can be operated as an analog or digital axis or spindle.
Separate parameter sets for the spindle and C axis are required in all
configurations. In these parameter sets, you define the servo drive, the
position encoder and speed encoder as well as the other details separately for
the spindle and C axis.
 Define separate parameter sets for spindle and C-axis operation.
 The commissioning must be performed for spindle operation as well as for
C-axis operation.

Note

The C-axis position controller should be commissioned in the gear range


that is actually used for positioning. If possible, use the lowest gear range
to ensure optimum controllability.

If you use only one position encoder for both the spindle and the axis, the axis
display keeps running while the spindle is in operation:
 Before switching from the axis to the spindle, save the actual position value
of the axis with Module 9146. This ensures that the axis display remains at
the last value, even when the spindle is rotating.
 Before switching from the spindle to the axis, recover the actual position
value of the axis with Module 9146.

January 2015 6.19 Spindles 1617


If you save the actual position value with Module 9146 and then close the
position control loop, or if the position control loop is closed and the actual
position value is then saved with Module 9146, the error message Actual
position value saved <Axis> appears. The error message triggers an
emergency stop.
Switching from spindle to C axis: (example):
 Stop the spindle
 Change the axis by switching the parameter set
 Start C-axis operation

Switching from C-axis to spindle (example):


 Stop C-axis operation
 Change the axis by switching the parameter set
 Start spindle operation

PLC module Module 9146 Save and reestablish actual position values
Module 9146 saves and later reestablishes the actual position values of axes.
If the actual position values were saved, the last value displayed remains until
they are reestablished.
Constraint:
 The module functions only in the cyclic PLC program.
Call:
PS B/W/D/K <Axes bit-encoded>
PS B/W/D/K <Mode>
0: Save actual position values
1: Reestablish actual position values
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (actual position values saved or
Error reestablished)
1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode 2 Invalid value for parameter
<Axes bit-encoded>
24 Module was called in a spawn or submit job

1618 HEIDENHAIN Technical Manual TNC 640


6.19.14 Volts-per-hertz control mode
In volts-per-hertz control mode (U/f control mode), the motor is speed-
controlled in an open loop. The motor is digitally controlled using HEIDENHAIN
or non-HEIDENHAIN inverter systems.
You can use the following HEIDENHAIN inverters to set up the volts-per-hertz
control mode:
 UM 1xx
 UE 2xx
 UR 2xx
 UEC 1xx
You need a control loop to use a motor in volts-per-hertz control mode, and the
appropriate axis or spindle has to be enabled in the SIK. Connect the PWM
output of the CC with the inverter (not required for UEC 11x)—the encoder
inputs remain unconnected.

Note

The volts-per-Hertz control mode is a type of digital motor control that does
not return the rotational speed. This control mode cannot be used for axes
controlled through the analog nominal shaft-speed interface (± 10 V
signals).

The motor voltage increases in proportion to frequency up to the break (=


threshold rpm for field weakening). Then the motor voltage remains constant
(= rated voltage of motor); only the frequency continues to increase.
If the spindle reaches the maximum current due to excessive load, the error
message C380 Motor <Spindle 1/2> not controllable appears. For the
maximum current, the value from either the motor table or the power-module
table of the drive (whichever is lower) applies.

UM

UN

fbreak fM

The maximum speed in the volts-per-hertz control mode corresponds to the


maximum speed in closed loop operation.

January 2015 6.19 Spindles 1619


Settings to drive a motor with a U/f component:
Settings in the configuration editor:
 MP_posEncoderType = NO_ENCODER
 Set a small value for MP_maxAccSpeedCtrl (permissible axis acceleration).
As a general rule:
Select a suitable acceleration and braking ramp to ensure that the maximum
drive current (the lesser of maximum motor current and maximum power
stage current) is not exceeded. If the maximum current is exceeded, the
drives shut down. Controlled braking is not possible in this case.
Entries in the motor table:

Column Input Explanation


TYPE UASM Motor model
STR 0 Line count of rotary
encoder
SYS 0 Type of encoder
T-MAX 255 Maximum winding
temperature in °C
R1 Increase the value until the Stator resistance cold
utilization at standstill or at low
shaft speeds is about 40 %.

Note

If you enter a value of 0 into the STR column of the motor table, the motor
is speed-controlled in an open loop. The machine parameters for current
controller and speed controller have no effect.

Note

Because of the non-linear characteristic of the inverters the spindle should


be operated with a utilization of approx. 40 %. You can attain this value by
adjusting the R1 column in the motor table:
The voltage that is output at standstill results from the product of I0 and R1
in the motor table. R1 should be modified depending on the inverter being
used.
 If the utilization at standstill is insufficient, the motor lacks power at
standstill and at low shaft speeds.
 If the utilization is too high, the motor overheats.

During volts-per-hertz (U/f) control mode, no speed encoder is used.


Therefore: Actual speed value = Nominal speed value
 Use Module 9164 to determine the speed while the spindle is running, but
not during the acceleration and braking phases.

Note

The oscilloscope shows the actual current instead of the nominal current
(I NOML), since there is no nominal current with U/f components.

1620 HEIDENHAIN Technical Manual TNC 640


6.19.15 Tools with gears

For tools driven with internal gears, reduction or transmission by this gear
must be activated for the NC software and the PLC to compute the actual
speed and position of the tool. You can activate or deactivate the required
transmission ratio with PLC Module 9419 to make the actual position and
speed of the tool in the spindle dependent on the gear. The transferred gear
ratio provides a factor for the machine parameter MP_distPerMotorTurn. The
position of the driven tool can thus be restored even with recoupling. With
switching over, no renewed referencing of the spindle is required.
HEIDENHAIN recommends the following sequence for coupling in a tool with
internal gear:
 The PLC program activates the corresponding ratio with PLC Module 9419,
mode 1
 The PLC program positions the spindle to the coupling position (M19)
 The tool is changed (coupled in)
HEIDENHAIN recommends the following sequence for coupling out a tool
with internal gear:
 The PLC program positions the tool to the coupling position (M19) and saves
the position
 The PLC program positions the spindle to the coupling position
 The tool is changed (coupled out)
 The PLC program activates the original ratio of the spindle with PLC Module
9419 by deactivating the gear ratio, mode 2

January 2015 6.19 Spindles 1621


Module 9419 Set status for spindle
PLC Module 9419 sets a new status for a spindle. In contrast to PLC Module
9418, additional parameters can be set to the status.
Constraints:
 Mode 1/2: With this mode, an additional gear ratio can be activated for a
spindle. This can be necessary for example with tools with an internal gear.
The gear ratio represents a pure multiplicator of the original transmission
ratio (MP_distPerMotorturn).
 This module is only supported by the new symbolic memory interface. If the
iTNC-compatible interface is used, the module returns an error.
Call:
PS B/W/D/K <Logical spindle number>
PS B/W/D/K <Mode>
1: Activate additional gear ratio
2: Deactivate additional gear ratio
PS B/W/D/K <Additional parameter 1>
Mode 1: Counter of the gear ratio
Mode 2: - - -
PS B/W/D/K <Additional parameter 2>
Mode 1: Gear ratio denominator
Mode 2: - - -
CM 9419
PL B/W/D <Status>
0: Module successfully executed
1: Invalid spindle number programmed
2: Invalid mode, invalid parameter number
3: Activation status is now being switched
4: Competing function for this axis is now active
5: Spindle is in position control loop
Error code:

Marker Value Meaning


NN_GenApiModule 0 Module was run
Error (M4203) 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid task data transferred (see error
ErrorCode (W1022) code in returned value)
99 Module is not supported (PLC does not
operate with symbolic memory interface)

1622 HEIDENHAIN Technical Manual TNC 640


6.19.16 Advanced spindle interpolation (option #96)
To be able to use additional functions for an interpolated spindle, you need
software option #96. A prerequisite for using the functions or cycles of this
software option is that an adjusted, digitally controlled spindle is available. On
the TNC 640, the functions or cycles of software option #96 can also be used
in systems with integrated functional safety (FS).
For a detailed description of the functions and cycles that can be used with
software option #96, please refer to the TNC 640 User's Manual.

January 2015 6.19 Spindles 1623


6.20 Turning operations on milling machines (option #50)
The TNC 640 supports machines that can perform a combination of milling and
turning operations in a single setup. It offers the operator a comprehensive
package of cycles for both types of operations (see User's Manual), which are
programmed in HEIDENHAIN’s workshop-oriented conversational format.
In turning mode, the rotary table serves as the lathe spindle, while the milling
spindle with the tool remains stationary.
Rotationally symmetric contours are produced during turning operations. The
preset must be in the center of the lathe spindle for this.
Machines for milling and turning must fulfill special demands. A basic
prerequisite is a machine designed with high rigidity, in order to ensure a low
oscillation tendency even when the machine table (acting as lathe spindle) is
turning at high speeds.

Note

Option #50 must be enabled for the turning functions of the TNC 640 to be
available. Compared with the default functionality, option #50 gives you the
following additional functions:
 NC command for toggling between milling and turning modes
(FUNCTION MODE MILL/TURN)
 FUNCTION TURNDATA NC command
 Comprehensive cycle package for turning operations
 Tool management for turning tools
(TOOLTURN.TRN table for turning tools, See "Elements of the turning-
tool table" on page 2193)
If you want the code number for enabling Option #50, please contact
HEIDENHAIN for the code number.

1624 HEIDENHAIN Technical Manual TNC 640


6.20.1 Toggling between milling and turning modes
The machine operator uses the NC commands FUNCTION MODE TURN and
FUNCTION MODE MILL to toggle between milling and turning modes. When
toggling between turning and milling modes, the TNC 640 automatically
switches the diameter programming on or off, respectively, selects the XZ
plane as working plane for turning, and shows whether it is in milling or turning
mode in the status display.

FUNCTION MODE TURN


Machine in milling mode Machine in turning mode

+Z +Z
FUNCTION MODE MILL

+A +A
+C S
S
+Y +Y

+X +X

Machine-specific processes also need to be executed when toggling between


turning and milling modes. They are implemented by using OEM macros. If
the commands FUNCTION MODE MILL or FUNCTION MODE TURN are executed, the
TNC 640 automatically calls the macros whose paths are specified in
CfgSystemCycle under the key name OEM_MODE_MILL or
OEM_MODE_TURN.

Settings in the configuration editor MP number


System
Paths
CfgSystemCycle 102600
OEM_MODE_MILL
OEM_MODE_TURN

January 2015 6.20 Turning operations on milling machines (option #50) 1625
Contents of the  Required: Select the machine kinematics for milling or turning mode
macros (FN17: ID290 NR1)
 Optional: Limitations for the active presets
(FN17: ID534)
 Required: Initiate the switchover in the PLC program
(via M-function macros)
In the turning kinematics, the rotary axis is a spindle; in the milling kinematics,
the rotary axis is an NC axis. Therefore, the PLC program must handle the
rotary axis in different ways (via ApiSpindle or ApiAxis). For this reason, it can
be useful to switch off the rotary axis with the old settings before switching
the kinematics, and to reactivate it with the new settings after the switchover.
The PLC program must switch the parameter set for at least the rotary axis at
some point in between.
Greatly simplified example of a switching macro:
To PLC: Deactivate the "old" axis
FN17: ID290 NR1 (switch the kinematics)
To PLC: "Switch the parameter set"
To PLC: Activate the "new" axis

Special In the OEM macro, you determine an active Test Run mode by using FN18:
characteristics in SYSREAD ID992 NR16 (return value 0).
the Test Run mode
In the Test Run mode, all geometric functions must be run as usual (switching
the kinematics, limitations for the active presets, etc.).
Most of the PLC functions have no effect in the Test Run mode, e.g. all PLC
strobes, WRITE TO PLC, FN17: SYSWRITE ID2000 and FN20: WAIT FOR.
Reading the PLC operands in the Test Run mode by using, for example,
READ FROM PLC or FN18: SYSREAD ID2000 returns the real values from the PLC
run-time system. They usually do not match the simulated state, and therefore
you should structure your OEM macros in such a way that all PLC functions
are skipped (with FN18: SYSREAD ID992 NR16) in the Test Run mode.

Special In the OEM macro, you determine an active block scan by using
characteristics FN18: SYSREAD ID992 NR10 (return value 1).
during block scan
Generally, a block scan does not require any special handling regarding the
switching macros. It is advisable not to collect the macros during block scan,
but to run them immediately.
 Geometric functions must be run in the usual manner during block scan
(switching the machine kinematics, limitations for the active presets, etc.).
 The machine parameters should be switched to the lathe spindle (and back
to the milling spindle) in the usual manner during block scan.
 S strobes for the lathe spindle (only in turning mode) must be output
immediately during block scan. It is not advisable to collect the strobes,
because the lathe spindle may no longer be available at the time the strobes
are implemented. This definition results in all parameter-set switchovers for
the lathe spindle being run immediately during block scan.
The switching macros must contain a strobe that stops the "old" spindle and is
collected during block scan. Therefore, the OEM_MODE_TURN macro should
contain M5; the OEM_MODE_MILL macro should contain the corresponding
strobe for the lathe spindle.

1626 HEIDENHAIN Technical Manual TNC 640


If M3 is collected during block scan before you switch from milling to turning
mode (FUNCTION MODE TURN), the last strobe collected for the tool spindle
would be M3. This strobe would be implemented in turning mode, and
therefore would lead to undesirable reactions.
Keep in mind that the machine operator can also cancel a block scan. In this
case, the "Cancel" system cycle should restore a consistent state, See
"CANCEL cycle" on page 2568. In the "Cancel" system cycle, you recognize the
cancelation of the block scan, because FN18: SYSREAD ID992 NR11 returns a
negative value. When the block scan is canceled, the TNC 640 reactivates the
machine kinematics that was active at the beginning of the block scan. The
"Cancel" system cycle must be defined such that a parameter set is
reactivated that fits the active machine kinematics.

Examples of
macros

Note

The following macros illustrate how the OEM functions required for
switching between milling and turning modes can be structured. The FN29:
function is used to realize instructions to the PLC. Therefore, it is not
necessary to make a distinction between the Program Run modes of
operation, the Test Run mode and the block scan in the macro itself.

Note

The example macros correspond to the PLC basic program from


HEIDENHAIN. If you do not use the PLC basic program, you must modify
the macros correspondingly.

January 2015 6.20 Turning operations on milling machines (option #50) 1627
Notes on function FN29:
The function FN29: is used in the OEM macros for switching between milling
and turning modes. This function transmits 8 double words to the PLC. See
"Data transfer NC program => PLC ("FN19: PLC =" or "FN29: PLC =")" on
page 2517.
Use the following settings in the machine configuration to define that the
strobe of FN29: is also output during block scan:

Settings in the configuration editor


System
PLC
CfgPlcMStrobe
FN29
blockSearch: TRUE

The following definition is used:

PLC function Value 1 Value 2 Value 3


(code)
Activation of parameter set K+99992 Axis number from MP_axisList Parameter set
Feedback control of axes/ K+99995 Axis number from MP_axisList ON/OFF [1/0]
spindles
On/Off

Switching from milling mode to turning mode in


FUNCTION MODE TURN:
MODETURN.H

Settings in the configuration editor


System
Paths
CfgSystemCycle
OEM_MODE_TURN
path: [path entry]

BEGIN PGM MODETURN MM


M5 ;tool spindle STOP
;(M function is collected during block scan)
FN 29: PLC =+99995 / +5 / +0 / +1 ;tool spindle STOP
;(M function is output during block scan)
FN 17: SYSWRITE ID 290 NR1 =+1 ;activate the turning kinematics
M25 ;activate the clamping/brake of the tool spindle
FN 29: PLC =+99992 / +4 / +0 ;select the parameter set of the workpiece spindle
END PGM MODETURN MM

1628 HEIDENHAIN Technical Manual TNC 640


Switching from turning mode to milling mode in
FUNCTION MODE MILL:
MODEMILL.H

Settings in the configuration editor


System
Paths
CfgSystemCycle
OEM_MODE_MILL
path: [path entry]

BEGIN PGM MODEMILL MM


M305 M5 ;tool and workpiece spindles STOP
;(M function is collected during block scan)
FN 29: PLC =+99995 / +Q1801 / +0 / +1 ;workpiece spindle STOP
;(M function is output during block scan)
FN 29: PLC =+99995 / +Q1804 / +0 / +1 ;tool spindle STOP
;(M function is output during block scan)
FN 17: SYSWRITE ID 290 NR1 =+0 ;activate the milling kinematics
M26 ;deactivate the clamping/brake of the
;tool spindle
FN 29: PLC =+99992 / +4 / +1 ;select the parameter set of the C axis
FN 29: PLC =+99995 / +Q1801 / +1 / +0 ;activate the C axis (close the control loops)
END PGM MODEMILL MM

January 2015 6.20 Turning operations on milling machines (option #50) 1629
OEM start-up macro

Settings in the configuration editor


System
Paths
CfgSystemCycle
OEM_STARTUP
path: [path entry]

After start-up, the PLC basic program of the TNC 640 uses the OEM start-up
macro to ensure that the status of the NC and the status of the PLC are
consistent. The PLC basic program automatically switches to the status
matching that of the NC. For more information on the start-up cycle, please
see "STARTUP cycle" on page 2582.

BEGIN PGM OEM_STARTUP MM


;--------------------------------------------------------------------------------------
; Find the new state
; 0 = ModeMill / 1 = ModeTurn is active
; 10 = ModeMill / 11 = ModeTurn is being activated
;--------------------------------------------------------------------------------------
FN 18: SYSREAD QL0 = ID992 NR20
;--------------------------------------------------------------------------------------
FN 9: IF QL0 EQU +1 GOTO LBL "TURN"
FN 9: IF QL0 EQU +11 GOTO LBL "TURN"
;--------------------------------------------------------------------------------------
; ModeMill
;--------------------------------------------------------------------------------------
M26 ;deactivate the clamping/brake of the
;tool spindle
FN 29: PLC =+99992 / +4 / +1 ;select the parameter set of the C axis
FN 29: PLC =+99995 / +Q1801 / +1 / +0 ;activate the C axis (close the control loops)
FN 9: IF +0 EQU +0 GOTO LBL "END"
;--------------------------------------------------------------------------------------
; ModeTurn
;--------------------------------------------------------------------------------------
M25 ;activate the clamping/brake of the tool spindle
FN 17: SYSWRITE ID 290 NR1 =+1 ;activate the turning kinematics
FN 29: PLC =+99995 / +4 / +0 / +0 ;stop the C axis (open the control loops)
;--------------------------------------------------------------------------------------
; End
;--------------------------------------------------------------------------------------
LBL "END"
END PGM OEM_STARTUP MM

1630 HEIDENHAIN Technical Manual TNC 640


OEM cancel macro

Settings in the configuration editor


System
Paths
CfgSystemCycle
OEM_CANCEL
path: [path entry]

When a block scan is canceled, the PLC basic program of the TNC 640 uses
the OEM cancel macro to ensure that the status of the NC and the status of
the PLC are consistent. For more information on the Cancel cycle, please see
"CANCEL cycle" on page 2568.

BEGIN PGM OEM_CANCEL MM


;--------------------------------------------------------------------------------------
; Blockscan active?
FN 18: SYSREAD Q1800 = ID992 NR11
FN 12: IF +Q1800 LT+0 GOTO LBL "BLOCKSCAN"
;--------------------------------------------------------------------------------------
; Blockscan is not active
FN 9: IF +0 EQU +0 GOTO LBL "END"
;--------------------------------------------------------------------------------------
; Blockscan canceled
LBL "BLOCKSCAN"
FN 9: IF QL0 EQU +1 GOTO LBL "TURN"
FN 9: IF QL0 EQU +11 GOTO LBL "TURN"
;--------------------------------------------------------------------------------------
; ModeMill
;--------------------------------------------------------------------------------------
CALL PGM %OEM%\OEMCYC\modemill.h
FN 9: IF +0 EQU +0 GOTO LBL "END"
;--------------------------------------------------------------------------------------
; ModeTurn
;--------------------------------------------------------------------------------------
LBL "TURN"
CALL PGM %OEM%\OEMCYC\modeturn.h
;--------------------------------------------------------------------------------------
; End
;--------------------------------------------------------------------------------------
LBL "END"
END PGM OEM_STARTUP MM

January 2015 6.20 Turning operations on milling machines (option #50) 1631
6.20.2 Aligning the workpiece coordinate system and the tool (Cycle 800)

Note

A prerequisite for aligning the tool for turning operations is that the turning
tool is held by the spindle so that it can rotate.

On the TNC 640, turning operations are always programmed in the XZ plane.
You usually activate a separate kinematics description for the turning mode
(FUNCTION MODE TURN is active).
Cycle 800 "Adapt rotary coordinate system" enables the machine operator to
align the workpiece coordinate system depending on the current position of
the tilting axes. Cycle 800 is called after positioning the tilting axes.
Cycle 800 is also capable of mirroring the tool coordinate system. This makes
it possible, for example, to use an outside turning tool as an inside turning tool,
and vice versa. The tool is rotated by 180 degrees (tool spindle) and the tool
orientation (TO column in the TOOLTURN.TRN turning-tool table) is mirrored. It is
therefore not necessary to create redundant data for a tool, even if it is used
in different positions.

Note

Mirroring the turning tool (Q498 = 1) is possible only if a turning tool is


selected and the turning mode is active (FUNCTION MODE TURN).

1632 HEIDENHAIN Technical Manual TNC 640


Proceed as follows to configure Cycle 800 for your machine:

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of machining channel]
CfgMillTurn
mStrobeToolOrient 204202
toolClampSpacing 204203
eccLimSpeedFactor 204204

 Use MP_mStrobeToolOrient to define the M function for orienting the tool


spindle.

MP_mStrobeToolOrient
M function for spindle orientation in turning mode
Available from NCK software version: 597110-05.
Format: Number
Input: 0
Tool orientation deactivated
1...999
Number of the M function for tool orientation
Default: 0, optional parameter
Access: LEVEL1
Reaction: NOTHING
 Use MP_toolClampSpacing to define whether the tool spindle is to be
oriented relative to a certain grid value; if so, specify the value in degrees [°].
Enter the value 0 if the tool spindle can be oriented as desired.

MP_toolClampSpacing
Position for clamping the tool carrier (milling spindle)
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 359.9999 with max. 4 decimal places
0
Any position for clamping the tool carrier (milling spindle)
Value in [°]
Grid spacing for clamping the tool carrier (milling spindle)
Default: 0, optional parameter
Access: LEVEL1
Reaction: NOTHING
 Create a kinematics configuration for the turning mode. Define a rotation
about Z (orientation of the tool system) for each the first and last
transformation in the chain (before the first axis and before the last axis).
Please refer to the following configuration examples (Page 1635). For more
information about the configuration of the machine kinematics on the TNC
640, please see "Machine kinematics" on page 1186.

January 2015 6.20 Turning operations on milling machines (option #50) 1633
Eccentric turning In some cases, it is not possible to clamp a workpiece in such a way that the
axis of the center of rotation is aligned with the lathe spindle axis. This is the
case for large workpieces or workpieces that are not rotationally symmetric.
The eccentric turning function (Q535 in cycle 800) allows you nevertheless to
perform lathe machining.
For eccentric turning, multiple linear axes are coupled to the lathe spindle. The
TNC 640 compensates the off-center axis position by performing a circular
compensation movement with the coupled linear axes.
 With MP_eccLimSpeedFactor, you can limit the spindle speed when
performing eccentric turning. If you enter the value 0, eccentric turning is
not permitted. The limit value is formed from:
Spindle speed [1/min] = eccLimSpeedFactor / eccentricity [mm] * 1
[min/mm]
For further information on eccentric turning, please refer to the TNC 640
User's Manual for Cycle Programming.

MP_eccLimSpeedFactor
Factor for max. spindle speed during eccentric turning
Available from NCK software version: 597110-08.
Format: Number
Input: 0 to 9999.999 with max. 3 decimal places
0
Eccentric turning not allowed
0.001...9999.999
Maximum spindle speed factor
Default: 0, optional parameter
Access: LEVEL1
Reaction: NOTHING

1634 HEIDENHAIN Technical Manual TNC 640


Example of Principle of structuring a kinematic configuration for turning operations on a
kinematics: machine with an AC table.
AC table

Settings in the configuration editor Comment


Channels
Kinematics
CfgKinComposModel
KIN_TURNING
subKinList
[0]: AC_TABLE Name of the subkinematics
activeSpindle: S2 Lathe spindle
CfgKinSimpleModel
AC_TABLE
kinObjects
[0]: Trans_C_1 Tool orientation
[1]: MachAxisZ
[2]: MachAxisX
[3]: MachAxisY
[4]: Trans_Y_1
[5]: Trans_Z_1
[6]: MachAxisA
[7]: Trans_X_1
[8]: Trans_Y_2
[9]: Trans_Z_2
[10]: Trans_C_1 Workpiece orientation
CfgKinSimpleTrans
Trans_X_1
dir: X
val: ...
Trans_Y_1...
Trans_Y_2...
Trans_Z_1...
Trans_Z_2...
Trans_C_1
dir: C
val: 0
CfgKinSimpleAxis
MachAxisX
dir: X
axisRef: X
MachAxisY
dir: Y
axisRef: Y
MachAxisZ
dir: Z
axisRef: Z
MachAxisA
dir: X
axisRef: A

January 2015 6.20 Turning operations on milling machines (option #50) 1635
Example of Principle of structuring a kinematic configuration for turning operations on a
kinematics: machine with a B head and an A table.
B head / A table

Settings in the configuration editor Comment


Channels
Kinematics
CfgKinComposModel
KIN_TURNING
subKinList
[0]: B_HEAD_A_TABLE Name of the subkinematics
activeSpindle: S2 Lathe spindle
CfgKinSimpleModel
B_HEAD_A_TABLE
kinObjects
[0]: Trans_C_1 Tool orientation
[1]: Trans_X_1
[2]: Trans_Z_1
[3]: MachAxisB
[4]: MachAxisZ
[5]: MachAxisY
[6]: MachAxisX
[7]: Trans_X_2
[8]: Trans_Y_1
[9]: Trans_B_1
[10]: Trans_C_1 Workpiece orientation
CfgKinSimpleTrans
Trans_X_1
dir: X
val: ...
Trans_X_2...
Trans_Y_1...
Trans_Z_1...
Trans_B_1
dir: B
val: +90
Trans_C_1
dir: C
val: 0
CfgKinSimpleAxis
MachAxisX
dir: X
axisRef: X
MachAxisY
dir: Y
axisRef: Y
MachAxisZ
dir: Z
axisRef: Z
MachAxisB
dir: Y
axisRef: B

1636 HEIDENHAIN Technical Manual TNC 640


Example of Principle of structuring a kinematic configuration for turning operations on a
kinematics: BC machine with a BC table.
table (45 degrees)

Settings in the configuration editor Comment


Channels
Kinematics
CfgKinComposModel
KIN_TURNING
subKinList
[0]: BC_TABLE Name of the subkinematics
activeSpindle: S2 Lathe spindle
CfgKinSimpleModel
BC_TABLE
kinObjects
[0]: Trans_C_1 Tool orientation
[1]: MachAxisZ
[2]: MachAxisY
[3]: MachAxisX
[4]: Trans_X_1
[5]: Trans_Y_1
[6]: Trans_Z_1
[6]: Trans_A_1
[7]: MachAxisB
[8]: Trans_A_2
[9]: Trans_X_2
[10]: Trans_Y_2
[11]: Trans_Z_2
[12]: Trans_C_1 Workpiece orientation
CfgKinSimpleTrans
Trans_X_1...
Trans_X_2...
Trans_Y_1...
Trans_Y_2...
Trans_Z_1...
Trans_Z_2...
Trans_A_1
dir: A
val: –45
Trans_A_2
dir: A
val: +45
Trans_C_1
dir: C
val: 0

January 2015 6.20 Turning operations on milling machines (option #50) 1637
Settings in the configuration editor Comment
Channels
Kinematics
CfgKinSimpleAxis
MachAxisX
dir: X
axisRef: X
MachAxisY
dir: Y
axisRef: Y
MachAxisZ
dir: Z
axisRef: Z
MachAxisB
dir: Y
axisRef: B

1638 HEIDENHAIN Technical Manual TNC 640


6.21 Measuring the unbalance, monitoring the unbalance, balancing

6.21.1 Unbalance in turning operations

Introduction In a turning operation, the tool is in a fixed position, whereas the rotary table
and the clamped workpiece rotate. Depending on the size of the workpiece,
the mass that is set in rotation can be very large. As the workpiece rotates, it
creates an outward centrifugal force.
The centrifugal force created depends on the rotational speed, the mass and
the unbalance of the workpiece. An unbalance occurs if an object with a
rotationally nonsymmetrical mass is set in rotation. The mass object in rotation
creates outward-directed centrifugal forces. If the rotating mass is evenly
distributed, these centrifugal forces cancel each other out.
Unbalance:
U=m·R
U = Unbalance [gmm]
m = Mass [g]
R = Distance between center of mass and center of table [mm]
The centrifugal force Fc is proportional to the unbalance and increases as the
square of the rotational speed:
Centrifugal force:

m⋅R π 2
Fc - ⋅ ( S ⋅ 2 ⋅ ----
= ---------------- -)
1000000 60

Fc = Centrifugal force [N]


m = Mass [g]
R = Distance between center of mass and center of table [mm]
S = Rotational speed [rpm]

January 2015 6.21 Measuring the unbalance, monitoring the unbalance, balancing 1639
The unbalance is significantly influenced by the structural shape of the
workpiece and by the chucking equipment used. A nonsymmetrical pump
body is a good example of a workpiece that creates outward-directed
centrifugal forces:

6.21.2 Overview of functions


The TNC 640 assists the machine operator in determining and compensating
any existing unbalance prior to the machining operation. During machining, an
unbalance monitor cyclically monitors whether the lathe spindle is operated
within the defined unbalance limits. In addition, the TNC 640 offers machine
tool builders the possibility to calibrate the unbalance behavior of the rotary
table.

Calibrating the The TNC 640 determines the unbalance behavior of the rotary table by using
unbalance a calibration process, which is referred to as the unbalance calibration in the
following.
The unbalance calibration is performed by the machine tool builder before
shipping the machine. During the unbalance calibration, the rotary table is
operated with a defined weight, which is mounted at a defined radial position,
and rotated at different speeds. The measurement is repeated with different
weights.
The unbalance of the rotary table is determined from the following error that
occurs at an adjoining measuring axis.
The measurement values are recorded and automatically saved in a calibration
table (*.ubc) in PLC:\table\UnbCal_[Keyname Spindel].ubc (default path) if
nothing is set in CfgUnbalance/spindle/[Index Spindel]/tableCalibrate.
For a description of how to perform an unbalance calibration of the rotary table,
see "Unbalance calibration" on page 1643.

1640 HEIDENHAIN Technical Manual TNC 640


Measuring the The unbalance of the clamped workpiece is determined with a measuring
unbalance cycle.
The result provided to the machine operator by the TNC 640 indicates the
mass and position of a balancing weight with which the existing unbalance can
be compensated. The rotary table is automatically rotated to the position at
which the compensation weight must be placed. With the parameter
MP_offset (Page 1647), you can adjust the automatic positioning of the rotary
table to the layout of the working space (e.g. position of the guard door).
As an alternative, a dialog box offers the possibility to calculate a new radial
position for an alternative (available) counterbalance.
For more information on the Measure Unbalance cycle, please refer to the
"Programming: Turning Operations“ chapter in the User's Manual for
Conversational Programming of the TNC 640.

Monitoring the When a turning operation is active, the TNC 640 monitors cyclically (32
unbalance, measurements per spindle revolution) whether the defined unbalance limits
unbalance monitor are complied with. After a full spindle revolution, the TNC 640 is able to detect
an existing unbalance. The unbalance is determined from the following error
of an adjoining measuring axis.
As rapid traverse and machining feed rates also generate a following error, the
sinusoidal unbalance signal needs to be filtered from the following error of the
measuring axis by means of spectrum analysis. The unbalance values are not
measured during acceleration and braking processes of the measuring axis.
As the machine tool builder, you define in MP_maxUnbalanceOem and
MP_limitUnbalanceOem the upper unbalance limit for protecting the
machine from mechanical damage. The relationship of the effects of these
two parameters is illustrated in the diagram below. The cyclic monitoring of
the occurring unbalance protects the mechanics of the machine. If the limits
are exceeded, an error with an emergency-stop reaction is triggered.

January 2015 6.21 Measuring the unbalance, monitoring the unbalance, balancing 1641
MP_maxUnbalanceOem specifies an upper limit for the unbalance; if this
limit is exceeded, the unbalance sum is formed for monitoring by
MP_limitUnbalanceOem. The unbalance is determined from the following
error of the measuring axis. The values in the parameters have to be entered
in the unit [mm].

Unbalance
Amplitude [µm]

20

Limit Accumulated Unbalance


MP_maxUnbalanceOem MP_limitUnbalanceOem New Unbalance
MP_maxUnbalanceUsr MP_limitUnbalanceUsr Accumulation

10

1 5 10 15 20
Spindle Revolutions [rev.]

Example:
Unbalance limit (MP_maxUnbalanceOem) = 5 µm
Sum of excess unbalance (MP_limitUnbalanceOem) = 20 µm
Unbalance error message with emergency-stop reaction is triggered for:
 21 revolutions with an unbalance amplitude of 6 µm:
21 · (6 – 5) > 20
 11 revolutions with an unbalance amplitude of 7 µm:
11 · (7 – 5) > 20
 1 revolution with unbalance amplitude of 26 µm:
1 · (26 – 5) > 20
In addition, the user parameters MP_maxUnbalanceUsr and
MP_limitUnbalanceUsr give the machine operator the possibility to further
decrease the upper unbalance limit defined by the OEM. If the user-defined
limit is exceeded, the TNC 640 generates an error message. The table rotation
is not stopped in this case.
The unbalance monitor is effective until you switch back to Milling mode.

1642 HEIDENHAIN Technical Manual TNC 640


6.21.3 Applicability of the unbalance detection
The TNC 640 determines an existing unbalance of the rotary table by
measuring the effects on adjoining axes. For best results, the rotary axis
should be positioned over an adjoining linear axis (e.g. C axis is positioned over
the Y axis).
You need to check the applicability of the control's internal unbalance
functionality for each of your machine types. If the unbalance amplitude of the
rotary table has very little effect on the adjoining axes, it might not be possible
to calculate useful unbalance values from the determined results. In this case,
you will have to use a system with external sensors for unbalance monitoring.

Note

The TNC 640 determines the unbalance of the rotary table by using signals
in the control (measurement of the unbalance amplitude based on the
effect on adjoining axes). The evaluation of external sensor signals is not
supported.

6.21.4 Unbalance calibration


With the unbalance calibration, you create the calibration curves for
determining an unbalance on the rotary table.
The function determines the movements (following error) of an adjoining
measuring axis, which is caused by a defined unbalance. The rotational speed
of the rotary table is incremented up to a defined maximum speed and the
values determined are entered in a calibration table (*.ubc).
The unbalance calibration starts with an initial rotational speed (e.g. 50 [rpm]),
which is automatically increased by specified increments (e.g. 25 [rpm]) until
the defined maximum speed is reached. Spindle speed override is disabled.
The maximum spindle speed is limited by the MP_maxSpeed parameter and
can be further decreased through a field in the calibration dialog box. The
measurement is concluded when the following error reaches the value from
MP_maxUnbalance or when the spindle speed reaches the specified
maximum value.
Perform the unbalance calibration before you ship the machine. Proceed as
follows:
 Specify all the required machine parameters under CfgUnbalance; please
refer to the description under "Machine parameters for measuring the
unbalance" on page 1645.
 Enable the Turning mode, for example by executing a block with
FUNCTION MODE TURN in MDI
 Select the Manual Operation mode
 Select the 2nd level With the soft-key row
 Press the MANUAL CYCLES soft key
 Press the TURNING soft key
 Press the CALIBRATE UNBALANCE soft key

January 2015 6.21 Measuring the unbalance, monitoring the unbalance, balancing 1643
 Specify the starting values for the unbalance calibration:
The radial position and mass of the clamped weight, the starting speed, the
speed increment and the maximum speed up to which the unbalance is to
be measured step by step.
 If a calibration table already exists for the active spindle under PLC:\table,
you can overwrite the table by selecting the Overwrite existing table?
check box. Otherwise the measured values are added to the existing table.
The TNC 640 automatically creates the file name for the *.ubc calibration table
in the format UnbCal_[Key name of spindle].ubc and saves it to PLC:\table.
If a file name was specified in CfgUnbalance/spindle/[index of spindle]/
tableCalibrate, this file name is used instead of UnbCal_[key name of
spindle].ubc.
 Press the NC Start key to start the automatic calibration process.

Note

If the trigger conditions for an unbalance measurement are not fulfilled (e.g.
the following error cannot be measured on the measuring axis), the TNC
640 generates an error message after the time specified in MP_timeOut
has expired, and terminates the calibration process.

 Use the parameter MP_tableCalibrate to assign the created *.ubc


calibration table to an associated unbalance parameter set.
If a complete path was specified in CfgUnbalance/spindle/[index of
spindle]/tableCalibrate, this path will be used instead of
PLC:\table\UnbCal_[key name of spindle].ubc.

1644 HEIDENHAIN Technical Manual TNC 640


6.21.5 Machine parameters for measuring the unbalance
To be able to use the functions for calibrating, measuring and monitoring the
unbalance, the TNC 640 has to know the machine-specific properties and
unbalance limits of the lathe spindle.
You configure the settings in the CfgUnbalance configuration object. Below
is a description of all parameters that are relevant to the unbalance functions.
In the following cases, the TNC 640 will generate an error message when you
call the functions for unbalance measurement and calibration:
 The CfgUnbalance configuration object does not exist in the machine
configuration or its definition is incorrect or incomplete.
 The TNC 640 is not in Turning mode (FUNCTION MODE TURN must be active).

Settings in the configuration editor MP number


System
CfgUnbalance 120100
spindle 120101
[Index]
spindle
maxSpeed
radialPosition
offset
axisOfMeasure
triggerMin
triggerMax
maxUnbalance
minUnbalance
maxUnbalanceUsr
limitUnbalanceUsr
maxUnbalanceOem
limitUnbalanceOem
mStrobeSpindleCCW
mStrobeSpindleCW
mStrobeSpindleStop
mStrobeOrient
tableCalibrate
timeOut 120102

The TNC 640 organizes the settings under CfgUnbalance in parameter sets.
Proceed as follows to define the unbalance parameters:
 Insert the optional configuration object CfgUnbalance in the machine
configuration
 Insert the configuration folder spindle under CfgUnbalance in the
configuration

January 2015 6.21 Measuring the unbalance, monitoring the unbalance, balancing 1645
The TNC 640 automatically creates an unbalance parameter set with the index
[0]. If your machine has more than one lathe spindle, you can create additional
indexes with unbalance parameter sets in the configuration folder.
 Specify the key name of the lathe spindle in MP_spindle.

MP_spindle
Selection of lathe spindle
Available from NCK software version: 597110-05.
Format: Selection menu
Options: List of key names from CfgAxes/axisList.
In the list of axis key names, select the key name of the lathe
spindle to which this configuration of the unbalance
measurement is to apply.
Default: –
Access: LEVEL3
Reaction: RUN
 With MP_maxSpeed, specify the maximum permissible rotational speed
for the unbalance measurement.

MP_maxSpeed
Maximum permissible speed for unbalance measurement
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 1200 [rpm]
Default: 400 [rpm]
Access: LEVEL3
Reaction: RUN
 With MP_radialPosition, specify a default radial position (distance from the
center of the rotary table) at which the unbalance compensation weight is
mounted.
The parameter is evaluated by the unbalance measurement function.

MP_radialPosition
Default radial position at start of measurement
Available from NCK software version: 597110-05.
Format: Number
Input: Default position of the compensation weight in [mm]
Default: 0
Access: LEVEL3
Reaction: RUN

1646 HEIDENHAIN Technical Manual TNC 640


 After the unbalance measurement, the rotary table is automatically aligned
so that the position for mounting the compensation weight is oriented
towards the machine operator.
With MP_offset, specify an offset between the reference position of the
rotary table and the calculated position of the compensation weight. In this
way, you can optimally align the position of the table with the position of the
machine's guard door.
The parameter is evaluated by the unbalance measurement function.

MP_offset
Offset for alignment of the rotary table
Available from NCK software version: 597110-05.
Format: Number
Input: Offset for rotary table in [°]
Default: 0
Access: LEVEL3
Reaction: RUN
 With MP_axisOfMeasure, specify the measuring axis for determining the
unbalance. Enter the key name of the axis on which the rotary table is
positioned. This is the best axis for measuring the effect of the unbalance.
The parameter is evaluated by the unbalance calibration and unbalance
measurement functions and by the unbalance monitor.

MP_axisOfMeasure
Axis for measured value capture
Available from NCK software version: 597110-05.
Format: Selection menu
Options: List of key names from CfgAxes/axisList.
In the list of axis key names, select the key name of the
measuring axis for the unbalance measurement.
Default: –
Access: LEVEL3
Reaction: RUN
 With the two parameters MP_triggerMin and MP_triggerMax, you specify
the trigger window for the internal acquisition of the measured unbalance
values. The default value of 5 [%] is recommended for both parameters.
The parameters are evaluated by the unbalance calibration and unbalance
measurement functions and by the unbalance monitor.

MP_triggerMin
Lower limit for trigger
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 100 [%]
Lower limit of the trigger window.
Enter the permissible speed deviation from the nominal value in
percent.
Default: 5 [%]
Access: LEVEL3
Reaction: RUN

January 2015 6.21 Measuring the unbalance, monitoring the unbalance, balancing 1647
MP_triggerMax
Upper limit for trigger
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 100 [%]
Upper limit of the trigger window.
Enter the permissible speed deviation from the nominal value in
percent.
Default: 5 [%]
Access: LEVEL3
Reaction: RUN
 With the parameters MP_maxUnbalance and MP_minUnbalance, specify
the maximum and minimum permissible following error in the measuring
axis for the unbalance measurement. When the following error of the
measuring axis reaches the value specified in MP_maxUnbalance or when
the lathe spindle reaches the spindle speed specified in MP_maxSpeed
during the unbalance calibration, the measurement is concluded. In
MP_minUnbalance, specify the minimum following error of the measuring
axis that is required for determining the unbalance of the rotary table.
The parameters are evaluated by the unbalance calibration function.

MP_maxUnbalance
Maximum permissible unbalance amplitude (following error)
Available from NCK software version: 597110-05.
Format: Number
Input: Following error of the measuring axis in [mm]
Default: –
Access: LEVEL3
Reaction: RUN

MP_minUnbalance
Minimum permissible unbalance deflection (following error)
Available from NCK software version: 597110-05.
Format: Number
Input: Following error of the measuring axis in [mm]
Default: –
Access: LEVEL3
Reaction: RUN
 Use MP_maxUnbalanceOem, MP_limitUnbalanceOem,
MP_maxUnbalanceUsr and MP_limitUnbalanceUsr to specify the limit
values for unbalance monitoring, See "Monitoring the unbalance, unbalance
monitor" on page 1641.

MP_maxUnbalanceOem
Maximum permissible unbalance (system monitor)
Available from NCK software version: 597110-05.
Format: Number
Input: Unbalance filtered from the following error, in [mm]
If the value of unbalance exceeds the defined value, the
unbalance sum is formed up to the threshold from
MP_limitUnbalanceOem. If the threshold from
MP_limitUnbalanceOem is exceeded, the control generates an
error message with an emergency stop as reaction.
Default: 0
Access: LEVEL3
Reaction: RUN

1648 HEIDENHAIN Technical Manual TNC 640


MP_limitUnbalanceOem
Maximum unbalance sum (system monitor)
Available from NCK software version: 597110-05.
Format: Number
Input: Unbalance filtered from the following error of the measuring
axis, in [mm]
If the unbalance exceeds the value defined in
MP_MP_maxUnbalanceOem, the unbalance is added up
internally. If the defined limit is exceeded, the control generates
an error message with an emergency stop as reaction.
Default: 0
Access: LEVEL3
Reaction: RUN

MP_maxUnbalanceUsr
Maximum permissible unbalance (user monitor)
Available from NCK software version: 597110-05.
Format: Number
Input: Unbalance filtered from the following error of the measuring
axis, in [mm]
Can be adjusted by the machine operator.
If the value of unbalance exceeds the defined value, the unbalance
sum is formed up to the threshold from MP_limitUnbalanceUsr. If
the threshold from MP_limitUnbalanceUsr is exceeded, the control
generates an error message.
Default: 0
Access: LEVEL1
Reaction: RUN

MP_limitUnbalanceUsr
Maximum unbalance sum (user monitor)
Available from NCK software version: 597110-05.
Format: Number
Input: Unbalance filtered from the following error of the measuring
axis, in [mm]
Can be adjusted by the machine operator.
If the unbalance exceeds the value defined in
MP_maxUnbalanceUsr, the unbalance is added up internally. If the
defined limit is exceeded, the control generates an error message.
Default: 0
Access: LEVEL1
Reaction: RUN
 In the parameters MP_mStrobeSpindleCCW, MP_mStrobeSpindleCW,
MP_mStrobeSpindleStop and MP_mStrobeOrient, specify the M functions
with which the lathe spindle is to be controlled during the unbalance measurement.

MP_mStrobeSpindleCCW
M function for spindle left
Available from NCK software version: 597110-05.
Format: Number
Input: –1: Use standard function (e.g. M3, M4, M5)
1 to 999: Number of the M function
Default: -1
Access: LEVEL3
Reaction: RUN

January 2015 6.21 Measuring the unbalance, monitoring the unbalance, balancing 1649
MP_mStrobeSpindleCW
M function for spindle right
Available from NCK software version: 597110-05.
Format: Number
Input: –1: Use standard function (e.g. M3, M4, M5)
1 to 999: Number of the M function
Default: -1
Access: LEVEL3
Reaction: RUN

MP_mStrobeSpindleStop
M function for spindle stop
Available from NCK software version: 597110-05.
Format: Number
Input: –1: Use standard function (e.g. M3, M4, M5)
1 to 999: Number of the M function
Default: -1
Access: LEVEL3
Reaction: RUN

MP_mStrobeOrient
M function for spindle orientation
Available from NCK software version: 597110-05.
Format: Number
Input: –1: Spindle orientation directly by NC
0: Function inactive
1 to 999: Number of the M function
Default: 0
Access: LEVEL3
Reaction: RUN
 With MP_tableCalibrate, specify the path / file name of the unbalance
calibration table. The table is automatically created during the unbalance
calibration and stored under PLC:\table.

MP_tableCalibrate
Path/name of the unbalance calibration table of the rotary table
Format: String
Input: Path/name of the calibration table *.ubc
Default: –
Access: LEVEL3
Reaction: RUN
 In MP_timeOut, enter a time window for the unbalance measurement
procedure, within which the trigger conditions must be fulfilled.

MP_timeOut
Window for unbalance detection
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 100 [s] (time slot for trigger condition)
Default: 10 [s]
Access: LEVEL3
Reaction: RUN

1650 HEIDENHAIN Technical Manual TNC 640


6.22 Configuring the controller unit and drive motors

6.22.1 Specifications of CC 61xx / UEC 1xx

Machine interfacing TNC 640


Regulation with CC 6xxx / UEC 1xx
Position control Signal period
resolution - Repeat the measurement
4096
- Inform your service agency if the error
continues to occur
or encoder resolution (EnDat 2.2 interpol.)
Path interpolation 3 ms
Fine interpolation Cycle time for fine interpolation = Cycle time of position controller
Cycle time of current PWM frequency Cycle time if MP_iCtrlPwmType = 0:
controller 3333 Hz 150 µs
4000 Hz 120 µs
5000 Hz 100 µs
6666 Hz 75 µs (option 49)
8000 Hz 60 µs (option 49)
10000 Hz 50 µs (option 49)
Cycle time of speed  Speed controller cycle time = 2 · current controller cycle time
controller  Unless PWM frequency ≤ 5 kHz and double-speed performance,
then:
Speed controller cycle time = Current controller cycle time
Cycle time of position Position controller cycle time = Speed controller cycle time
controller

January 2015 6.22 Configuring the controller unit and drive motors 1651
Machine interfacing TNC 640
Maximum motor
speed fPWM · 60000 min-1
nmax =
p · 5000 Hz

nmax: Maximum motor speed [min–1]


fPWM: PWM frequency [Hz]
p: Number of pole pairs
The following PWM frequencies are available:
3333 Hz, 4000 Hz, 5000 Hz
With option 49: 6666 Hz, 8000 Hz, 10000 Hz
or by way of: Maximum signal frequency of motor encoder = 400 kHz or 800 kHz
(depending on MP_vCtrlEncInputFunc, bit 0)
Calculation of maximum motor speed:
f · 60000 [s/min]
nmax = max
STR

nmax: Maximum motor speed [min–1]


fmax: Maximum signal frequency of motor encoder [kHz]
STR: Encoder line count
Example 1:
400 kHz · 60000 [s/min]
nmax =
2048

nmax = 11718.75 min–1


Example 2:
800 kHz · 60000 [s/min]
nmax =
2048

nmax = 23437.5 min–1


Maximum feed rate by Maximum signal frequency of the position encoder:
way of:
 At 1 VPP: 27 kHz or 400 kHz
 At 11 µAPP: 27 kHz or 140 kHz
Calculation of the maximum feed rate Fmax:

Fmax = SP · fmax · 60-3


[ m·s
µm · min ]
Fmax: Maximum feed rate [m/min]
fmax: Maximum signal frequency of the position encoder [kHz]
SP: Signal period of the position encoder [kHz]
Example:

Fmax = 20 µm · 400 kHz · 60-3 [ m·s


µm · min ]
Fmax = 480 m/min

1652 HEIDENHAIN Technical Manual TNC 640


6.22.2 Structure of the CC 61xx and UEC 11x controller units
There is no backplane between the CC and MC for the CC 61xx and MC 6xxx.
The CCs continue to be supplied via X69. The MCs of the new generation are
supplied with +24 V NC voltage via X101, independently of the CCs.
A new DSP processor is used on the CC 61xx and the UEC 11x. A single one
of these DSP's is capable of controlling a maximum of six control loops and
provides a controller performance identical to the CC 424.
The CC 61xx family has a modular structure. The addressed DSP is on the
motherboard of the controller. These drive-control motherboards have two
control loops, and can therefore control two axes. The same applies to each
drive-control expansion board, which does not have its own DSP, however. A
drive-control expansion board has two control loops, but can only be used in
combination with a drive-control motherboard (with DSP).
Up to two controller expansion boards can be connected to a drive-control
motherboard (with DSP). This configuration results in a maximum of six axes
that a single DSP can control. If more than six axes are to be controlled, then
another drive-control motherboard is necessary, providing another DSP.
If two drive-control motherboards (two DSPs) are housed in one CC, then the
inputs and outputs of the CC are uniquely assigned to one of the two DSPs via
the letters A and B.
Index A means that these inputs and outputs are controlled by the first DSP
(first drive-control motherboard). Index B means that these inputs and outputs
are controlled by the second DSP (second drive-control motherboard).
For configuring the controller units via machine parameters, the HSCI address
of the respective drive-control motherboard must be entered in
MP_hsciCcIndex. The HSCI address is obtained from the position of the
drive-control motherboard in the HSCI system. The first drive-control
motherboard after X500 of the MC is given the address 0, etc. However, the
HSCI address to be entered only depends on the drive-control motherboards
in the system. I/O units (PLs) and machine operating panels (MBs) are not
taken into account. This means that for the first drive-control motherboard,
you have to enter the address 0 in MP108, regardless of whether PLs or MBs
are located before the CC in the HSCI chain.

January 2015 6.22 Configuring the controller unit and drive motors 1653
There is one LED on each drive-control motherboard indicating its HSCI
address relevant for MP_hsciCcIndex by a blink code.

Also, on the CC 61xx the inputs and outputs have permanent assignments to
each other. Switching of the inputs and outputs, as with the CC 424, is not
possible here.
Example:
X51, X15, X201 are permanently assigned to each other;
X53A, X17A, X203A are permanently assigned to each other
etc.
See the table for the assignments. The assignment within each row is
permanent. Switching between the rows is not possible with the CC 61xx.

Speed output: Input: Input:


PWM output Speed encoder Position encoder

X51(A/B) X15(A/B) X201(A/B)

X52(A/B) X16(A/B) X202(A/B)

X53(A/B) X17(A/B) X203(A/B)

X54(A/B) X18(A/B) X204(A/B)

X55(A/B) X19(A/B) X205(A/B)

X56(A/B) X20(A/B) X206(A/B)

PWM frequencies of the CC 61xx


The same PWM frequency must be set for both PWM outputs of a controller
group in MP2180.x.
 Controller group 1: X51, X52
 Controller group 2: X53, X54
 Controller group 3: X55, X56

1654 HEIDENHAIN Technical Manual TNC 640


6.22.3 Single-speed and double-speed (software option #49)

Controller
performance
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
ctrlPerformance 400018

On the CC 61xx controller there is a DSP on every controller basic PCB. Each
DSP has enough computing power to control six single-speed axes.
The UEC 11x controller also has a DSP on the drive control board, with which
it controls all the axes of the UEC 11x.
The following rule applies: A double-speed axis requires the computing power
of two single-speed axes.
Depending on the required machine or controller performance, it may be
necessary to drive an axis with increased computing power of the controller:
this is then referred to as a double-speed axis. A double-speed axis requires
the computing power of two single-speed axes. This enables you, for
example, to achieve excellent results regarding the workpiece surface quality
or speed optimization.

Note

Double-speed control loops require software option #49!

Single-speed control loops are used for:


 Spindles
 Conventional axes
Double-speed control loops are used for:
 Linear motors
 Torque motors
 High-frequency spindles
 "Axes that are difficult to control"
Double-speed control loops are needed particularly for linear drives in order to
achieve proper speed/position control factors required by high-efficiency
mechanical systems.
High-speed spindle motors requiring PWM frequencies greater than 5 kHz
with short current controller cycle times can be operated only with double-
speed control loops.
With the CC 61xx, specify via the MP_ctrlPerformance parameter for each
axis whether it is configured as a single-speed or a double-speed axis. Please
note that the maximum number of available control loops may be reduced
through the configuration of double-speed control loops.

January 2015 6.22 Configuring the controller unit and drive motors 1655
With the CC 61xx it is possible to distribute double-speed axes controlled by
one DSP over any of the outputs of the controller groups (X51 to X56). The only
restriction is the maximum controller performance of the parent DSP, which
must not be exceeded. For example, with a CC 6106 up to any three outputs
may be used for double-speed axes.
This leads to the following possible configurations for a CC 6106:
Composition of the CC 6106 controller unit:

DSP on drive-control motherboard for up to six single-speed (SS) axes

Controller group 1 (on Controller group 2 Controller group 3


drive-control (controller expansion (controller expansion
motherboard CB) board 1 CE 1) board 2 CE 2)

X51 (SS) X52 (SS) X53 (SS) X54 (SS) X55 (SS) X56 (SS)

Possible configurations for the CC 6106:

Number of single-speed axes: Number of double-speed axes:

Max. 6 single-speed 0 double-speed

Max. 4 single-speed 1 double-speed

Max. 2 single-speed Max. 2 double-speed

0 single-speed Max. 3 double-speed

Composition of the CC 6108 controller unit: (not available with TNC 620)

DSP on drive-control motherboard A DSP (CB B)


(CB A) for max. four SS max. 4 SS

Controller group 1 Controller group 2 Controller group 1 Controller group 2


(on CB A) (on CE 1) (on CB B) (on CE 1)

X51A X52A X53A X54A X51B X52B X53B X54B


(SS) (SS) (SS) (SS) (SS) (SS) (SS) (SS)

Possible configurations for the CC 6108, each for controller groups A and B:

Number of single-speed axes: Number of double-speed axes:

Max. 4 single-speed 0 double-speed

Max. 2 single-speed 1 double-speed or


2 double-speed with the same
PWM frequency

0 single-speed Max. 3 double-speed, 2 of them


with the same PWM frequency

1656 HEIDENHAIN Technical Manual TNC 640


Composition of the CC 6110 controller unit: (not available with TNC 620)

DSP (drive-control motherboard A, DSP (CB B)


CB A) for max. four SS max. 6 SS

Controller group 1 Controller group 2 Controller group 1 Controller group 2 Controller group 3
(on CB A) (CE 1) (on CB B) (CE 1) (CE 2)

X51A X52A X53A X54A X51B X52B X53B X54B X55B X56B
(SS) (SS) (SS) (SS) (SS) (SS) (SS) (SS) (SS) (SS)

Possible configurations for the CC 6110 for controller group A:

Number of single-speed axes: Number of double-speed axes:

Max. 4 single-speed 0 double-speed

Max. 2 single-speed 1 double-speed or


2 double-speed with the same
PWM frequency

0 single-speed Max. 3 double-speed, 2 of them


with the same PWM frequency

Possible configurations for the CC 6110 for controller group B:

Number of single-speed axes: Number of double-speed axes:

Max. 6 single-speed 0 double-speed

Max. 4 single-speed 1 double-speed

Max. 2 single-speed Max. 2 double-speed

0 single-speed Max. 3 double-speed

Composition of the UEC 11x:

DSP on drive-control motherboard for up to five single-speed (SS)


axes

Controller group 1 Controller group 2 Controller group 3


(on drive-control (controller expansion (controller expansion
motherboard CB) board 1 CE 1) board 2 CE 2)

X80 (SS) X81 (SS) X82 (SS) X83 (SS) X84 (SS) Vacant
Spindle Axis Axis Axis Axis

January 2015 6.22 Configuring the controller unit and drive motors 1657
Useful configurations of UEC 11x:

Number of single-speed axes: Number of double-speed axes:

5 single-speed 0 double-speed

4 single-speed 1 double-speed
(X80, X81, X82, X83) (X84)

3 single-speed axes 1 double-speed spindle


(X82, X83, X84) (X80)

MP_ctrlPerformance
Controller performance of this axis on the CC
Available from NCK software version: 597110-03.
Format: Selection menu
Options: SINGLE
Axis is a single-speed control loop with normal computing
power
DOUBLE
Axis is a double-speed control loop with two-fold computing
power
Default: SINGLE, optional parameter
Access: LEVEL3
Reaction: RUN

1658 HEIDENHAIN Technical Manual TNC 640


6.22.4 PWM frequencies with the CC 61xx

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
ampPwmFreq 401204
CfgCurrentControl
iCtrlPwmType 401003

In MP_ampPwmFreq, you assign different PWM frequencies to the CC 61xx


controller groups.
There are three fundamental PWM frequencies: 3.333 kHz, 4 kHz and 5 kHz.
A control loop is operated at the fundamental PWM frequency or at double the
fundamental PWM frequency (6.666 kHz, 8 kHz, 10 kHz). It must be observed
however that both PWM outputs of a drive control motherboard or drive
upgrade motherboard must always be operated with a common PWM
frequency.
The same PWM frequency must be assigned to both PWM outputs of a
controller group with MP_ampPwmFreq. Otherwise, the DSP error message
C440 PWM frequency <axis> incorrect will appear.
 Controller group 1: X51, X52
 Controller group 2: X53, X54
 Controller group 3: X55, X56
 In MP_ampPwmFreq, enter the PWM frequency.

MP_ampPwmFreq
PWM frequency
(compare to iTNC 530: MP2180.x)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: 0
5 kHz (for HEIDENHAIN inverters)
3.333 kHz
4.0 / 4.166 kHz
5 kHz
6.666 kHz
8.0 / 8.333 kHz
10 kHz
Default: 0
Access: LEVEL3
Reaction: RUN
The cycle time of the current controller depends on the PWM frequency:
1
TI = -----------------
2 ⋅ f PWM

If a control loop is operated at double the fundamental PWM frequency, the


current controller cycle time is halved. However, this is possible only with
double-speed control loops.

January 2015 6.22 Configuring the controller unit and drive motors 1659
If you want to operate single-speed control loops at double the fundamental
PWM frequency,
 Set MP_iCtrlPwmType = 1 in order to calculate the current controller cycle
time from the fundamental PWM frequency although the control loop will
be operated at double the fundamental PWM frequency.
If you operate a single-speed control loop at double the fundamental PWM
frequency and half the current controller cycle time (MP_iCtrlPwmType = 0),
the error message C017 PWM frequency too high will appear. Current
controller cycle time depending on the PWM frequency:

PWM Single-speed control loop Double-speed control loop


frequency MP_iCtrlPwmType MP_iCtrlPwmType
=0 =1 =0 =1
3.333 kHz 150 µs Error C013! 150 µs Error C013!
4 kHz 125 µs Error C013! 125 µs Error C013!
5 kHz 100 µs Error C013! 100 µs Error C013!
6.666 kHz Error C017! 150 µsa 75 µs 150 µsa
8 kHz Error C017! 125 µsb 62.5 µs 125 µsb
10 kHz Error C017! 100 µsc 50 µs 100 µsc
a. Fundamental PWM frequency of 3333 Hz
b. Fundamental PWM frequency of 4000 Hz
c. Fundamental PWM frequency of 5000 Hz

MP_iCtrlPwmType
Current controller cycle time
(compare to iTNC 530: MP2182.x)
Available from NCK software version: 597110-03.
Format: Number
Input: 0: Cycle time = 1 / (2 · fPWM)
1: Cycle time = 1 / fPWM
2: Reserved
The value from CfgPowerStage/ampPwmFreq is used as the
PWM frequency fPWM.
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

1660 HEIDENHAIN Technical Manual TNC 640


6.22.5 PWM frequency with INDRAMAT "POWER DRIVE" inverters
 In MP_ampPwmFreq, enter the PWM frequency 4.166 kHz.

6.22.6 PWM frequency with SIEMENS "SIMODRIVE" inverters


The TNC 640 operates with a PWM frequency of 5 kHz. SIEMENS power
modules are normally driven with a PWM frequency of 3.2 kHz (spindle) and
4 kHz (axes).
The rated current values IN are defined for these frequencies. If power
modules are operated with a higher PWM frequency (e.g. 5 kHz), high
temperatures can be caused in these modules in some cases.
This applies particularly to these SIEMENS power modules:
 6SN1123-1AA00-0CA0 (as axis module)
 6SN1123-1AB00-0CA0 (as axis module)
Machines that are not under full load do not exceed the maximum permissible
temperature.
There are two ways to prevent the undesired heating:
 In MP_ampPwmFreq, enter the required PWM frequency (3.333 kHz or
4.166 kHz).
or
 Reduce the factor for I2t monitoring
or
 Reduce rated current IN in the table of power modules.

Note

A reduction of the PWM frequency has no effect on the maximum


rotational speed, but it means that the axes and the spindle(s) must be
commissioned again.

When a new machine is commissioned, HEIDENHAIN recommends the PWM


frequency fitting for the axis modules (normally 4 kHz, see the SIEMENS
documentation). If the power module of the spindle gets too hot in spite of a
reduction of the PWM frequency from 5 kHz to 4 kHz, then the reference value
for the I2t monitoring or the rated current IN must be reduced in the table of
power modules.

January 2015 6.22 Configuring the controller unit and drive motors 1661
Reduction of the reference value for I2t monitoring or rated current IN in
the table of power modules
The reduction of the rated current IN of the power modules, as well as the
reference value for I2t monitoring, can be calculated from two values (X1, X2)
that are given in the SIEMENS documentation.
The percent reduction of the rated current can be calculated with the following
formula:

( 100 – X1 ) ⋅ (8 kHz – f PWM )


X R [%] = 100 –  ---------------------------------------------------------------------------------------- + X1
 8 kHz – X2 

 X1 = Reduction factor of the current in % at a PWM frequency of 8 kHz


 X2 = PWM threshold frequency [kHz] at which the electrical power
reduction begins
 fPWM = PWM frequency [kHz] set in MP_ampPwmFreq

This results in the reference value for I2t monitoring:

X R [%]
X B = 1 – --------------------
100

 Reduce the rated current values IN of your power modules in the power
module table.
I Nneu
New
= I N ⋅ ( 100 % – X R [%] )

or
 Reduce the reference value (CfgServoMotor/motFactorI2t) for the I2t
monitoring.
Reference value = X B
Bezugswert

Note

A reduction of the rated current of the power module can cause a reduction
of the rated torque and, as a consequence, the rated power of the motor,
if equal values for rated current of the power module and the rated current
of the motor were chosen.

1662 HEIDENHAIN Technical Manual TNC 640


Example of a 50 A power module:
 Axis power module with 50 A, PWM frequency of 5 kHz, X1 = 40 %,
X2 = 4 kHz

( 100 – 40 ) ⋅ (8 kHz – 5 kHz )


X R [%] = 100 –  ---------------------------------------------------------------------------------------- + 40 = 15 %
8 kHz – 4 kHz

15
X B = 1 – ----------- = 0.85
0, 85
100

 Spindle power module with 50 A, PWM frequency of 5 kHz, X1 = 40 %,


X2 = 3.2 kHz

( 100 – 40 ) ⋅ (8 kHz – 5 kHz )


X R [%] = 100 –  ---------------------------------------------------------------------------------------- + 40 = 22,5
22.5 %
%
8 kHz – 3,2 3.2 kHz

22,5
X B = 1 – ------------- = 0.78
0,78
100

 Axis power module with 50 A, PWM frequency of 4 kHz, X1 = 40 %, X2 =


4 kHz

( 100 – 40 ) ⋅ (8 kHz – 4 kHz )


X R [%] = 100 –  --------------------------------------------------------------------------------------- + 40 = 0 %
8 kHz – 4 kHz

0
X B = 1 – ----------- = 1.00
1, 00
100

 Spindle power module with 50 A, PWM frequency of 4 kHz, X1 = 40 %,


X2 = 3.2 kHz

( 100 – 40 ) ⋅ (8 kHz – 4 kHz )


X R [%] = 100 –  ---------------------------------------------------------------------------------------- + 40 = 10 %
8 kHz – 3.2 3,2 kHz

10
X B = 1 – ----------- = 0.90
0, 90
100

January 2015 6.22 Configuring the controller unit and drive motors 1663
6.22.7 Comparison of the CC 61xx and CC 424 controller units

Function CC 61xx CC 424


Hardware Position encoder inputs X201(A) Position encoder inputs X201 to
to X206(A) and X201B to X206B X206 and X207 to X210 on the
on the CC 61xx CC 424
Assignment of speed encoder Permanent assignment, position Fixed assignment,
inputs to the PWM outputs encoder inputs are also MP_speedEncoderInput not
permanently assigned. Always required
in one row, e.g. X16A, X51A and
X202A are permanently
assigned to each other.
MP_hsciCcindex Assignment of axes and Not present
spindles to drive-control
motherboards
MP_pwmSignalOutput Assignment of axes and Assignment of axes and
spindles to the speed outputs spindles to speed outputs
(X15 to X18, X15 to X20)
MP_posEncoderType New possible choice The choice
"CC_EXTERN_ENDAT_2_2" for "CC_EXTERN_ENDAT_2_2" has
CC 61xx. no function
Encoders with EnDat 2.2 Encoders with EnDat 2.2 Encoders can only be operated
interface interface can be operated via analog encoder signals.
without analog encoder signals.
The position is evaluated purely
digitally via a serial data protocol.
The parameter
MP_posEncoderSignal has no
effect. EnDat 2.2 encoders can
be selected as motor encoders
in parameter MP_motEncType.
PWM frequency Same as CC 424, only the Can be set via
controller groups for which the MP_ampPwmFreq (switchable
same PWM frequency must be during operation); the calculation
set have changed, see page of the current-controller cycle
1653. time must be adapted via
MP_iCtrlPwmType
Control loops can be switched See "Single-speed and double-speed (software option #49)" on
from single speed to double page 1655.
speed for higher controller
performance
Control-loop cycle times Single-speed: Single-speed:
(at 5000 Hz PWM frequency) 200 µs/200 µs/100 µs 200 µs/200 µs/100 µs
(position/speed/current) Double-speed: Double-speed:
100 µs/100 µs/100µs (with 200 µs/100 µs/100µs (with
position encoder) position encoder)
100 µs/100 µs/100 µs (without 100 µs/100 µs/100 µs (without
position encoder) position encoder)

1664 HEIDENHAIN Technical Manual TNC 640


Function CC 61xx CC 424
Following error in the jerk phase Same as CC 424 Typical input values:
(MP_compIpcJerkFact) 0.001 to 0.005
Stick-slip friction compensation Same as CC 424 Feed-rate independent;
(MP_compFriction0, MP_compFriction0 same
MP_compFrictionT1, meaning as previously (effective
MP_compFrictionT2) values, readjustment
necessary),
MP_compFrictionT1 new
meaning
MP_compFrictionT2 new
Filter in the speed control loop Same as CC 424 MP_vCtrlFiltLowPassT omitted,
new machine parameters:
MP_vCtrlFiltDamping1 to
MP_vCtrlFiltDamping6
MP_vCtrlFiltFreq1 to
MP_vCtrlFiltFreq6
MP_vCtrlFiltType1 to
MP_vCtrlFiltType6
MP_vCtrlFiltBandWidth1 to
MP_vCtrlFiltBandWidth6
MP_vCtrlEncInputFilt new
meaning
Master-slave torque control The PWM outputs of the master The PWM outputs of the master
and slave axes must always be and slave axes must always be
operated on the same DSP operated on the same DSP
(meaning the same drive-control ("single-speed" setting)
motherboard for the CC 61xx),
i.e. the master and slave axes
must be operated with the same
power.
More slave axes are possible for
the CC 61xx than before, e.g. up
to five slave axes are possible for
a CC for six axes.
Reading the absolute value of Same as CC 424 The absolute value can be read
encoders with EnDat interface out again via the PASS OVER
REFERENCE soft key or via Module
9220 (i.e. after the exchange of
milling heads).
MP_motEncCheckOff Same as CC 424 Bit 4: Monitoring for excessive
temperature
Bit 5: Monitoring for insufficient
temperature
Bit 6: Reserved
Bit 7: Monitoring of encoder
input frequency
Bit 8: Adjust mechanical offset
by gradually increasing the kV
factor

January 2015 6.22 Configuring the controller unit and drive motors 1665
Function CC 61xx CC 424
MP_motTypeOfFieldAdjust Same as CC 424 Determining the field angle for
unaligned encoders
MP_plcCount Same as CC 424 PLC cycle time [ms]
MP_ipoCycle Same as CC 424 MP_ipoCycle omitted, path
interpolation fixed at 3 ms (does
not influence the position
controller cycle)
Display in internal oscilloscope Same as CC 424 Effective values
and in TNCopt

6.22.8 Configuring the drive motor

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motName 401301
motEncType 401311
motDir 401312
motStr 401313
System
Paths
CfgTablePath
MOTOR_OEM
path MOTOR_OEM.102501

The parameter object CfgServoMotor is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

Configure the servo motor in the CfgServoMotor parameter object. You can
use the entries in the motor table for the parameters MP_motEncType,
MP_motDir and MP_motStr, or use the three parameters to overwrite the
values in the motor table.
The motor table currently active for the TNC 640 is opened when making an
entry in MP_motName. Select the name of the motor.
Along with the motor table supplied by HEIDENHAIN, the OEM has the
possibility of saving his own motor table on the TNC 640 as well. The soft keys
OEM and SYS are used to open the respective tables in the table editor. The
SYS motor table is write-protected.
In the dialog window for selecting a motor, all entries from the OEM motor
table have an asterisk (*) in the OEM column to identify them as entries made
by the OEM.

1666 HEIDENHAIN Technical Manual TNC 640


You must configure the path to the OEM motor table. In the "Settings in the
configuration editor" table at the top of the page you will find the MP_path
parameter.
 Specify the path to the OEM motor table under the key name
MOTOR_OEM in the MP_path parameter.

MP_motName
Name of the motor
(compare to iTNC 530: MP2200.x)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Name of the motor
Choose the name from the motor table.
Default: –
Access: LEVEL3
Reaction: REF
Enter the type of encoder in MP_motEncType. If "off" is entered, then the
type of encoder entered in the motor table is used.

MP_motEncType
Type of speed encoder
(compare to iTNC 530: MP2206.x)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: From Table
The encoder type entered in the motor table is valid
ROTATING_WITH_Z1
Incremental rotary encoder with Z1 track
ROTATING_ENDAT_ADJUSTED
Aligned absolute rotary encoder
LINEAR_ENDAT
Absolute linear encoder
LINEAR_INCREMENTAL
Incremental linear encoder
ROTATING_ENDAT_NOT_ADJUSTED
Unaligned absolute rotary encoder
ROTATING_WITHOUT_Z1
Incremental rotary encoder without Z1 track
ROT_DIST_CODED_NOT_ADJUSTED
Unaligned incremental rotary encoder with distance-coded
reference marks
LIN_DIST_CODED_NOT_ADJUSTED
Unaligned linear encoder with distance-coded reference marks
DIG_ENDAT_2_2_ADJUSTED
Purely digital and aligned EnDat 2.2 rotary encoder
DIG_ENDAT_2_2_NOT_ADJUSTED
Purely digital and unaligned EnDat 2.2 rotary encoder
LIN_ENDAT_2_2
Purely digital EnDat 2.2 linear encoder
Default: off, optional parameter
Access: LEVEL3
Reaction: REF

January 2015 6.22 Configuring the controller unit and drive motors 1667
You define the counting direction of the encoder in MP_motDir. If "off" is
entered, then the counting direction entered in the motor table is used.

MP_motDir
Counting direction of the motor encoder
(compare to iTNC 530: MP2204.x)
Available from NCK software version: 597110-02.
Format: Selection menu
Options: Off
The counting direction entered in the motor table is valid.
Positive
Positive counting direction.
Negative
Negative counting direction.
Default: Off, optional parameter
Access: LEVEL3
Reaction: REF
Use the parameter MP_motStr to define the line count of the motor encoder.
If "0" is entered, then the line count entered in the motor table is used.

MP_motStr
Line count of the motor encoder
(compare to iTNC 530: MP2202.x)
Available from NCK software version: 597110-02.
Format: Number
Input: 0 to 999 999
0: The line count entered in the motor table is used.
> 0: Line count of the motor encoder
Default: 0, optional parameter
Access: LEVEL3
Reaction: REF

1668 HEIDENHAIN Technical Manual TNC 640


6.22.9 Configuring HEIDENHAIN drive components using the electronic ID label
HEIDENHAIN supply modules and inverters of type D, as well as
HEIDENHAIN synchronous motors with absolute encoders which have an
EnDat interface, are equipped with an electronic ID label.
The device name, the ID number and the serial number are stored in this ID
label. The TNC 640 is capable of detecting these devices automatically at start-
up.
If at start-up, the TNC 640 detects a deviation between the connected device
and the configuration, a dialog window appears:

 Select ACCEPT to automatically add the displayed component to the


corresponding machine parameters.
 Select KEEP to leave the current configuration unchanged.
 Select CANCEL to cancel the evaluation of electronic ID labels.
During every further control restart, the TNC 640 checks whether the
connected units with electronic ID label match the following configuration
entires:
 CfgSupplyModule/name
 CfgPowerStage/ampName
 CfgServoMotor/motName

January 2015 6.22 Configuring the controller unit and drive motors 1669
Machine In MP_plugAndPlay, you can activate or deactivate the device configuration
parameters via electronic ID labels either globally or for individual devices.

Settings in the configuration editor MP number


System
CfgHardware
plugAndPlay 100109
CfgSupplyModule
plugAndPlay 117200
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
plugAndPlay 401212
CfgServoMotor
plugAndPlay 401330

Activate / deactivate the device configuration globally via electronic ID labels:


 Specify this setting in CfgHardware/plugAndPlay

MP_plugAndPlay
Evaluation of the electronic ID labels
Available from NCK software version: 597110-09.
Format: Selection menu
Options: Active
Evaluation of the electronic ID labels is active.
Inactive
Evaluation of the electronic ID labels is inactive.
Default: Active
Access: LEVEL3
Reaction: RUN
Deactivate the device configuration via electronic ID labels for individual
devices:
 Use the following machine parameters to specify the settings:
CfgSupplyModule/plugAndPlay
CfgPowerStage/plugAndPlay
CfgServoMotor/plugAndPlay

MP_plugAndPlay
Evaluation of the electronic ID label
Available from NCK software version: 597110-09.
Format: Selection menu
Options: Inactive
Evaluation of the electronic ID label is inactive.
Global setting
The setting from CfgHardware/plugAndPlay is active.
Default: Global setting
Access: LEVEL3
Reaction: RUN

1670 HEIDENHAIN Technical Manual TNC 640


6.22.10 Field orientation

General If a linear, torque or synchronous motor is used with an incremental encoder


information without a Z1 track or an unaligned encoder with EnDat interface, there is no
assignment between the encoder and the rotor magnets. The field angle must
be determined before this motor can be moved.
The TNC 640 uses the "field orientation" function to determine the field angle
for the motors listed above. The assignment between the encoder and the
rotor magnet (field angle) is determined and stored.

Note

The "field orientation" function can be performed only if the current


controller is already adjusted!

Regarding the motor.mot motor table, the field orientation must be performed
for the following drives:
 Linear motor with absolute encoder with EnDat interface (SYS = 3)
 Synchronous or torque motor with unaligned rotary encoder with EnDat
interface (SYS = 5)
 Synchronous or torque motor with incremental rotary encoder without Z1
track (SYS = 6); one reference mark per revolution
 Synchronous or torque motor with incremental rotary encoder with
distance-coded reference marks (SYS = 7)
 Linear motor with incremental linear encoder with distance-coded reference
marks (SYS = 8)
 Synchronous or torque motor with unaligned rotary encoder with EnDat 2.2
interface (SYS = 10)

Absolute encoder with EnDat interface Incremental encoders


As soon as the absolute position of the encoder After switching on the drive, the motor orients
has been read, the absolute position and itself (rough orientation; the message Finding
determined field angle are assigned to each other. the field angle appears). The drive is ready for
The field angle is assigned to the zero position of operation after this procedure. The field angle is
the encoder. determined and assigned as soon as the
reference mark/s is/are traversed during the first
motor motion.

Danger

If the speed encoder is exchanged, the Field Orientation function must be


rerun.

January 2015 6.22 Configuring the controller unit and drive motors 1671
General  An absolute encoder with EnDat interface should be used, since the
information about absolute position value is available directly after switch-on, and the field
encoders for direct angle can be assigned immediately. This means that the motor can be
drives controlled immediately.
 The encoder should have a high line count. This leads to better
controllability.
 With incremental encoders the motor must first be moved a "minimum"
distance in order to determine a field angle with which the motor can be
moved until the reference mark. Only after the reference mark has been
traversed can the field angle determined during commissioning be
assigned.
 If excessive clamping of the axis prevents the "minimum" motion for
determining the field angle, then no field angle can be determined and the
axis cannot be controlled. In this case the clamping must be undone for the
field angle to be determined. If this is not possible, because the axis would
fall down, then an absolute encoder with EnDat interface must be used.

Field orientation As soon as the absolute position of the encoder has been read, the absolute
with absolute position and determined field angle are assigned to each other.
encoder (EnDat) The field angle is assigned to the zero position of the encoder.

Field orientation via After switching on the TNC 640, the motor orients itself (rough orientation) via
encoder with Z1 the Z1 track of the encoder. The drive is ready for operation after this
track procedure. The field angle is determined and assigned as soon as the
reference mark is traversed during the first motor motion.

Field orientation via There are various options for determining the field angle:
the TNC 640
 The field angle is determined automatically when the drive is switched on,
without any motion of the motor. This method is set via
MP_motTypeOfFieldAdjust. The field angle is stored after it has been
determined. This field angle is used when the motor is switched on again.
An adjustment of the field angle via the special operating mode Current
Controller and Field Angle Adjustment (code number 94655) is not
necessary.
 By adjusting the field angle once via the special operating mode Current
Controller and Field Angle Adjustment (code number 94655) during
commissioning of the motor. The motor moves during the adjustment, and
the field angle is determined and stored during this motion. This field angle
is used when the motor is switched on again. A plausibility test is run during
the field angle determination.
Attention

This method cannot be used for hanging axes (with 100 % weight
compensation), since the brakes are not applied and the monitoring
functions are deactivated!

Note

The "field orientation" function can be performed only if the current


controller is already adjusted!

1672 HEIDENHAIN Technical Manual TNC 640


Note

For synchronous spindles, the field angle should be determined via the
code number, since this is a more exact determination.

Danger

 For determining the field angle with hanging axes (or braked axes that
could move independently), an encoder with absolute value or with Z1
track should be used.
 If the speed encoder is exchanged, the Field Orientation function must
be rerun.

January 2015 6.22 Configuring the controller unit and drive motors 1673
6.22.11 Field angle determination on the CC 61xx

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
motTypeOfFieldAdjust 401314
motFieldAdjustMove 401315
motPhiRef 401316
motEncSerialNumber 401317
CfgAxisHardware
checkPhiFieldRef 400016

The parameter object CfgServoMotor is not required for:


 Virtual axes (MP_axisMode = Virtual)
 Axes that are for display only (MP_axisMode = Display)
 Analog axes (MP_axisHw = Analog)

 Select the method for field angle determination in


MP_motFieldAdjustMove.
When commissioning new drive systems for the first time, HEIDENHAIN
recommends using MP_motFieldAdjustMove = mode 2 (e.g. for machine
prototypes), because plausibility tests are implemented here. After successful
commissioning, MP_motFieldAdjustMove = mode 0 can be used to save
time (such as for series production of the machine).
In certain cases it can be of advantage to determine the field angle via
MP_motFieldAdjustMove = mode 3. This mode can be used if
 there are no brakes,
 in the Commissioning Current Controller mode of operation, where the
brakes are always open,
 the user ensures that the brakes can be opened manually or with the PLC.

1674 HEIDENHAIN Technical Manual TNC 640


MP_motFieldAdjustMove
Field-angle adjustment mode
(compare to iTNC 530: MP2254.x)
Available from NCK software version: 597110-05.
Format: Selection menu
Options: Possibilities of field angle adjustment:
mode 0
Rough determination of the field angle during operation
(An adjustment of the field angle via the special operating mode
Current Controller and Field Angle Adjustment (MOD code
number 94655) is not necessary.)
Field angle is determined for a motor at standstill. No plausibility
tests. Use parameter "MP_motTypeOfFieldAdjust" to specify
the method for rough determination of the field angle.
mode 1
Only on CC 422.
Precise determination of the field angle via soft key. Use only
for spindles or motors without limit switches!
Do not use for hanging axes! The field angle is determined for
a motor during motion.
mode 2
Only with CC 424, CC 6xx.
Precise determination of the field angle via MOD code number
94655. The field angle is determined for a motor during motion.
Caution: No position monitoring (following error or software
limit switch)! Recommended for horizontal axes or hanging
axes with full weight compensation.
mode 3
Like mode 2. However, the drive does not have to be enabled
via the PLC.
Caution: Note the safety precautions on the following pages!
Default: mode 0, optional parameter
Access: LEVEL3
Reaction: RUN

Note

For synchronous spindles the field angle should be determined via the
MOD code number 94655 (MP_motFieldAdjustMove = mode 2) because
this method of determination is more precise.

January 2015 6.22 Configuring the controller unit and drive motors 1675
Plausibility test During plausibility testing, some machine parameters and part of the wiring
are checked.
 Encoder line count
 Number of pole pairs
 Rotational direction of the electrical field
 Traverse distance per electrical revolution

Note

Determination of the field angle with plausibility testing is recommended


for initial setup, new designs, and other similar situations.

The following messages can appear during the plausibility test:


 8630 Field orient. successful
Indicates that the field angle was successfully determined and stored in
MP_motPhiRef.
 8B10 Wrong traverse direction
Indicates that the rotational direction of the electrical field does not match
the counting direction of the encoder.
Error fix: Change the entry in the machine parameter MP_motDir.
 8B20 Error field orientation
Indicates that no usable measurement results could be determined. One
common reason for this is an incorrect parameterization of the encoder. A
further cause could be that the motor is moving against a resistance (e.g.
brake is still active, bellows, limit stop) or that the mechanics are too stiff.

1676 HEIDENHAIN Technical Manual TNC 640


Overview of the
field orientation

=0 MP_motField = mode 0
MP_motPhiRef Drive ON
AdjustfMove
?
?

≠0 = mode 2 By code number

Incremental encoder with Incremental encoder


distance-coded reference with one reference
marks mark
Encoder
?

Traverse the Absolute Traverse the


reference encoder with reference
marks EnDat mark
interface

Determination of field
angle with motion (&
plausibility test),
automatic entry in
MP_motPhiRef

Determination of
field angle for
Incremental absolute and
encoder incremental
Encoder Drive ON encoders as per
? method in
MP_motTypeOf
Absolute
encoder with
EnDat
interface Determination of field
angle as per method in If necessary,
Associate field angle MP_motTypeOfFieldAdj controlled motion
from MP_motPhiRef ust, in order to enable over reference
controlled motions

Automatic entry
Controlled motion over of the field angle
reference mark in MP_motPhiRef

January 2015 6.22 Configuring the controller unit and drive motors 1677
Determining the A distinction must be made if you intend to determine the field angle without
field angle without motor motion (MP_motFieldAdjustfMove = mode 0):
motor motion
 Commissioning: No field angle has been determined yet
(MP_motPhiRef = 0)
 A field angle has already been determined (MP_motPhiRef ≠ 0).
The field angle is determined automatically after switching on the drive. This
process lasts approximately 4 to 6 seconds (the PLC program must not
rescind the drive enabling during this time).
If the power module is not active before the determination of the field angle
begins, the error message 8B40 No drive release <axis> appears. If the
power module switches off during the determination, 8B50 Axis module
<axis> not ready appears.

Field angle not yet determined (MP_motPhiRef = 0):


If the field angle on this machine was not yet determined after the control was
started (MP_motPhiRef = 0), the determination starts automatically. The
method used to determine the field angle is set in
MP_motTypeOfFieldAdjust. The determined field angle is saved in
MP_motPhiRef.

Field angle already determined (MP_motPhiRef ≠ 0):


If the field angle on this machine was already determined after the control has
been switching on (MP_motPhiRef ≠ 0), two cases must be distinguished:
 If an absolute encoder with an EnDat interface is used:
The absolute position of the encoder is read immediately after starting the
control. The field angle from MP_motPhiRef is assigned to this position.
Therefore, the first motor motion already occurs with the determined field
angle.
 If an incremental encoder is used:
Immediately after starting the control and switching on the control voltage,
a field angle is determined depending on MP_motTypeOfFieldAdjust. This
field angle can then be used to traverse the motor over the reference mark.
After traversing the reference mark, the field angle from MP_motPhiRef is
assigned. The subsequent motor motions utilize the field angle from
MP_motPhiRef.

1678 HEIDENHAIN Technical Manual TNC 640


Methods for There are three methods for determining the field angle without motor motion
determining the (rough determination):
field angle
 Method 2: (MP_motFieldAdjustMove = mode 2)
Current pulses are output with the brakes applied, and the absolute rotor
position is determined from the reaction. A "minimum" movement of the
motor must be possible when the brakes are applied.
 Method 3: (MP_motFieldAdjustMove = mode 3)
Functions in the same manner as Method 2, but with the difference that the
motor brakes are not applied. Therefore, this method is not suitable for
hanging axes. However, this method can lead to more exact results than
Method 2, so it should be used for synchronous spindles. Minimal spindle
movements can occur during field angle determination.
 Method 4: (MP_motFieldAdjustMove = mode 4)
This new method was introduced for determining the field angle so that the
relationship between the position of the incremental encoder and the
position of the rotor magnets can be established even if there is
considerable noise in the encoder signals.
Use this method only in consultation with HEIDENHAIN!
 In MP_motTypeOfFieldAdjust select the method to be used for
determining the absolute rotor position.

MP_motTypeOfFieldAdjust
Rough determination of the field angle without motor motion
(compare to iTNC 530: MP2250)
Available from NCK software version: 597110-02.
Format: Selection menu
Options: If a precise value is available for the field-angle orientation, the
rough value is used until the axis has been referenced.
Methods of rough determination of the field angle:
mode 0
Recommended for all motors. Do not use for hanging axes!
mode 1
Reserved, do not use!
mode 2
Field angle determination with brake applied. A "minimum"
movement of the motor must be possible when the brakes are
applied.
mode 3
Like "mode 2" with the difference that the brake is opened. Not
suitable for hanging axes!
mode 4
Reserved. Use only in consultation with HEIDENHAIN.
(For very noisy encoder signals.)
Default: mode 0, optional parameter
Access: LEVEL3
Reaction: RUN

Note

Standstill monitoring is active while determining the field angle. If it


responds for motors without motor brakes, increase the threshold in
MP_checkPosStandstill. Afterwards, reset MP_checkPosStandstill to
the original value.

January 2015 6.22 Configuring the controller unit and drive motors 1679
Determining the With this field angle determination method (MP_motFieldAdjustMove =
field angle with mode 2 or mode 3), the motor moves in a certain direction. It should be
motor motion approximately halfway in the distance traversed before the field angle is
determined.
Axes with linear/torque motors can be slid "by hand" if the brakes are not
applied.
While the field angle is being found, the speed controller and position
controller are open and the drive controller is active. This means that the motor
is moved (approx. 2 pole pairs) and the brake must be open until the field angle
is determined.

Danger

Hanging axes need 100 % weight compensation.


Please contact HEIDENHAIN if this is not the case.

Attention

Limit switches are ignored!


If axes move into an illegal area, press the emergency stop button!

Note

When using incremental encoders with distance-coded reference marks,


MP_posEncoderRefDist (nominal increment between two fixed reference
marks) must be set correctly.

MP_motFieldAdjustMove = mode 2:
The PLC commissioning program, whose name and path are entered in the
parameter MP_pwmPgm, must ensure that the inverters are ready after
"Switch on external dc voltage," but that the motor brakes are opened only
while the field angle is being determined. Alternately, the motor brakes can be
opened manually for the duration of the field angle determination.

MP_motFieldAdjustMove = mode 3:
Under certain conditions, determination of a field angle with the help of the
PLC is not necessary or desired. Here the motor is moved immediately after
the FIELD ORIENT. key is pressed, and the field angle is determined. This
mode can be used if
 there are no brakes,
 in the Current Controller and Field Angle Adjustment special mode of
operation (code number 94655), the brakes are always open,
 the user ensures that the brakes can be opened manually or through the
PLC.

1680 HEIDENHAIN Technical Manual TNC 640


Before determining the field angle (code number 94655 not entered yet) the
inverter must be in the following mode of operation:
 Green "READY" LED on
 Red "SH1" LED off
 Red "SH2" LED on (drive controller not ready, brakes closed)
As soon as the drive enable comes from the PLC, the Finding field angle
message appears, otherwise 8B40 No drive release appears.
The motor moves and the field angle is determined. Limit switches are not
taken into account.
In order to avoid a possible error message resulting from standstill monitoring,
the threshold for standstill monitoring during field orientation can be
configured in MP_chkPosHoldFieldAdj.

MP_chkPosHoldFieldAdj
Standstill monitoring during field-angle adjustment
Available from NCK software version: 597110-09.
Format: Number
Input: 0 to 100 000 [mm] or [°]
0: Monitoring is switched off
Default: 0
Access: LEVEL3
Reaction: RUN

 Switch on the TNC 640.


 Do not acknowledge the Power interrupted message. Enter the code
number 94655.
 The PLC must
• switch the drive on/off
• release and lock the brakes
The motor moves back and forth. The field angle is determined for the
reference mark or datum, and is stored automatically. The Finding field
angle progress bar appears. Then one of the following messages appears:
 8630 Field orient. successful indicates that the field angle was successfully
determined and stored in MP_motPhiRef.
 8B10 Wrong traverse direction indicates that the rotational direction of the
electrical field does not match the counting direction of the encoder.
Error fix: Change the entry in the machine parameter MP_motDir.
 8B20 Error field orientation indicates that no usable measuring results
could be determined. One common reason for this is an incorrect
parameterization of the encoder. A further cause could be that the motor is
moving against a resistance (e.g. brake is still active, bellows, limit stop) or
that the mechanics are too stiff.
The TNC 640 carries out a reset. If the message 8630 Field orient.
successful appears, then the field angle was assigned and is available.

January 2015 6.22 Configuring the controller unit and drive motors 1681
PLC modules Module 9065 Status of the commissioning function
Module 9065 is used to interrogate status information of commissioning
functions dealing with the determination of the field angle, and with the
commissioning of the current controller of an axis.
Conditions for the determination of the field angle:
 Synchronous, linear and torque motors determine the field angle each time
the control is started if no EnDat or Z1-track encoders are used. For the
duration of determining the field angle (about 5 to 7 seconds), <Mode> 1
returns bit-encoded the axes for which field-angle determination is active.
 Module 9162 reports that the speed controller is not ready while the field
angle is being determined. A PLC error message can be suppressed if
determining is active.
Conditions for commissioning the current controller:
 If no commissioning function is active the value -1 is returned.
Call:
PS B/W/D/K <Mode>
Determining the field angle:
0: Axes for which the field angle is being determined with a
commissioning aid
1: Axes for which automatic determination of the field angle
is active
Commissioning the current controller:
2: Axes for which the commissioning of the current
controller is active
3: Interrogation whether the spindle is in delta operation
during the commissioning of the current controller (bit
0 = 1)
CM 9065
PL B/W/D <Axes bit-encoded>
Error code:

Marker Value Meaning


NN_GenApiModule 0 Axes have been determined
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode (W1022)
NN_GenApiModule 1 Invalid value for mode
ErrorCode (W1022)

1682 HEIDENHAIN Technical Manual TNC 640


Module 9470 Status request of special operating modes and special
functions of an axis
Module 9470 is used to query the status and parameters of various special
operating modes and special functions of an axis.
Constraints:
 For a spindle you must indicate the number of the associated axis.
Call:
PS B/W/D/K <Axis index>
PS B/W/D/K <Desired axis information>
1: Query the currently active special operating mode
2: Query the currently active special function
3: Query the parameter set to be selected for the special
operating mode
4: Query the connection to be selected for the special
operating mode
CM 9470
PL B/W/D <Axis information>
for 1: 0: No special operating mode active
1: Special operating mode "Adjusting the current
controller" active
2: Special operating mode "Finding the field angle"
active
for 2: 0: No special operating mode active
2: Special function "Finding the field angle" active
for 3: Index of the parameter set to be selected
for 4: 0: Wye connection or no switchover necessary
1: Delta connection
Error code:

Marker Value Meaning


NN_GenApiModule 0 Axis information was ascertained
Error (M4203) 1 Interrogation not possible, error code in
NN_GenApiModuleErrorCode (W1022)
NN_GenApiModule 1 The value given for <Desired axis
ErrorCode (W1022) information> is outside the value range
2 The axis given does not exist

January 2015 6.22 Configuring the controller unit and drive motors 1683
Saving the The determined field angle is automatically entered in MP_motPhiRef.
determined field
For safety reasons, either the serial number of the encoder (only for EnDat
angle
interface) or a unique control ID is additionally entered as identification in
MP_motEncSerialNumber.
The following error message appears if the current identification does not
match the entry in MP_motEncSerialNumber:
230-0420 No field angle for drive <axis>
 When using an encoder with an EnDat interface, the field angle must be
determined anew in any case, since the encoder does not match the field
angle from MP_motPhiRef.
 If an incremental encoder is used:
The field angle from MP_motPhiRef and the new identification (SIK serial
number) for MP_motEncSerialNumber can only be assumed after it has
been ensured that the same drive is meant (e.g. after changing controls).

Danger

In all other cases the field angle must be determined anew, since otherwise
uncontrolled drive motions could occur!

Note

You can force a new field angle determination by entering MP_motPhiRef


= 0 (for example, after exchanging a motor or encoder).

MP_motPhiRef
Determined field angle
(compare to iTNC 530: MP2256.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 2 147 483 647
Automatic determination and entry by interpolator in the
operating mode for determining the field angle.
0: Field angle does not need to be determined, or has not been
determined
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_motEncSerialNumber
Control or encoder identification for the field angle from
MP_motPhiRef
(compare to iTNC 530: MP2257.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0: Field angle does not need to be determined, or has not been
determined
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

1684 HEIDENHAIN Technical Manual TNC 640


Definition of the The following applies to the determined field angle, which is entered in
field angle MP_motPhiRef:
The motor is moved with external power in the positive direction (when
viewing the shaft, the shaft rotates clockwise). The voltages U1-Y (phase 1 to
star point) and U2-Y (phase 2 to star point) are measured. The positive peak
value of U1-Y corresponds to a field angle of 90°.
The field angle at the reference mark is saved in increments in MP_motPhiRef.
An increment is formed from <line count> · <interpolation factor>.
Therefore:
MP_motPhiRef = (<field angle at reference mark> · <line count> · 1024) /
360°
In the example below, the reference mark is at the field angle 90°, i.e.
MP_motPhiRef = (90° · 2048 · 1024) / 360° = 524288.
On a "standard" synchronous motor (with aligned speed encoder), the
reference mark is at the field angle 0°. If the field angle were to be determined
for this motor, the result would be MP_motPhiRef = approx. 2097152.

U1-Y U2-Y

FA
90 120 180 270 360

FA2048
524 288 1 048 576 1 572 864 2 097 152

Reference mark

 U1-Y: Motor voltage between phase 1 and star point


 U2-Y: Motor voltage between phase 2 and star point
 FA: Field angle in degrees
 FA2048: Field angle in increments for an encoder with 2048 lines and
1024-fold interpolation (2048 · 1024 = 2 097 152)

January 2015 6.22 Configuring the controller unit and drive motors 1685
6.22.12 Reading or setting the field angle via the PLC
For axes without encoders with Z1 tracks, which cannot be moved when
switched off (e.g. due to Hirth coupling), or if it has been ensured that they
cannot moved when switched off, Module 9149 can be used to read out the
field angle after positioning. This axis-specific field angle must be stored via
the PLC in non-volatile memory.
It is also important that the saved field angle is cleared (set to 0) before each
positioning, so that the axis (motor) is not started with an incorrect field angle
after a power failure. This way an incorrect writing of the field angle is
prevented if a power failure occurs.
The nonvolatile field angle must be set via Module 9149 before the drives of
the affected axis are switched on. This means that it is not necessary to
determine the field angle again.

Danger

Please note the following items when setting/reading the field angle via the
PLC:
 An erroneously set field angle may cause undesired reactions of the
motor that may cause uncontrollability, e.g. traversing in the wrong
direction.
 If the axis position is moved again after the field angle has been read,
then the determined field angle may no longer be used.
 The commutation angle may be set only after you have ensured that the
stored commutation angle corresponds to the current position (e.g. due
to Hirth coupling).
 The module is suitable only for synchronous, torque, or linear motors in
conjunction with nonaligned encoders without EnDat interface.
 The module responds with a value only if the reference mark has been
traversed.
 The commutation angle for an axis can be set only once after the control
is switched on and before the drives are first switched on.

1686 HEIDENHAIN Technical Manual TNC 640


PLC module Module 9149 Set/Read commutation angle
Call:
PS B/W/D/K <Axis index>
n: Index of the axis from CfgAxes/axisList
PS B/W/D/K <Commutation angle in 0.001°>
1 to 720 000
PS B/W/D/K <Mode>
0: Read commutation angle
1: Set commutation angle
CM 9149
PL B/W/D <Error code>
0: No error (commutation angle set/read)
1: Call was not in a submit/spawn job
2: Invalid <mode>
3: Invalid <axis index>
4: Invalid commutation angle
5: Not digital or from a CC422 controlled axis

Error code from controller when mode 0 is active (read


commutation angle):
100: Unknown reference position

Error code from controller when mode 1 is active (set


commutation angle):
200: Invalid motor type (no synchronous or linear motor)
201: Invalid encoder type (no "not-aligned")
202: Invalid commutation angle
203: Commutation angle already set
PL B/W/D <Commutation angle>

Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error (Commutation angle set/read)
1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode 2 Invalid value for <Axis index> parameter
19 Not digital or from a CC422 controlled axis
20 Call not in a submit/spawn job
45 Error code from controller

January 2015 6.22 Configuring the controller unit and drive motors 1687
6.23 Commissioning

6.23.1 Tables for power modules, supply modules and motors


In the configuration editor you select the installed power modules and the
motors:

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
ampName 401201
ampPowerSupplyType 401202
ampBusVoltage 401203
ampAdditionalInfo 401210
CfgServoMotor
motName 401301
motEncType 401311
motDir 401312
motStr 401313
motSupply 401321
motSeriesInduct 401328
motInertia 401329
System
CfgSupplyModule 117200
[Key name of the supply module]
name

Note

HEIDENHAIN recommends defining, if possible, a supply module from the


SUPPLY.SPY table via CfgSupplyModule and MP_motSupply. In this
case, the two parameters MP_ampBusVoltage and
MP_ampPowerSupplyType must not be configured/defined because
otherwise, the error 230-0423 with the additional text
"CfgPowerStage:ampPowerSupplyType must be empty" or
"CfgPowerStage:ampBusVoltage must be empty" will occur.
For reasons of compatibility with earlier systems (which do not have
CfgSupplyModule or MP_motSupply) it is still possible, however, to define
a DC-link voltage Uz (MP_ampBusVoltage) and the power module
model—with or without energy recovery (MP_ampPowerSupplyType). In
this case, both parameters must be configured. If this is not done, the error
230-0423 with the additional text "CfgServoMotor:motSupply is empty" will
be issued.

 Open the parameter set of the desired axis, and move the cursor to the
MP_ampName (power module) or MP_motName (motor) parameter.
 Press the ENT key. The TNC 640 opens the list of power modules or motors.
 Add the configuration object CfgSupplyModule to the machine
configuration.

1688 HEIDENHAIN Technical Manual TNC 640


 Enter a freely chosen key name for the supply module and select the
storage file *.cfg.
 Move the cursor to the MP_name parameter and press ENT. The TNC 640
opens the list of supply modules. Select your power supply module from the
table.
 Open the parameter set of the desired axis, and move the cursor to the
MP_motSupply (CfgServoMotor) parameter.
 In MP_motSupply, enter the key name of the power supply module that
drives this motor. All key names from CfgSupplyModule are available for
selection.

January 2015 6.23 Commissioning 1689


Meaning of the soft keys

Scroll back one page in the list

Scroll forward one page in the list

Confirm selection

Cancellation, do not confirm value

Open OEM motor table in the table editor

Open HEIDENHAIN motor table in the table editor


(write-protected)

Open power module table (inverter.inv) in the table editor


(write-protected)

Open power supply module table (supply.spy) in the table


editor (write-protected)

Copy selected value to clipboard

Paste value from clipboard

In the list of motors, the memory location (OEM or HEIDENHAIN motor table),
the type of motor (synchronous, asynchronous, or linear motor), the operating
mode (wye/delta) and the maximum current are displayed in addition to the
motor designation.
Once you have selected the motor and power module, and have confirmed
this with the ENT key or the OK soft key, the selected models are
automatically entered in MP_motName and MP_ampName for the
respectively open parameter set.
If you use motors or power modules that are not listed in the menus, please
contact HEIDENHAIN.
You can overwrite standard data or add other models to the OEM motor table.
The OEM motor table is stored in the PLC partition:
 PLC:\table\MOTOR_OEM.MOT
To open the OEM motor table, press the OEM soft key in the table editor. In
the list view, the TNC 640 marks all motors from the OEM table with an "*" in
the OEM column.

1690 HEIDENHAIN Technical Manual TNC 640


The data in the HEIDENHAIN motor table and in the inverter.inv power
module table on the SYS partition is write-protected. You can open the tables,
but you cannot edit them.

Note

The power module table of older HEIDENHAIN contouring controls,


MOTOR.AMP, is no longer supported by the TNC 640!

If you use a motor that appears in the motor table, but only the data for the
speed encoders or mass moment of inertia differs, you can overwrite this data
in the motor table with MP_motStr, MP_motDir, MP_motEncType and
MP_motInertia. The motor table is not actually changed. The changes only
take place in the working memory.

Note

The original entry from the motor table is only used if MP_motStr,
MP_motDir, MP_motEncType or MP_motInertia are not in the
configuration.

MP_name
Type of power supply module
Available from NCK software version: 597110-05.
Format: Selection menu
Options: Name of the power supply module from the "supply.spy" power
supply module table (entered automatically by the TNC 640)
Default: –
Access: LEVEL3
Reaction: RESET

MP_motSupply
Key name of the motor's power supply module
Available from NCK software version: 597110-05.
Format: Selection menu
Options: Enter the key name of the power supply module that drives this
motor. All power-supply-module key names defined under
CfgSupplyModule are available for selection.
Default: –, Optional parameter
Access: LEVEL3
Reaction: RUN

MP_ampName
Type of axis/spindle power module
(compare to iTNC 530: MP2100.x)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Name of the power module from the inverter.inv power module
table (entered by the TNC 640)
Default: –
Access: LEVEL3
Reaction: REF

January 2015 6.23 Commissioning 1691


MP_ampAdditionalInfo
Configure the switch position of the current sensor (column "S"
of the inverter.inv power module table). Is required for the D
series of HEIDENHAIN inverters (UM 1xx D) in order to use the
higher currents at the lower PWM frequencies.
Available from NCK software version: 597110-04.
Format: Number (32 bits)
Input: Bit 0 – Configure the switch position of the current sensor in
HEIDENHAIN inverters of the "D" series (UM 1xx D).
Bit 0 = 0: "S" in inverter.inv table = 0
Bit 0 = 1: "S" in inverter.inv table = 1
Bit 1 - Reserved
Bit 2 - Reserved
Bit 3 - Inverter manufacturer
Bit 3 = 0: Non-HEIDENHAIN inverter
Bit 3 = 1: HEIDENHAIN inverter
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_motName
Motor model
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: Name of the selected motor from the motor table (entered by
the TNC 640)
Default: –
Access: LEVEL3
Reaction: RESET

MP_motDir
Overwrite the "counting direction" of the motor encoder from
the motor table
Available from NCK software version: 597 110-03.
Format: Selection menu
Options: Off
Value from the motor table active
Positive
Positive counting direction
Negative
Negative counting direction
Default: No value, optional parameter (value from motor table in effect)
Access: LEVEL3
Reaction: RESET

1692 HEIDENHAIN Technical Manual TNC 640


MP_motStr
Overwrite "Line count" of the motor encoder from the motor
table
Available from NCK software version: 597 110-03.
Format: Number
Input: 0: No speed encoder (volts-per-hertz control mode)
1 to 999 999
Default: No value, optional parameter (value from motor table in effect)
Access: LEVEL3
Reaction: RESET

MP_motEncType
Overwrite "Type of encoder" from the motor table
Available from NCK software version: 597 110-03.
Format: Selection menu
Options: off
Entry from the motor table active
ROTATING_WITH_Z1
Incremental rotary encoder with Z1 track
ROTATING_ENDAT_ADJUSTED
Absolute rotary encoder with EnDat interface (aligned)
LINEAR_ENDAT
Absolute linear encoder with EnDat interface
LINEAR_INCREMENTAL
Incremental linear encoder
ROTATING_ENDAT_NOT_ADJUSTED
Absolute rotary encoder with EnDat interface (nonaligned)
ROTATING_WITHOUT_Z1
Incremental rotary encoder without Z1 track
ROT_DIST_CODED_NOT_ADJUSTED
Incremental rotary encoder with distance-coded reference
marks (not aligned)
LIN_DIST_CODED_NOT_ADJUSTED
Incremental linear encoder with distance-coded reference
marks (unaligned)
DIG_ENDAT_2_2_ADJUSTED
Absolute rotary encoder with EnDat 2.2 interface (aligned)
DIG_ENDAT_2_2_NOT_ADJUSTED
Absolute rotary encoder with EnDat 2.2 interface (unaligned)
LIN_ENDAT_2_2
Absolute linear encoder with EnDat 2.2 interface
Default: off (value from the motor table active)
Access: LEVEL3
Reaction: RESET

January 2015 6.23 Commissioning 1693


MP_motInertia
Overwrite mass moment of inertia J from the motor table
(compare to iTNC 530: MP2209.x)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 1 [kgm2] with up to 9 decimal places
Default: No value, optional parameter (value from motor table in effect)
Access: LEVEL3
Reaction: RUN

1694 HEIDENHAIN Technical Manual TNC 640


Entries in the power  NAME: Designation of the power supply module
supply module  E-R: Type of power supply module
table: • 0: No regenerative module
(supply.spy)
• 1: Regenerative module
 P-N: Rated power in W
 P-S6-40: Peak power (S6-40) in W
 P-MAX02: Peak power for (0.2 s) in W
 UZ: DC-link voltage in V
 UZ-AN: Ratio of measuring voltage / UZ in V/V
 IZ-AN: Ratio of measuring voltage / IZ in V/A
 STATUS-SIG: Status signals
• Bit#0: AC-FAIL
• Bit#1: POWERFAIL
• Bit#2: TEMP
• Bit#3: READY
• Bit#4: Reserved
• Bit#5: Reserved
• Bit#6: Reserved
• Bit#7: Reserved
 T1:
 P-D: Proportional factor of D controller
 I-D: Integral factor of D controller
 P-Q: Proportional factor of Q controller
 I-Q: Integral factor of Q controller
 FREQ: PWM frequency [Hz]

January 2015 6.23 Commissioning 1695


Entries in the power  NAME: Designation of the power module
module table  PWM: PWM frequency [Hz] at which the power module is operated
(inverter.inv)  S: Switch position of the current sensor. Is required for the D series of
HEIDENHAIN inverters (UM 1xx D) in order to use the higher currents
named above at the lower PWM frequencies.
Input 0 or 1
 I-MAX: Maximum current of the inverter output in [A]
 I-N: Rated current of the inverter output in [A]
 U-IMAX: Current sensor voltage in [V] at I-MAX
 I-N-DC: Permissible continuous current in stationary rotating field or until F-
DC is reached in [A]
 T-DC: Time constant, how long maximum current can be applied to a
stationary synchronous motor in [s]
 F-DC: Lower motor cutoff frequency down to which the motor can be loaded
with I-N-DC [Hz]
 T-AC: Cycle duration for the duty cycle S6-40% [s]
 F-AC: Motor frequency from which I-MAX is permissible in [s]
 T-IGBT: Protection time of the IGBTs in [s]
 R-SENSOR: Resistance of the current sensor. The entries in this column are
maintained by HEIDENHAIN and need not be changed by the machine tool
builder.
 F-Limit: Lower frequency limit
 D-I-MEAS: Method of measured value acquisition by the current sensor
• 0: No digital measured value acquisition
• 1: Measured value of the current sensor in the power module is
transferred via a digital interface to the CC.

Entries in the motor  TYPE: Motor model


table (motor.mot) • UASM = Uncontrolled asynchronous motor (volts-per-hertz control mode)
• SM = synchronous motor
• ASM = asynchronous motor
• LSM = linear motor
 NAME: Designation of the motor
 MODE: Operating mode
 I-N: Rated current in A
 U-N: Rated voltage in V
 N-N: Rated speed in min–1
 F-N: Rated frequency in Hz
 U0: No-load voltage in V
 I0: No-load current in A
 R1: Stator resistance cold in mΩ
 R2: Rotor resistance cold in mΩ
 XStr1: Stator leakage reactance in mΩ
 XStr2: Rotor leakage reactance in mΩ
 XH: Magnetizing reactance in mΩ
 N-XH: Upper speed X-H characteristic in min–1
 N-FS: Threshold rpm for field weakening in min–1
 N-MAX: Maximum speed in min–1
 %-XH: Factor for X-H characteristic

1696 HEIDENHAIN Technical Manual TNC 640


 %-K: Factor for stalling torque reduction
 PZ: Number of pole pairs
 TK: Temperature coefficient in Ω/K
 STR: Line count of the motor encoder
 SYS: Encoder being used
• 0 = No speed encoder (volts-per-hertz control mode)
• 1 = Incremental rotary encoder with Z1 track
• 2 = Absolute rotary encoder with EnDat interface (aligned)
• 3 = Absolute linear encoder with EnDat interface
• 4 = Incremental linear encoder
• 5 = Absolute rotary encoder with EnDat interface (not aligned)
• 6 = Incremental rotary encoder without Z1 track (one reference mark)
• Only CC 424 and CC 61xx:
7 = Incremental rotary encoder with distance-coded reference marks
(not aligned)
• Only CC 424 and CC 61xx:
8 = Incremental linear encoder with distance-coded reference marks
(not aligned)
 DIRECT: Counting direction of the motor encoder
 T-MAX: Maximum temperature in °C
 I-MAX: Maximum current in A
 P-N: Rated power in W
 J: Motor mass moment of inertia in kgm2
 L: Inductance of the series reactor in µH
 T-DC: Thermal time constant for direct current in seconds
 F-DC: Lower thermal limit frequency in Hz
 T-AC: Thermal time constant for alternating current in seconds
 F-AC: Upper thermal limit frequency in Hz; above this frequency, the
maximum current I-MAX applies
 Tth1: Thermal time constant for winding in s
 Rth1: Thermal resistance between winding and lamination in K/W
 Tth2: Thermal time constant for lamination in s
 Rth2: Thermal resistance between lamination and cooling system in K/W
 M0: Stall torque in Nm
 Mmax: Torque at Imax in Nm
 Fpwm: Minimum PWM frequency recommended for the motor
(recommendation; currently not used by the CC software). The current
controller values in the Kp and Ki columns are calculated values and are
based on the entered PWM frequency.
 Kp: Calculated current controller P factor (recommendation; currently not
used by the CC software)
 Ki: Calculated current controller I factor (recommendation; currently not
used by the CC software)
 Ld: Direct inductance in mH
 Lq: Quadrature inductance in mH
 TempSens: In preparation: type of temperature sensor. Enter 0.
 Rfe: In preparation: Resistance of iron of the laminated core. Enter 0.

January 2015 6.23 Commissioning 1697


Series reactor Reasons for using a series reactor:

Asynchronous motor
 Minimum leakage inductance of drive
The total leakage inductance LTotal of the drive is formed from the leakage
inductance of the motor LLeakMotor and the inductance of the series reactor
LReactor
LTotal = LLeakMotor + LReactor, where:
( X Str1 + X Str2 ) ⋅ 1000
L StrMotor = ---------------------------------------------------------------
2 ⋅ π ⋅ fN

• XStr1: Stator leakage reactance (see XStr1 in motor.mot) [mΩ]


• XStr2: Rotor leakage reactance (see XStr2 in motor.mot) [mΩ]
• fN: Rated frequency of the motor (see F-N in motor.mot) [Hz]
• LLeakMotor: Leakage inductance of the motor [µH]
The total leakage inductance LTotal may not fall below a specified minimum
value. This also depends on the PWM frequency fPWM, the magnetizing
current I0 of the motor, and the DC-link voltage UZ, and is calculated as
follows:
for I0 < 26 A:
700 µH ⋅ 5000 Hz ⋅ U Z
L total = ---------------------------------------------------------
f PWM ⋅ 600

for I0 ≥ 26 A:
700 µH ⋅ 5000 Hz ⋅ U Z ⋅ 26 A
L total = --------------------------------------------------------------------------
600 ⋅ I 0 ⋅ f PWM

• LTotal: Total leakage inductance of the drive [µH]


This way the value for the series reactor can be determined as:
LReactor = LTotal - LLeakMotor
If the result is a negative value, HEIDENHAIN does not require the use of a
series reactor. It is possible, however, that there are other reasons for using a
series reactor, such as the motor manufacturer's specifications.
 Impermissible temperature of the bearings
High harmonic losses in the rotor lead to excessively high bearing
temperatures. One possible remedy, besides increasing the PWM frequency,
is the use of a series reactor. Here there is no universally valid formula.
The amount of inductance results from the measurement of the bearing
temperature.
 Limitation of dU/dt
Because of the strain placed on the motor insulation, the motor manufacturer
can prescribe the use of a series reactor. The strain placed on the motor
insulation results from the voltage build-up dU/dt at the inverter output.With
HEIDENHAIN inverters the voltage build-up is
dU/dt = 6000 V/µs.

1698 HEIDENHAIN Technical Manual TNC 640


Synchronous motor
 Limit of current during field weakening operation
In order to ensure that the demagnetization current in the field weakening
range does not exceed a permissible value of IDMax, the total leakage
inductance LTotal = LMotor + LReactor must have the following value:
U 0 n Max UZ
--------- ⋅ ------------------- – ---------
6 3 nN 6
L Ges = 10 ⋅ ----------------------------------------------------------------
π
-
------- ⋅ I ⋅ p ⋅ n Max
30 DMax Z

• U0: No-load voltage of the motor (see U0 in motor.mot) [VeffL-L]


• nN: Rated speed of the motor (see N-N in motor.mot) [min-1]
• nMax: Maximum speed of the motor (see N-MAX in motor.mot) [min-1]
• UZ: DC-link voltage (see MP2190) [V]
• pZ: Number of pole pairs (see PZ in motor.mot)
• IDMax: Maximum demagnetization current [Aeff]
• LTotal: Total leakage inductance of the drive [µH]
• LMotor:Total leakage inductance of the motor [µH]
• IN: Rated current of the motor [Aeff]
The maximum demagnetization current is the no-load current of the motor
during maximum speed, where IDMax ≤ IN.
If the maximum demagnetization current is not known, it can be approximated
by:
IN – I0
I DMax = I 0 + ----------------- ⋅ n Max
nN

• IN: Rated current of the motor [Aeff]


• I0: Continuous standstill current of the motor
(see I0 in motor.mot) [Aeff]
and I0 ≥ IN
 Impermissible temperature of the bearings

January 2015 6.23 Commissioning 1699


High harmonic losses in the rotor lead to excessively high bearing
temperatures. One possible remedy, besides increasing the PWM frequency,
is the use of a series reactor.
Here there is no universally valid formula.
The amount of inductance results from the measurement of the bearing
temperature. Furthermore it must be noted that, especially with synchronous
spindles, the motor manufacturer requires a minimum PWM frequency and
minimum inductance of the series reactor depending on this PWM value.
In this context it is important that the heating of (and possible damage to) the
bearing and/or rotor cannot be detected by monitoring the motor winding
temperature

Note

If required, use the speed-dependent PWM frequency switchover in order


to minimize harmonic loss, see page 1423

 Compliance with the maximum permissible short-circuit current


The short-circuit current IK is formed from:
U0
I K = ------------------------------------------------------------------------------------------------------------------------
3 ⋅ ( X Str1 + X H + 2 ⋅ π ⋅ f N ⋅ L Drossel )

• U0: Mesh no-load voltage (see U0 in motor.mot) [VeffL-L]


• XStr1: Stator leakage reactance (see XStr1 in motor.mot) [Ω]
• XM: Magnetizing reactance (see XH in motor.mot) [Ω]
• fN: Rated frequency of the motor (see F-N in motor.mot) [Hz]
This value may not exceed the maximum current IMax: IK ≤ IMax

1700 HEIDENHAIN Technical Manual TNC 640


Summary: Advantages and disadvantages of the series reactor:
 Advantages
• Reduction of current harmonics
• Reduction of losses in the motor (important for bearing temperature)
• Reduction of the voltage build-up dU/dt at the motor winding
• Reduction of the demagnetization current with synchronous motors in
the field weakening range
• Reduction of the short-circuit current with synchronous motors
 Disadvantages
• Reduction of motor power at the voltage limit (field weakening range)
• Heating of the series reactor
• Space requirement

Note

If a series reactor is installed later, the current controller must be


readjusted.
If a series reactor is used with another inductance than that shown in the
motor table, the inductance value of the series reactor must be entered in
MP_motSeriesInduct.

The series reactor must fulfill the following specifications:


 The calculated inductance is required per phase.
Some manufacturers indicate the mesh inductance (calculated from VeffL-L
and Ieff), rather than the inductance per phase.
 The series reactor must be designed for the requirements of the motor. (IN
at fN and IN(NMax) at fMax must be possible
 The inductance must comply over the motor's operating range

MP_motSeriesInduct
Overwrite inductance of the series reactor in the motor table
(compare to iTNC 530: MP2208.x)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 30 000 [µH] with up to 9 decimal places
Default: No value, optional parameter (value from motor table in effect)
Access: LEVEL3
Reaction: RUN

January 2015 6.23 Commissioning 1701


Determining data The motor data for synchronous motors are entered in the motor table after
for synchronous some conversions using the values from the motor data sheet of the
motors respective manufacturer (here using the example of a SIEMENS motor).

Values in the HEIDENHAIN motor table Values from the motor data sheet
TYPE: SM Permanently excited synchronous motor
NAME: 1FT6044-4AF7 1FT6044-4AF7
MODE: 0
Rated current Data sheet value Irated (100 K)
I-N in [Aeff] winding IN = 2.9 A
I-N: 2.9
Rated voltage Calculation from data sheet values nrated, kE, RStr,
U-N in [Veff] interlinked Irated (100 K), LD:
U-N: 340
2 2
U-N = 3 ⋅ ( Ue + Ur ) + Ux

Ue = (nrated / 1000) ⋅ (kE / √ 3)


Ue = (3000 / 1000) ⋅ (108 / √ 3)
Ue = 187.06 Veff L,N

Ur = RStr ⋅ Irated (100 K)


Ur = 3.05 ⋅ 2.9
Ur = 8.85 Veff L,N

Ux = 2 ⋅ π ⋅ (nrated / 60) ⋅ PZ ⋅ (LD / 1.5) ⋅ Irated (100 K)


Ux = 2 ⋅ π ⋅ (3000 / 60) ⋅ 2 ⋅ (0.016 / 1.5) ⋅ 2.9
Ux = 19.44 Veff L,N

2 2
U-N = 3 ⋅ ( 187,06 8.85) + 19,44
187.06++8,85 19.44

U-N = 341 Veff L,L


Rated speed Data sheet value nrated
N-N in [min–1] N-N = 3000 min–1
N-N: 3000
Rated frequency Calculation from data sheet value nrated
F-N in [Hz] F-N = (n / 60) ⋅ PZ
F-N: 100 F-N = (3000 / 60) ⋅ 2
F-N = 100 Hz
No-load voltage at rated speed Calculation from data sheet value nrated and kEt
U0 in [Veff] interlinked U0 = (nrated / 1000) ⋅ kE
U0: 324 U0 = (3000 / 1000) ⋅ 108
U0 = 324 Veff L,L
No-load current Data sheet value I0 (100 K)
I0 in [Aeff] winding I0 = 3 Aeff
I0: 3
Stator resistance at 20 °C Data sheet value RStr
R1 in [mΩ] at 20° C R1 = 3050 mΩ
R1: 3050

1702 HEIDENHAIN Technical Manual TNC 640


Values in the HEIDENHAIN motor table Values from the motor data sheet
Rotor resistance at 20 °C
R2 in [mΩ] at 20° C
R2: 0
Stator leakage reactance at F-N If nothing given, then zero.
Xstr1 in [mΩ]
Xstr1: 0
Rotor leakage reactance at F-N
Xstr2 in [mΩ]
Xstr2: 0
Magnetizing reactance XH for F-N at rated Calculation from data sheet value LD, nrated
conditions XH = 2 ⋅ π ⋅ (nrated / 60) ⋅ PZ ⋅LD
XH in [mΩ] XH = 2 ⋅ π ⋅ (3000 / 60) ⋅ 2 ⋅0.016
XH: 10052 XH = 10052 mΩ
Desaturation speed
N-XH in [min–1]
N-XH: 0
Rotational speed of beginning field weakening
range
N-FS [min–1]
N-FS: 0
Maximum speed (mechanical) Data sheet value n
N-MAX in [min–1] N-MAX = 7700 min–1
N-MAX: 7700
Saturation factor
%-XH in %
%XH: 100
Stalling torque reduction factor
%-K in %
%-K: 100
No. of pole pairs (half pole no. of motor) PZ From data sheet value or model designation
PZ: 2
Temperature coefficient of the stator winding
TK in 1/K
TK: 0.004
Line count of the speed encoder (STR) From the mounted speed encoder
STR: 2048
Type of encoder Incremental rotary encoder with Z1 track
SYS: 1
Counting direction DIRECT.
DIRECT.: +
Max. temperature of motor at temperature sensor
T-MAX in [°C]
T-MAX: 150
Maximum motor current Data sheet value Imax
I-MAX in [Aeff] winding I-MAX = 7.5 Aeff
I-MAX: 7.5

January 2015 6.23 Commissioning 1703


Values in the HEIDENHAIN motor table Values from the motor data sheet
Rated power Calculation from data sheet value nrated and
P-N in [W] Mrated (100 K)
P-N: 1351 P-N = 2 ⋅ π ⋅ (nrated / 60) ⋅ Mrated
P-N = 2 ⋅ π ⋅ (3000 / 60) ⋅ 4.3
P-N = 1351 W
Motor mass moment of inertia Data sheet value Jmot
J in [kgm2] J = 0.00051 kgm2
J: 0.00051
Inductance of the series reactor
L in [mH]
L: 0
Thermal time constant for direct current Calculation from data sheet value Tth
T-DC in [s] T-DC = Tth ⋅60
T-DC: 2400 T-DC = 40 ⋅60
T-DC = 2400
Lower thermal cutoff frequency
F-DC in [Hz]
F-DC: 0
Thermal time constant for alternating current Calculation from data sheet value Tth
T-AC in [s] T-AC = Tth ⋅60
T-AC: 2400 T-AC = 40 ⋅60
T-AC = 2400
Upper thermal cutoff frequency
F-AC in [Hz]
F-AC: 0

1704 HEIDENHAIN Technical Manual TNC 640


6.23.2 Field orientation
Methods of the TNC 640 for determining the field angle
For a description of field-angle orientation with the TNC 640, see "Field angle
determination on the CC 61xx" on page 1674.

6.23.3 Preparation
Proceed as follows:
 Check the wiring against the grounding diagram.
 Check the control-is-ready signal (See "Emergency stop monitoring" on page
1551).
 Check the EMERGENCY STOP circuit by pressing the EMERGENCY STOP
buttons and the EMERGENCY STOP limit switches.
 Determine the machine configuration using the documentation on hand.
A basic configuration of the machine kinematics should exist before you
start commissioning. Please refer to "Machine kinematics" on page 1186 in
this manual.
The machine configuration must contain a parameter set for every axis. The
machine parameters should be preset with initial values before
commissioning
 Create a PLC program for interfacing the control to the machine (use the
PLC development software PLCdesign). A PLC basic program is available
for the TNC 640. Registered customers can download the current version of
the PLC basic program from the HESIS Web Including Filebase on the
Internet.
HEIDENHAIN recommends the use of the PLC basic program
 Ensure that all axis drives are enabled by the PLC. Use the OLM, for
example, (See "Actual status 1 of the axes (Ipo Act State 1)" on page 1811)
to check this before commissioning the machine.
 Before commissioning the machine, get familiar with the machine itself and
the mechanical data of the individual axes
 Ensure that the axes are located at noncritical positions and that they can be
moved safely during adjustment

DC-link voltage The TNC 640 uses the DC-link voltage to calculate the maximum motor
voltage.
 Define a power supply module from the SUPPLY.SPY table via
CfgSupplyModule and MP_motSupply. The TNC 640 reads the value of
the DC-link voltage from the table. See "Tables for power modules, supply
modules and motors" on page 1688.
 If CfgSupplyModule and MP_motSupply are not configured:
Enter in MP_ampBusVoltage the DC-link voltage at the power module.

January 2015 6.23 Commissioning 1705


MP_ampBusVoltage
DC-link voltage Uz (only configure if no supply module table has
been defined!)
(compare to iTNC 530: MP2190.x)
Available from NCK software version: 597110-03.
Format: Number
Input: DC-link voltage Uz in [V]
(0 to 3 000 [V] with up to 9 decimal places)
Regenerative inverter: 650 [V]
Non-regenerative inverter: 565 [V]
Default: 650 [V]
Access: LEVEL3
Reaction: RUN

Module 9167 Monitoring of DC-link voltage


With this module you can switch the DC-link voltage monitoring for powerfail
(UZ <approx. 385 V or 410 V) on and off.
If you don’t call the module during the first PLC cycle, the supply voltage
monitoring is automatically started after the first PLC cycle.
Call:
PS B/W/D/K <Command code>
0: DC-link voltage monitoring for >385 V– off
1: DC-link voltage monitoring for >385 V– on
CM 9167
PL B/W/D <Error code>
0: Command executed
–1: Transferred parameter invalid
Error code:

Marker Value Meaning


NN_GenApiModule 0 DC-link voltage monitoring on or off
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Transferred parameter invalid
ErrorCode

1706 HEIDENHAIN Technical Manual TNC 640


Power stage model  Define a power supply module from the SUPPLY.SPY table via
CfgSupplyModule and MP_motSupply. The TNC 640 reads the power
stage model from the table. See "Tables for power modules, supply
modules and motors" on page 1688..
 If CfgSupplyModule and MP_motSupply are not configured:
Define with the MP_ampPowerSupplyType parameter whether you are
using a power supply module with or without power recovery:

MP_ampPowerSupplyType
Power module with or without energy recovery (only define if
no supply module table has been defined!)
Available from NCK software version: 597110-03.
Format: Selection menu
Options: without energy recovery
Power module without energy recovery
with energy recovery
Power module with energy recovery
Default: without energy recovery
Access: LEVEL3
Reaction: REF

Preliminary  Enter the following temporary input values when you begin commissioning:
input values

Machine parameters in the configuration editor and Meaning


preliminary input value
System
CfgFilter
defaultPosition
shape: Triangle Type of nominal position value filter
frequency: 40 Frequency of the position filter
defaultCutterLoc: Deactivated CLP filter: Deactivated
(delete from configuration)
Channels
ChannelSettings
CH_NC
CfgLaPath
minPathFeed: 0 Minimum feed rate on the path
minCornerFeed: 0 Minimum feed rate at corners
maxPathJerk: 5 Maximum jerk on the path
maxG1Feed: 99 999 Max. machining feed rate
pathTolerance: 0.01 Tolerance for contour transitions
maxPathYank: 1000000 Maximum yank on the path

January 2015 6.23 Commissioning 1707


Machine parameters in the configuration editor and Meaning
preliminary input value
Axes
ParameterSets
[Key name of the parameter set] Parameter set of axis
CfgAxisHardware
signCorrActualVal: off Reverse counting dir. of act. value
signCorrNominalVal: off Reverse counting dir. of nom. value
CfgPosControl
kvFactor: 15 kv factor
servoLagMin1: 20 Following error limit
servoLagMax1: 20 Following error limit
servoLagMin2: 20 Following error limit
servoLagMax2: 20 Following error limit
feedForwardFactor: 1 100 % feedforward
ctrlOutputLimit: 1000 Control variable limit for pos. ctrl.
CfgFeedLimits
maxAcceleration: 0.5 Max. permissible acceleration
CfgReferencing
refType: None No reference mark evaluation
CfgControllerAuxil
driveOffLagMonitor: off Following-error monitoring
checkPosStandstill: 2 Standstill monitoring
CfgEncoderMonitor
checkAbsolutPos: off Monitoring of distance code
checkSignalLevel: on Monitoring the encoder amplitude
movementThreshold: 0 Movement monitoring threshold
CfgControllerTol
posTolerance: 0.01 Positioning window
CfgPositionFilter
axisPosition: Deactivated Axis-specific position filter
axisCutterLoc: Deactivated Axis-specific CLP filter
(Delete the parameters from the
configuration)

1708 HEIDENHAIN Technical Manual TNC 640


Machine parameters in the configuration editor and Meaning
preliminary input value
Axes
ParameterSets
[Key name of the parameter set] Parameter set of axis
CfgSpeedControl
vCtrlPropGain: 0.5 Proportional factor of speed controller
vCtrlIntGain: 20 Integral factor of speed controllerLimitation
vCtrlIntTime: 0 of integral factor
vCtrlDiffGain: 0 Derivative factor of speed controller
vCtrlFiltLowPassT: 0 PT2 element of speed controller
vCtrlFiltDamping[1 to 6]: 0 Band-rejection for attenuation, filters 1 to 6
vCtrlFiltFreq[1 to 6]: 0 Band-rejection for center frequency, filters
vCtrlFiltType[1 to 6]: 0 1 to 6
CfgCurrentControl Type of filter
iCtrlPropGain: 0
iCtrlIntGain: 0 Proportional factor of current controller
CfgControllerComp Integral factor of current controller
compFriction0: 0
compFrictionT1: 0 Friction compensation, low speed
compFrictionT2: 0 Delay of friction compensation
compFrictionNS: 0 Delay of stick-slip friction compensation
compCurrentOffset: 0 Friction compensation at rated speed
compAcc: 0 Holding current
compIpcT1: 0 Acceleration feedforward control
compIpcT2: 0 IPC time constant T1
compIpcJerkFact: 0 IPC time constant T2
Following error in the jerk phase

January 2015 6.23 Commissioning 1709


6.23.4 Commissioning of digital axes

Overview:
Commissioning

Current controller
P/I
Page 1711

Speed controller Field angle


No Torque/ Yes
stability adjustment determination
1713 linear motor? Page 1674

Speed controller Speed controller


frequency frequency
determination determination

Speed controller Speed controller


step adjustment (AUTO adjustment)
Page 1715 Kp/Kv/Ki
(see TNCopt
User’s Manual)

Feedforward
adjustment

Feedforward
adjustment
IPC / Kv factor Page 1719
1720

Jerk /
Look-Ahead /
Jerk / Nominal position
Look-Ahead / value filter
Nominal position Page 1747
value filter
Page 1747

1710 HEIDENHAIN Technical Manual TNC 640


TNCopt Commissioning the digital control loops should be performed with the TNCopt
commissioning and optimization software. Refer to the detailed information in
the TNCopt User's Manual. It is available for registered customers in PDF
format from the HESIS Web Including Filebase on the Internet and supplied as
an online help with the TNCopt software.

Current controller The current controller must be adjusted with TNCopt. The speed and position
control loops are opened when you adjust the current controller. You must
therefore activate a special PLC commissioning program:
 Open the machine configuration.
 Enter the path to the PLC commissioning program in the MP_pwmPgm
parameter of the System/Path/CfgPlcPath configuration object
 Save the changes to the machine configuration.
 Restart the TNC 640.
It suffices to program an EM (end module) in the PLC commissioning program.
The drive must be enabled externally and the TNC 640 needs the "ready"
signal.

As soon as the "Current controller adjustment" special operating mode is


active, you can interrogate the commissioning status with Module 9168.

PLC module Module 9168 Interrogating the commissioning status


With Module 9168 you can request the following information about the axis
and spindle drives during commissioning of the PWM controllers.
 Which axis is currently being adjusted
 and in which switching type the spindle is being operated
Constraints:
 During normal operation, the module always returns –1 as the result.
 Bit 16 is only set if the PLC program uses API version 1.0. It is generally
advisable to use API Module 9470 (see page 1683) for NCK-based systems
Call:
CM 9168
PL D <Status>
–1: Commissioning not active or as yet no axis is selected
Bits 0..15: Number of the selected axis or spindle from
CfgAxes/axisList
Bits 0..5: NC axis
Bit 16: Switching type of the spindle
0 = Wye connection
1 = Delta connection

January 2015 6.23 Commissioning 1711


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error possible
Error

Adjusting the current controller:


 Do not acknowledge the Power Interrupted message. In the Programming
mode of operation, use the MOD key to enter the code number 94655. The
TNC 640 will start the Current Controller and Field Angle Adjustment
special mode of operation in the background
 Switch to the Manual mode of operation.
 Press the CE key, wait until the PLC program has been compiled and switch
the "control voltage" on.
 A selection window will be displayed on the screen. Select a combination of
axis and parameter set for the adjustment and press the Current control
soft key.
 Open TNCopt and connect to the TNC 640
 Load the machine parameters from the control.
 Adjust the current controller as described in the TNCopt User's Manual
 When the adjustment has been completed, select the next axis in the
selection dialog etc.
 On completion of the adjustment, transfer the current controller parameters
determined by TNCopt to the TNC 640

Note

If you use the CC 61xx or UEC 11x controller unit, always adjust all control
loops (axes and spindle) without overshoot.

1712 HEIDENHAIN Technical Manual TNC 640


Commissioning  Save the changes to the configuration data and restart the TNC 640 by
speed and turning the main switch off/on. Do not reboot the control, because rebooting
position controllers would cause the general system error 320-0010
 Activate a PLC program that is adapted to the machine.
 Acknowledge power interruption with the CE key and switch on the drives

Note

It is possible that the TNC 640 generates an error message regarding


standstill monitoring. In this case, either change the
MP_signCorrActualVal or the MP_signCorrNominalVal parameter.
For more information and a block diagram on the subject of defining the
traverse direction, see "Defining the traverse direction" on page 1079.

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
signCorrActualVal 400001
signCorrNominalVal 400002

Commission the speed controller by following the steps described below:

Speed controller  Establish a connection between TNCopt and the control.


stability
 In TNCopt, select the "speed-controller pulse" function
measurement
 Load the machine parameters from the control.
 Disable all filters in the speed controller.
 Enter for PropGain (proportional factor of the speed controller) the value "1"
and for IntGain (integral factor of the speed controller) the value "0".
You may need to increase the starting value for IntGain (e.g. for hanging
axes)
 Click the AUTO button and then the START button to start the
measurement.

January 2015 6.23 Commissioning 1713


 Continue as described in the TNCopt User’s Manual.

Note

If TNCopt reduces the P factor continually without finding a stable value,


there might not be sufficient energy available for the speed controller's
pulse output. In this case, modify the basic settings in TNCopt in such a
way that a higher amplitude and a higher pulse width are achieved:
Settings/General/Speed Controller/Stability Measurement:
 Increase gain and/or
 Pulse width.
Example:
Increase the gain from 0.5 to 0.99 and the pulse width from 600 µs to
1800 µs.

Filter optimization:
During AUTO adjustment, a dominant resonance frequency might occur. If
this is the case, you should abort the AUTO adjustment, and dampen this
specific resonant frequency with a filter (band-rejection filter with 3 to 9 dB of
damping).
 Repeat the AUTO adjustment and continue optimizing the filter until the
AUTO adjustment has been successfully completed.
 Only repeat the filter optimization for as long as Kp clearly increases and the
rise time is approx. 3 ms
 Set as few filters as necessary.

Note

The rise time is machine-dependent. The 3 ms indicated above are not a


standard value! On some types of machine, the best results might by
achieved with a rise time of 10 ms and higher.

 Transfer the determined filter parameters to the control

1714 HEIDENHAIN Technical Manual TNC 640


Speed controller  In TNCopt, select the "speed-controller step adjustment" function.
step adjustment
 The P factor and the filter parameters are transferred from the speed
controller stability measurement performed previously.
 Set the I factor (IntGain) to a small value:
Value 0 for horizontal axes
Value 100 for vertical axes, e.g. Z axis
 Now check the P factor of the speed controller, which you determined
previously. This factor might be too high and need to be reduced. Carry out
a measurement and continue reducing the P factor until you:
– obtain a low oscillation tendency
– there is (almost) no overshoot
– obtain a rise time of approx. 3 ms (incl. I factor)
– obtain a "smooth" step response
 Click the START button (AUTO is disabled)
Example of a P factor adjusted too high

 Reduce the P factor and disable the filters you do not need (filters for a very
high P factor)
 Repeat the measurement to check the P factor.

January 2015 6.23 Commissioning 1715


Example of a correctly adjusted P factor of a speed controller:

When checking and correcting the P factor is complete, continue with the
speed controller step adjustment:
 Click the AUTO button.
 Click the START button.
 TNCopt now performs several measurements and automatically determines
the value for the I factor of the speed controller
As an alternative, you can also determine the I factor manually:
 Disable the AUTO button.
 Increase the I factor until a step response with just a minimal overshoot
results. Example:

 Transfer the determined machine parameters to the control.

1716 HEIDENHAIN Technical Manual TNC 640


The CC 61xx and UEC 11x controller units offer the possibility to use a
powerful multifunction filter for the resonance frequencies. For more
information on the multifunction filter, see "Filters in the speed controller and
position controller when using the CC 61xx" on page 1346

Sequence for Commission the speed controller by following the steps described below:
traversing the
Check the counting and traversing direction
reference marks
For more information and a block diagram on the subject of defining the
traverse direction, see "Defining the traverse direction" on page 1079

Settings in the configuration editor MP number


System
CfgAxes
refAxis 100004
refAllAxes 100005
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
signCorrActualVal 400001
signCorrNominalVal 400002

 Use the configuration object CfgAxes to specify the sequence in which the
reference points are to be traversed. In MP_refAllAxes, specify whether all
axes are to be referenced in the sequence defined in MP_refAxis, or
whether the reference point in these axes is to be traversed by pressing the
axis-direction keys.
 Test the traverse direction using the following flow chart:

January 2015 6.23 Commissioning 1717


Switch on the line voltage

Edit machine YES


parameters?
Edit
MP_signCorrActualVal
NO MP_signCorrNominalVal
MP_signCorrNominalVal

Delete power interruption with CE


Switch on the machine control voltage

YES
Standstill monitoring
<Axis>? Reboot the control
Edit
NO MP_signCorrActuaVal
or
MP_signCorrNominalVal
Traverse reference
NO YES
points
Traversing direction
correct?

Switch-off the line voltage


Edit MP_signCorrActuaVal Finished
and
MP_signCorrNominalVal

1718 HEIDENHAIN Technical Manual TNC 640


Adjustment of The feedforward parameters are adjusted with TNCopt. Please refer to the
feedforward detailed information in the TNCopt User's Manual.
parameters
Generate NC Programs:
 Establish a connection between TNCopt and the control.
 Select the TNCopt function "Feedforward, sliding friction and holding torque
(FF)"
 Select the "Create NC Programs" function on the "Extras" menu.
 TNCopt automatically creates the adjustment programs and stores them in
the folder TNC:\TNCopt\ in the control.
Default settings in the configuration editor of the TNC 640:

Machine parameters in the configuration editor Meaning:


and input value:
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
maxAcceleration: 0.5 Acceleration
[m/s2]
Channels
ChannelSettings
CH_NC
CfgLaPath
maxPathJerk: 5 Maximum jerk on the
path

 Enter the default values according to the table above and save the changes
to the machine configuration.
 Switch to the Program Run, Full Sequence operating mode.
 Depending on the axis you want to optimize, open the NC program
TNC:\TNCopt\FF_[axis]_100.H
e.g. for the X axis: FF_X_100.H
 Click the AUTO and START buttons in TNCopt.
 Press the NC START button on the machine to start the NC program.
 TNCopt now determines the feedforward parameters automatically:
– Friction (low speed)
– Friction (high speed)
– Acceleration
– Holding current for vertical axes
by minimizing the integral current

January 2015 6.23 Commissioning 1719


 The integral current should now be nearly 0:

 Transfer the determined machine parameters to the control.

IPC / Kv factor The precondition for correct adjustment of the IPC is that the acceleration
feedforward control (parameter MP_compAcc) has useful values. It is
therefore essential that you adjust the acceleration feedforward control with
TNCopt, as described above, before adjusting the IPC and kv factor.
The IPC and the kv factor are adjusted with TNCopt. Continue as described in
the TNCopt User’s Manual to set the IPC and determine the kv factor.
 TNCopt automatically increases the kv factor until a sustained oscillation is
obtained:

 The values for IpcT1 and IpcT2 are automatically determined by TNCopt.

1720 HEIDENHAIN Technical Manual TNC 640


 Correctly adjusted kv factor:

Note

If the measurement cannot be successfully completed, the trigger


threshold might be too high. In this case, change the settings in TNCopt
under:
Settings/Optimize/IPC=> Trigger CC
In "Trigger threshold," enter a lower value, e.g. 5.

For more information on the IPC, See "IPC, holding torque, following error in
the jerk phase" on page 1363.

January 2015 6.23 Commissioning 1721


Determining the
acceleration
Temporary machine parameters in the configuration editor and input
value:
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
maxAcceleration: 0.5
CfgLaAxis
axJerk: 500
Channels
CH_NC
CfgLaPath
maxPathJerk: 999999
maxPathJerkHi: 999999

The following machine parameters influence whether the maximum possible


acceleration can be reached:
 Maximum permissible axis acceleration (MP_maxAcceleration)
 Maximum jerk on the path (MP_maxPathJerk)
 Maximum jerk on the path during rapid traverse (MP_maxPathJerkHi)
 Clamp an object of maximum permissible weight on the machine table.
 Increase the acceleration (MP_maxAcceleration parameter) step by step
using an increment value of 0.5
 The maximum possible acceleration is achieved at the point where the
current I (nom) reaches the limitation. In the example below:
15 A motor current at an acceleration of 16 m/s2

 Limit the maximum acceleration to approx. 80 % of the maximum current


of the motor or power stage, e.g.:
15 A · 80 % = 12 A

1722 HEIDENHAIN Technical Manual TNC 640


 Reduce the acceleration and check the result with the oscilloscope until a
maximum motor or power module current of I = 80 % · Imax is obtained. In
the example below, an acceleration of 12 m/s3 results:

Example: Selected acceleration = 16 m/s2

Result: The acceleration actually achieved is only 4.5 m/s2.


Possible causes:
 Speed too low
 Traverse range too short

January 2015 6.23 Commissioning 1723


 Use the integrated oscilloscope to check whether the configured axis jerk
(e.g. MP_axJerk = 500 m/s3) is actually reached

Result: The jerk actually achieved is only 364 m/s3.


Possible causes:
 Speed too low
 Traverse path too short

1724 HEIDENHAIN Technical Manual TNC 640


Setting the traverse
range
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
swLimitSwitchPos 400501
swLimitSwitchNeg 400502

To define the software limit switches, proceed as follows:


 Traverse the reference points, e.g. by pressing the PASS OVER REFERENCE
soft key.
 In the Manual Operation mode, press the MOD key to select the REF display
 Position displays show the distance to the machine datum
 Use the axis direction buttons or the handwheel to move all axes in positive
and negative direction until they almost reach the EMERGENCY STOP limit
switch. Note down the displayed positions including their algebraic signs
 Enter the noted values in the machine parameters MP_swLimitSwitchPos
or MP_swLimitSwitchNeg
 Press the MOD key and select the ACTL display

Note

You can enter different traverse ranges. You must define a separate
parameter set per axis and traverse range. The individual traverse ranges
are activated by switching the parameter sets (e.g. by PLC).

January 2015 6.23 Commissioning 1725


Activating The monitoring functions of the TNC 640 must be activated now.
monitoring
functions

Note

To ensure that the monitoring functions of the TNC 640 become effective
at the right moment, you must enter meaningful values.

 Activate position monitoring, See "Position monitoring" on page 1505.


Define two position monitoring limits in the machine parameters: one for
operation with following error, and one for operation with velocity
feedforward control
 Configure movement monitoring, See "Movement monitoring" on page
1511
 Configure standstill monitoring, See "Standstill monitoring" on page 1513

Note

Adjust the input values to the machine dynamics.

1726 HEIDENHAIN Technical Manual TNC 640


6.23.5 Commissioning of analog axes

General The TNC 640 features a Commissioning Wizard for analog axes.
information
The Wizard guides you step by step through the commissioning of any axis
parameter set. Press the ANALOG AXIS soft key on the opening screen of the
integrated oscilloscope (code number 688379) to start the commissioning
wizard. By default, the soft key is grayed out. You must enable the
commissioning aid with the code number 13852. The parameter set to be
optimized must exist in the system and is selected from a dialog window.

Soft key Function


Grayed out as a default; selectable after the code number
13852 has been entered. Starts the Commissioning Wizard for
analog axes.

Attention

Default values are automatically assigned to the axis parameters before


commissioning. The control reports this in a message window. The axis is
not operated with position control as long as these temporary initial
parameter values are in effect. The following error that results is not
eliminated. Hanging axes require a 100 % compensation for weight.
Ensure that hanging axes are adequately supported.

You can set the following machine parameters with the aid of the
Commissioning Wizard:

Soft key Function


Ascertain the algebraic sign of the axis
(MP_signCorrActualVal or MP_signCorrNominalVal)
Ascertain the axis traverse direction
(MP_signCorrActualVal or MP_signCorrNominalVal)
Ascertain the velocity at an analog voltage of 9 V
(MP_maxFeedAt9V)
Ascertain maximum acceleration of the axis
(MP_maxAcceleration)
Ascertain kv factor of the axis
(MP_kvFactor)
Ascertain acceleration feedforward control for the axis
(MP_accForwardFactor)

Press the CANCEL or LEVEL BACK soft key to leave the commissioning tool at
any point. The temporary parameter values or ascertained values are then
discarded, and the previous values are restored.

January 2015 6.23 Commissioning 1727


Preparation Proceed as follows:
 Check the wiring against the grounding diagram.
 Check the control-is-ready signal (See "Emergency stop monitoring" on page
1551).
 Check the EMERGENCY STOP circuit by pressing the EMERGENCY STOP
buttons and the EMERGENCY STOP limit switches.
 Determine the machine configuration using the documentation on hand.
The machine configuration must contain a parameter set for every axis. The
machine parameters should be preset with initial values before
commissioning
 Create a PLC program for interfacing the control to the machine (use the
PLC development software PLCdesign). A PLC basic program is available
for the control. It is already installed on the control when the control is
shipped. In addition, registered customers can download the current version
of the PLC basic program from the HESIS Web Including Filebase on the
Internet.
HEIDENHAIN recommends the use of the PLC basic program
 Ensure that all axis drives are enabled by the PLC. Use the OLM, for
example, (See "Actual status 1 of the axes (Ipo Act State 1)" on page 1811)
to check this before commissioning the machine.
 Before commissioning the machine, get familiar with the machine itself and
the mechanical data of the individual axes
 Ensure that the axes are located at noncritical positions and that they can be
moved safely during adjustment

1728 HEIDENHAIN Technical Manual TNC 640


Temporary input  Enter the following temporary input values when you begin commissioning:
values

Machine parameters in the configuration editor and Meaning


preliminary input value
Channels
ChannelSettings
CH_NC
CfgLaPath
maxPathJerk: 1 Maximum jerk on the path
maxG1Feed: 99 999 Max. machining feed rate
pathTolerance: 0.01 Tolerance for contour transitions
Axes
ParameterSets
[Key name of the parameter set] Parameter set of axis
CfgAxisHardware
signCorrActualVal: off Reverse counting dir. of act. value
signCorrNominalVal: off Reverse counting dir. of nom.
CfgPosControl value
kvFactor: 0
servoLagMin1: 20 kv factor
servoLagMax1: 20 Following error limit
servoLagMin2: 20 Following error limit
servoLagMax2: 20 Following error limit
feedForwardFactor: 1 Following error limit
ctrlOutputLimit: 1000 100 % feedforward
CfgFeedLimits Control variable limit for pos. ctrl.
maxAcceleration: 0.5
CfgControllerAuxil Max. permissible acceleration
driveOffLagMonitor: off
checkPosStandstill: 2 Following-error monitoring
CfgEncoderMonitor Standstill monitoring
checkAbsolutPos: off
checkSignalLevel: on Monitoring of distance code
movementThreshold: 0 Monitoring the encoder amplitude
CfgControllerTol Movement monitoring threshold
posTolerance: 0.01
CfgPositionFilter Positioning window
defaultPosition
shape: Triangle
frequency: 40 Shape of the position filter
defaultCutterLoc: Deactivated Cutoff frequency of the filter
manualFilterOrder: 11 CLP filter: Deactivated

January 2015 6.23 Commissioning 1729


Adjusting the servo Please note:
amplifier

Note

Adjust the servo amplifier before optimizing the position controller.


For instructions on adjustment, refer to the information given by the
manufacturer of your servo amplifier.

 Adjust the offset according to the information given by the drive


manufacturer.
 Adjust the proportional (P) component and the integral-action (I) component
of the speed controller at the servo amplifier.
 Check the polarity of the tachometer signal of the drive by using a battery
box, for example.
HEIDENHAIN recommends:
Use a voltage of 9 V for rapid traverse to ensure optimum utilization of the
voltage range of +/– 10 V and to attain optimum control loop performance for
the axis. The axis velocity to be expected (in [mm/min]) is defined in machine
parameter MP_maxFeedAt9V. Enter the rapid traverse rate in the machine
parameter.

Note

A servo amplifier that has been adjusted according to the information given
by the manufacturer is the basic prerequisite for putting the machine into
service.

1730 HEIDENHAIN Technical Manual TNC 640


Commissioning the
analog axes

General Analog axis feedback control is based on the following formula:


information
Value, parameter Unit of Description
measure
Uout Volt Output voltage
(analog nominal speed value)
Perr mm Following error (servo lag)
kvFactor 1/s Kv factor
(proportional component of position
controller)
Vnom mm/min Nominal velocity
feedForwardFactor Factor for velocity feedforward control
Anom m/s2 Nominal acceleration
accForwardFactor (s) Factor for acceleration feedforward
control
maxFeedAt9V mm/min Assumed velocity of the axis at 9 V

V nom 9V ⋅ 60
U out = ( P err ⋅ kvFactor + -------------------- ⋅ feedForwardFactor + 1000 ⋅ A nom ⋅ accForwardFactor ) ⋅ -----------------------------------------------------
60 maxFeedAt9V

The temporary input values result in the following reduced formula for the
output voltage:

9V
U out = ( P err ⋅ 0 + V nom ⋅ 1 + A nom ⋅ 0 ) ⋅ ----------------------------------------------------
maxFeedAt9V
Therefore:

9V
U out = V nom ⋅ ----------------------------------------------------
maxFeedAt9V

Note

Due to the temporary input values the axis is only in a speed control loop,
but not in a position control loop, during operation. The resulting following
error is not eliminated. For this reason, higher values were defined with the
temporary input values in the MP_servoLagMin1, MP_servoLagMin2,
MP_servoLagMax1 and MP_servoLagMax2 parameters.

Danger

Due to the temporary machine parameters, the position control loop is


open at the beginning of commissioning!
Hanging axes need 100 % weight compensation.
Ensure that hanging axes are adequately supported.

January 2015 6.23 Commissioning 1731


1. Checking the
counting direction
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
signCorrActualVal 400001
signCorrNominalVal 400002

To check the counting direction of the position measuring system, proceed as


follows:
 Switch on the machine.
 Select the following operating mode without crossing over the reference
marks:
Manual operation
 Switch to the Oscilloscope mode of operation.
 Set the following values in the oscilloscope by pressing the SELECTION soft
key:
Display mode: YT
Sampling time: IPO clock
Channel 1: Analog
Channel 2: v nom
Channel 3: v act
Trigger: Free run
 Press the OSCI soft key to switch to the curve representation.
 Press the START soft key to start recording.
 Press the axis-direction key of each axis to be checked.
 Press the STOP soft key to stop recording.

Incorrect algebraic sign

1732 HEIDENHAIN Technical Manual TNC 640


Correct algebraic sign

 If v nom and v act do not lie in the same direction on the oscilloscope, you
need to change either MP_signCorrActualVal or
MP_signCorrNominalVal.

Reversal of traverse If the axis does not move in the expected direction after you have pressed the
direction respective axis-direction key (e.g. X axis moves in negative direction although
you have pressed the X+ key), you can reverse the traversing direction.
 Invert the two values entered in the parameters MP_signCorrActualVal
and MP_signCorrNominalVal.

January 2015 6.23 Commissioning 1733


2. Adjusting the
speed
Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisAnalog
maxFeedAt9V 400105

The aim of speed adjustment is to achieve that the output nominal speed value
is equal to the really measured actual speed value (Vnom = Vact).
Determine whether the nominal speed value (Vnom) differs from the actual
value (Vact) on the machine. Proceed as follows:
 Switch on the machine.
 Select the following operating mode without traversing the reference
marks:
Manual Operation
 Switch to the Oscilloscope mode of operation (code number 688379).
 Set the following values in the oscilloscope by pressing the SELECTION soft
key:
Display mode: YT
Sampling time: IPO clock
Channel 1: Analog
Channel 2: V nom
Channel 3: V act
Trigger: Free run

Note

In the internal oscilloscope, the analog signal corresponds to the output


voltage Uout (= analog speed command signal) at connector X8.

 Press the OSCI soft key to switch to the curve representation.


 Press the START soft key to start recording.
 Press the axis-direction key of each axis to be checked.
 Press the STOP soft key to stop recording.
 Compare the values measured for Vnom and Vact with each other.
 Ideally, your oscilloscope measurement should look similar to this:

1734 HEIDENHAIN Technical Manual TNC 640


Vnom = Vact, speed adjustment correct

However, it may occur that the nominal value differs from the actual value:

Vnom ¼ Vact, speed adjustment incorrect

In this case, you should at first try to eliminate the difference by using the
possible settings of the servo amplifier (please note the information given by
the manufacturer). If this fails, refer to the information given below on how to
adjust the value in MP_maxFeedAt9V.

January 2015 6.23 Commissioning 1735


Due to the temporary input values, the following formula applies to the
nominal output voltage at connection X8:

9V
U out = V nom ⋅ ----------------------------------------------------
maxFeedAt9V

Therefore, MP_maxFeedAt9V is determined as follows:

9V
maxFeedAt9V = V act ⋅ --------------
U out

Perform a measurement with the internal oscilloscope to determine the


current difference between MP_maxFeedAt9V and the connected drive. Use
the parameter formula described above to determine the correct value.
Proceed as follows:
 Switch to the Oscilloscope mode of operation.
 Set the following values in the oscilloscope by pressing the SELECTION soft
key:
Display mode: YT
Sampling time: IPO clock
Channel 1: Analog
Channel 2: v nom
Channel 3: v act
Trigger: Free run
 Press the OSCI soft key to switch to the curve representation.
 Press the START soft key to start recording.
 Press the axis-direction key of each axis to be checked.
 Press the STOP soft key to stop recording.
 Select the values V nom and Analog by using the arrow keys and write down
the measured values, which are displayed at the left side of the oscilloscope
(Cu1:)
 Enter the two values in the formula for determining the parameter
MP_maxFeedAt9V
Example:
The internal oscilloscope measured the following values on the machine:
 Analog = 1.21 V
 v act = 1517 mm/min
 v nom = 1008 mm/min
This measurement makes clear that the actual speed value v act differs from
the nominal speed value nom. The difference can be eliminated by using the
formula mentioned above:
mm 9V mm
maxFeedAt9V = 1517 ------------- ⋅ -------------------- = 11283 -------------
min 11.21 , 21V min

 Enter the calculated value in the parameter MP_maxFeedAt9V and verify


the calculated value by performing a measurement with the internal
oscilloscope

1736 HEIDENHAIN Technical Manual TNC 640


3. Determining the  Clamp an object of maximum permissible weight on the machine table.
acceleration

Note

Write down the current input values set in CfgPositionFilter. You will need
to enter these values again after the acceleration has been optimized.

 Now, enter the temporary machine parameters listed in the table


Goal of the temporary input values: A jump in the nominal value is output to
the axis.

Machine parameters in the configuration editor Temporary Meaning


input value
Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
kvFactor (400801) 0 kv factor
CfgFeedLimits
maxAcceleration (400305) 999999 Maximum acceleration
CfgPositionFilter
axisPosition/shape (401606) Off Shape of nominal position value
filter of the linear-axis filter
axisCutterLoc/shape Off Shape of nominal position value
(401607) filter of the rotary-axis filter
manualFilterOrder (401605) 1 Order of mean-value filter in
manual mode

Attention

Ensure that the transmitted nominal-value step does not cause any damage
to the machine mechanics. It may be necessary to determine the
acceleration by careful approximation.

 Switch to the Oscilloscope mode of operation.


 Set the following values in the oscilloscope by pressing the SELECTION soft
key:
Display mode: YT
Sampling time: IPO clock
Channel 1: Analog
Channel 2: v nom
Channel 3: v act
Trigger: Free run
 Press the OSCI soft key.
 Press the START soft key to start recording.
 Press the rapid traverse key together with the axis-direction key to output
the maximum possible feed rate.
 Press the STOP soft key to stop recording.

January 2015 6.23 Commissioning 1737


 From the step response of the actual velocity (V act) you determine the
maximum possible acceleration (incl. 10 % safety margin).

Vnom
a = ------------------------------
t an ⋅ 66 000

Value, parameter Unit of Description


measure
a m/s2 Acceleration
Vnom mm/min Nominal velocity
ton s Rise time

Example:
The internal oscilloscope measured the following rise-time value on the
machine:
tan = 0.125 s
The nominal speed v nom (can be read from the oscilloscope) is a
machine specific parameter, and was determined to be 5000 mm/min in this
example.
Calculation of acceleration:
mm
5000 -------------
min m
a = ------------------------------------------ = 0 ,61 ------2
0.61
0,125 s ⋅ 66 000 s

1738 HEIDENHAIN Technical Manual TNC 640


 Enter the calculated value in the parameter MP_maxAcceleration and
check the calculated value by performing a measurement with the internal
oscilloscope.

Attention

Every transmitted nominal value step causes high stress to the machine
mechanics. Now reset the temporary input values in CfgPositionFilter to
the initial values before continuing commissioning.

4. Determining the
kv factor
Machine parameters in the configuration Temporary Meaning
editor starting value
Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
kvFactor (400801) 15 kv factor

Note

If the starting value entered causes the control loop to oscillate, the value
must be reduced.

 Enter the following test program:


0 BEGIN PGM TEST MM
1 LBL 1
2 L X+100 R0 F2000
3 L X0 F2000
4 CALL LBL1 REP 10/10
5 END PGM TEST MM
The test program should be structured so that the axis reaches the nominal
velocity.
 Run the program at high speed (feed-rate override = 100%)
 With the integrated oscilloscope, record the nominal feed rate (v nom), the
actual feed rate (v act), and if desired, the following error (s diff) as well
 Perform the first measurement with the temporary kv factor (15)
 Increase the kv factor until the oscillation limit is reached

January 2015 6.23 Commissioning 1739


 Calculate the input value for the MP_kvFactor as follows:
MP_kvFactor = <determined value of the oscillation limit> · 0.5

kv factor too high, axis oscillates

Axis has reached the oscillation limit

1740 HEIDENHAIN Technical Manual TNC 640


5. Determining the The following machine parameter will be optimized now:
jerk
Settings in the configuration editor MP number
Channels
ChannelSettings
CH_NC
CfgLaPath
maxPathJerk 201504

 Run the test program described previously in "Determining the kv factor"

Note

Depending on the position of the axis slide on the ball screw, the axis can
have different mechanical properties. Therefore you should repeatedly
perform the following measurement several times in a row at different
positions within the traverse range.

 Run the program at high speed (feed-rate override = 100%)


 With the integrated oscilloscope, record the actual feed rate (v act) and if
desired, the following error (s diff) as well
 Increase the parameter MP_maxPathJerk until the overshoot disappears

Note

The MP_maxPathJerk parameter is globally effective for all axes.


Therefore, sequentially determine the jerk for each axis individually. In the
parameter you then enter the jerk of the interpolating axis with the smallest
determined jerk value. The specific jerk values determined for each axis are
then entered in MP_axJerk.

January 2015 6.23 Commissioning 1741


Value in MP_maxPathJerk too high

Value in MP_maxPathJerk adjusted correctly

1742 HEIDENHAIN Technical Manual TNC 640


6. Determining Goal: The following error (servo lag) is to be set as small as possible during the
acceleration acceleration phase.
feedforward control
Machine parameters in the configuration Temporary Meaning
editor starting
value
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisAnalog
accForwardFactor (400106) 0.005 kv factor

This parameter is determined via step-by-step approximation to the ideal


value:
 Carefully increase the temporary starting value to determine the optimum
setting for MP_accForwardFactor. Use the value
0.001 as the starting value in the next step
 Determine the value just before an undershoot forms with the measured
following error (P err)

MP_accForwardFactor not adjusted

January 2015 6.23 Commissioning 1743


MP_accForwardFactor set too high

Correctly adjusted MP_accForwardFactor

1744 HEIDENHAIN Technical Manual TNC 640


7. Setting the
traverse range
Settings in the configuration editor:
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
swLimitSwitchPos 400501
swLimitSwitchNeg 400502

To define the software limit switches, proceed as follows:


 Traverse the reference points, e.g. by pressing the PASS OVER REFERENCE
soft key.
 In the Manual Operation mode, press the MOD key to select the REF display
 Position displays show the distance to the machine datum
 Use the axis direction buttons or the handwheel to move all axes in positive
and negative direction until they almost reach the EMERGENCY STOP limit
switch. Note down the displayed positions including their algebraic signs
 Enter the noted values in the machine parameters MP_swLimitSwitchPos
or MP_swLimitSwitchNeg
 Press the MOD key and select the ACTL display

Note

You can enter different traverse ranges. You must define a separate
parameter set per axis and traverse range. The individual traverse ranges
are activated by switching the parameter sets (e.g. by the PLC).

January 2015 6.23 Commissioning 1745


8. Activating The monitoring functions of the control must be activated now.
monitoring
functions

Note

To ensure that the monitoring functions of the control become effective at


the right moment, you must enter meaningful values.

 Activate position monitoring (See "Position monitoring" on page 1505)


 Define two position monitoring limits in the machine parameters: one for
operation with following error, and one for operation with velocity
feedforward control
 Configure movement monitoring,See "Movement monitoring" on page 1511
 Configure standstill monitoring,See "Standstill monitoring" on page 1513

Note

Adjust the input values to the machine dynamics.

9. Hysteresis / static For configuring the reversal-spike compensation, See "Compensation of


friction reversal spikes for analog axes" on page 1402.

1746 HEIDENHAIN Technical Manual TNC 640


6.23.6 Configuring the nominal position value filter and look-ahead parameters

Note

HEIDENHAIN recommends:
Before starting the next commissioning steps, activate the ADP (Advanced
Dynamic Prediction) function by setting the parameter CfgHardware/
setupADP to Premium.
The TNC 640 optimizes the motion control of the feed axes with ADP. A
more uniform execution of NC programs with reduced data resolution or
irregular distribution of points results in lower feed deviations when ADP is
used as well as in surface quality improvements, See "Advanced Dynamic
Prediction (ADP)" on page 1325.

The nominal position value filters smooth the NC path so that a higher
traversing speed is possible and oscillations are dampened. This path
smoothing leads to a deviation from the programmed positions. By reducing
the feed rate at corners and curvatures, the TNC 640 always keeps this
deviation within the specified tolerance.

Types of filters Four filters are available for limiting the bandwidth of the dynamics of nominal
position and speed values.
 Average (mean-value) filter1
 Triangle filter (also: single filter)
 HSC filter
 Advanced HSC filters

Default filter and The filters are set system-wide with the configuration entity CfgFilter (default
axis-specific filters filter). If you want to activate another filter for a specific axis, you can overwrite
the default configuration axis-specifically via the CfgPositionFilter
configuration object.

Note

For axes that are interpolated together, you should define different filters
only in exceptional cases. It leads to distortions of the nominal path!

With FN17: SYSWRITE ID610, the nominal position value filters in the program
run (e.g. in OEM cycles) can be switched, See "Data transfer NC => PLC, PLC
=> NC" on page 2516.

1. The average filter is (almost) never used in practice. You should also consider
that the shape of the filter causes, for example at corners, a relatively strong
jerk on the axes.

January 2015 6.23 Commissioning 1747


Overview: Critical points for filtering on contour paths are corners, circles and curvature
Machine changes. To optimize the contour accuracy and surface quality at those points,
parameters the following machine parameters are essential.
The individual parameters are described in detail on the page indicated in the
"Page" column. There you will also find further tips for parameter setting.
A guideline on how to set the nominal position value filters and the look-ahead
parameters is provided after the table under "Selection criteria for setting the
mode of operation" on page 1760.

Note

Sometimes different values apply to axis movements at rapid traverse (=


programmed feed rate exceeds the value in MP_maxG1Feed) than to
movements when the tool is engaged. This permits higher dynamics during
rapid-traverse movements.
Parameters that apply to movements at rapid traverse are identified
by the extension "Hi".

Config Machine parameters NCK iTNC MP Brief description Page


object number number
CfgLaPath
Channel-specific jerk and tolerance parameters in the Channels folder
minPathFeed 201501 – Minimum feed rate in the 1308
segment
minCornerFeed 201502 – Minimum transition feed 1309
rate
maxG1Feed 201503 MP1092 Starting with this feed rate, 1310
"Hi" values apply
maxPathJerk 201504 MP1090 Maximum jerk on the path 1311
maxPathJerkHi 201505 MP1090 Maximum jerk on the path 1311
at rapid traverse
pathMeasJerk 201517 – Maximum jerk on the path 1311
during probing
pathTolerance 201506 MP1202 Path tolerance for contours 1310
(and transitions) after the
filter
pathToleranceHi 201507 MP1202 Path tolerance for contours 1310
(and transitions) after the
filter at rapid traverse
maxPathYank 201508 – Maximum yank (time 1312
change of the jerk) on the
path
maxPathYankHi 201518 – Mode of yank limitation at 1312
rapid traverse

1748 HEIDENHAIN Technical Manual TNC 640


Config Machine parameters NCK iTNC MP Brief description Page
object number number
reduceCornerFeed 201516 MP1205 Reduction of the 1321
contouring feed rate at the
beginning of a contour
element
curveTolFactor 201509 – Factor for path tolerance in 1323
circles and progression of
straight lines
curveJerkFactor 201510 MP1230 Factor for feed rate 1323
to reduction at curvature
MP1243 changes
angleTolerance 201511 – Tolerance for rotary axes 1313
with M128
angleToleranceHi 201512 – Tolerance for rotary axes 1313
with M128 and rapid
traverse
filterFeedTime 201513 MP1522 Time constant of feed-rate 1294
smoothing filter
maxTransAcc 201514 MP1070 Maximum radial 1314
acceleration on circles and
curved paths
maxTransAccHi 201515 MP1070 Maximum radial 1314
acceleration on circles and
curved paths at rapid
traverse
CfgLaAxis
Axis-specific jerk and tolerance parameters in the axis parameter set
axTransJerk 401701 MP1222 Maximum axis jerk at 1318
to segment transitions
MP1250
axPathJerk 401703 MP1085 Axis-specific maximum 1319
MP1097 jerk in traverse direction
MP1098
axPathJerkHi 401704 MP1086 Axis-specific maximum 1319
jerk in traverse direction
with rapid traverse
axMeasJerk 401705 – Axis-specific maximum 1320
jerk during measurement
axFilterErrWeight 401702 – Factor for filter error 1324

January 2015 6.23 Commissioning 1749


Config Machine parameters NCK iTNC MP Brief description Page
object number number
CfgFilter
Global (system-wide) machining parameters for configuring the nominal position value filters:
 defaultPosition subfolder for global filter settings of the linear axes
 defaultCutterLoc subfolder for global filter settings of the tilting axes (M128)
shape 100405 MP1200 Shape of the global 1304
100406 nominal position value filter
frequency 100405 MP1210 Cutoff frequency of the 1305
100406 MP1211 filter
MP1212
MP1213
MP1218
hscMode 100405 – Mode (only relevant with 1305
100406 HSC filter)
maxHscOrder 100405 MP1262 Maximum filter order 1305
100406 MP1263 (relevant only for HSC
filter)
defaultManualOrder 100407 – Global order of the mean- 1305
value filter for the Manual
Operation mode
disableForMeasure 100408 – Global deactivation of the 1306
filters during measurement
with TS or TT

1750 HEIDENHAIN Technical Manual TNC 640


Config Machine parameters NCK iTNC MP Brief description Page
object number number
CfgPositionFilter
Axis-specific machining parameters for configuring the nominal position value filters. Overwrite the
global settings under System / CfgFilter.
 "axisPosition" subfolder for axis-specific filter settings on linear axes.
 "axisCutterLoc" subfolder for axis-specific filter settings on tilting axes (M128).
shape 401606 MP1200 Shape of the nominal 1304
401607 position value filter
frequency 401606 MP1210 Cutoff frequency of the 1305
401607 MP1211 filter
MP1212
MP1213
MP1218
hscMode 401606 – Mode (relevant only for 1305
401607 HSC filter)
maxHscOrder 401606 MP1262 Maximum filter order 1305
401607 MP1263 (relevant only for HSC
filter)
manualFilterOrder 401605 – Axis-specific order of the 1306
mean-value filter for the
Manual Operation mode.
Overwrites the setting in
MP_defaultManualOrder
for the respective axis.
CfgStretchFilter
Machine parameters for the geometry filter
filterType 201101 – Type of stretch filter 1290
tolerance 201102 – Maximum distance of the 1290
filtered to the unfiltered
contour
maxLength 201103 – Maximum length of the 1291
path as a result of filtering

January 2015 6.23 Commissioning 1751


Ascertaining the 1. Ascertain the machine frequency
initial values
With the nominal position value filters you limit the bandwidth of the given
(standard setting)
nominal value. To do so, you have to enter the cutoff frequency of the machine
in MP_frequency. The following guideline explains how to determine the
machine frequency.
Prepare measurement:
 Preferably select the advanced HSC filter for the measurement:
MP_shape = AdvancedHSC
 Define a start value for the tolerance:
MP_pathTolerance = 0.02
 Define a start value for the filter cutoff frequency:
MP_frequency = 50
If required, limit the cutoff frequency step by step (this increases the filter
damping) until the oscillation is reduced.
 Carry out the adjustment with a suitable NC program. The TNCopt software
from HEIDENHAIN features the "FF_100_[axis].h" NC programs for
feedforward adjustment.
 With the integrated oscilloscope, record the signals v nom, v act and the
following error (servo lag) s-diff.
Proceed as follows to ascertain the resonance frequency of the machine:
 Increase the jerk for the measurement to achieve a more intensive machine
excitation.
MP_axTransJerk: Set a very high value

Note

Reset the parameters to the original values at the end of the measurement!

 Observe the oscillation of the following error in the constant speed range.
 Determine the amplitude duration of the oscillation and calculate the
resonance frequency of the axis from it.
 Compare the frequencies of the individual axes.
 Select the lowest frequency of all linear axes for the default setting of the
position filter (defaultPosition).
 Select the lowest frequency of all rotary axes for the default setting of the
CLP filter (defaultCutterLoc).

1752 HEIDENHAIN Technical Manual TNC 640


Range for determining the
machine frequency

2. Set the jerk


While the path jerk (MP_axPathJerk) is determined via the following error
(servo lag) at the transition from acceleration to constant feed rate, you set the
transition jerk (MP_axTransJerk) at the reversal point of the axis.

Note

If you are migrating from the iTNC 530:


A rule of thumb: Compared to the iTNC 530, all axis jerk parameters must
be set to higher values with the TNC 640. The iTNC 530 values must be
increased by a factor of 1.25 to 1.4 with the TNC 640 for the same
dynamics.

Step 1: Set the axis-specific path jerk (MP_axPathJerk)


Basic settings:
 Set a very high value for the maximum path jerk (so that there is no
limitation):
CfgLaPath: MP_maxPathJerk and MP_maxPathJerkHi
(Hi values apply to rapid traverse in general)
 Use the advanced HSC or triangle filter:
MP_shape = AdvancedHSC or
MP_shape = Triangle
 Enter the machine frequency in MP_frequency
 Deactivate feed-rate smoothing:
MP_filterFeedTime = 0
 Set a very low transition jerk value for the measurement because the path
jerk and transition jerk overlap:
MP_axTransJerk = 1

January 2015 6.23 Commissioning 1753


Perform an adjustment:
 Use suitable NC program.
The TNCopt software from HEIDENHAIN features the "FF_100_[axis].h" NC
programs for feedforward adjustment.
 Modify MP_axPathJerk until the following error s-diff is reduced to a few
µm (usually about 5 µm).

Step 2: Set the transition jerk (MP_axTransJerk)


Basic settings:
 Use the advanced HSC filter:
MP_shape = AdvancedHSC
 Define HSC mode (Cycle 32):
MP_hscMode = Smoothing
 Set a very low path jerk value for the measurement because the path jerk
and transition jerk overlap:
MP_axPathJerk = 5
 Set a high value for the contour tolerance:
MP_pathTolerance(Hi) = 3
 Apply the other basic settings from Step 1
Perform an adjustment:
 Observe the following error s-diff during the direction reversal

1754 HEIDENHAIN Technical Manual TNC 640


 Modify MP_axTransJerk until the following error during the direction
reversal of the axis is reduced to a few µm.

January 2015 6.23 Commissioning 1755


Additional inspection of the transition from straight line to circle:
With the integrated oscilloscope you can determine the following error when
traversing a transition from a straight line to a circle. To exclude the influences
of frictional moment and reversal error, you should select a transition with a
45° movement of the axis pair involved:

Set the following parameter values to check the transition from straight line to
circle:

Note

Reset the parameters to the original values when the check is finished!

Machine parameter Recommended values


CfgLaPath: MP_minCornerFeed 0
CfgLaPath: MP_minPathFeed Very high
CfgLaAxis: MP_axTransJerk Very high

 Record the following error s-diff and the jerk j-nom of the respective axes
with the integrated oscilloscope.
 Turn the feed-rate potentiometer completely down.
 Start the test program and turn the feed-rate potentiometer slowly and
carefully up until an acceptable following error (< few µm) is attained.
 On the integrated oscilloscope, read the jerk j-nom at the transition from
straight line to circle of the respective axis.
 Enter this jerk value in MP_axTransJerk.
For the adjustment of MP_axTransJerk described here it is essential to
consider only the geometric influences of the path (corner, transition from
straight line to circle etc.) The development of the feed rate is without effect.
In the table above, MP_minPathFeed is therefore set to a high value. A
reduction of the feed rate due to other criteria is thus prevented; the feed rate
stays constant during the measurement.

Note

HEIDENHAIN recommends:
Always record the feed rate during the measurements to check whether it
remains constant.

1756 HEIDENHAIN Technical Manual TNC 640


During roughing the jerk value can increase until the machine gets loud or the
following error s-diff becomes too large.
The corner jerk should hardly limit the feed for clean surfaces with finishing.
Also at curvature changes the feed rate is reduced so that the jerk value
entered in MP_axTransJerk is not exceeded. With the HSC filter or high
tolerances (Cycle 32 or MP_angleTolerance(Hi)) you can hear knocking
noises at curvature changes on some machines. You can reduce them by
lowering MP_curveJerkFactor (Page 1321). Observe the following
information when setting MP_curveJerkFactor:
 With use of ADP (MP_setupADP = Premium):
• MP_curveJerkFactor <= 1:
Curvature changes according to MP_axTransJerk
• MP_curveJerkFactor > 1:Lower feed rate reduction at curvature
changes Values over 5 should be avoided. HEIDENHAIN recommends:
For MP_curveJerkFactor, set values between 1 and 2.
 Without use of ADP (MP_setupADP = Off):
• MP_curveJerkFactor < 1:
Higher feed rate reduction at curvature changes
• MP_curveJerkFactor > 1:
Lower feed rate reduction at curvature changes
• MP_curveJerkFactor = 0:
No additional feed rate reduction at curvature changes

Note

For more information on the MP_axTransJerk and MP_axPathJerk


parameters, please also refer to "Axis-specific limit values" on page 1315.

January 2015 6.23 Commissioning 1757


3. Set feed-rate smoothing
You can additionally smooth the feed-rate with the feed-rate smoothing filter
MP_filterFeedTime.
It is recommended for machine frequencies below 25 Hz.

Note

If you use ADP with the "Premium" mode, in certain situations no further
improvements in the feed-rate process will be achieved with the feed-rate
smoothing filter.

Typical setting values are between 0.015 and 0.2 s. They enable you to attain
significantly more constant feed rate curves; the machining time increases,
however.
Using the feed-rate smoothing filter is particularly recommendable for the
"surface" criterion (See "Selection criteria for setting the mode of operation" on
page 1760.)
Use the NC programs for feedforward adjustment "FF_100_[axis].h" for the
adjustment of the feed-rate smoothing.

Note

For more information on the feed-rate smoothing filter, see "Feed-rate


smoothing" on page 1292

1758 HEIDENHAIN Technical Manual TNC 640


Proceed as follows to do the adjustment:

Set MP_filterFeedTime

Initial value:
MP_filterFeedTime = 0.02

Increase
MP_filterFeedTime
by 0.005

Following error No
(servo lag)
small enough?

Yes

January 2015 6.23 Commissioning 1759


Selection criteria
for setting the
mode of operation
Speed

Clean and Accuracy


smooth surface

The settings for the nominal position value filters and look-ahead parameters
mainly depend on the emphasis of the requirements for machining the
workpiece. Speed and accuracy, in connection with clean and smooth
surfaces, are the decisive criteria.
At the same time, the oscillation and resonance tendencies of the machining
system (the machine tool) are to be considered, and taken into account in the
settings for the nominal position value filters.
Criterion: Clean surface
Definition of the term "surface":
 A clean and smooth surface has the highest priority – The given nominal
value is additionally smoothed by reducing the path jerk and the limit
frequency.
 Application: Finishing
 Oscillations in the axes must be damped, since following errors of 1 µm are
still visible on the surface
 Tolerance (Cycle 32) typically between 0.01 and 0.02 mm (may also be
exceeded in order to achieve a better surface)
Criterion: Speed (tolerances above 50 µm)
Definition of the term "speed":
 Surface quality is secondary; short machining times have the highest priority
 Application: Roughing
 Tolerances (Cycle 32) typically between 0.1 and 0.2 mm
Criterion: High accuracy
Definition of the term "accuracy":
 Maintaining the tolerances has the highest priority
 Application: Very fine and small parts
 Slight oscillations can be seen on the surface
 Tolerances typically between 0.005 and 0.01 mm
 Compensation of reversal peaks must be performed beforehand

1760 HEIDENHAIN Technical Manual TNC 640


Recommended In the following recommendations it is assumed that the nominal position
settings value filters are not configured individually for each axis, but globally in
CfgFilter.

Note

Configuring different filters for axes with joint interpolation is only


permitted in special cases!

Recommended settings guidelines for "surface":


Basic settings:
 Set small path jerk values:
CfgLaPath: MP_maxPathJerk Or:
CfgLaAxis: MP_axPathJerk, See "Axis-specific limit values" on page 1315.
Note

The rapid traverse values MP_maxPathJerkHi and MP_axPathJerkHi are


set to high values independently of the desired criterion. They depend on
the wear of the machine elements rather than on the path quality.

 Use the advanced HSC or triangle filter


 Optionally activate the geometry filter (CfgStrechFilter), See "Geometry
filter" on page 1289.
(Not available on TNC 320 and lathe controls!)
 Important for uniform machining:
(= feed rate as constant as possible)
Set high transition jerk values:
CfgLaAxis: MP_axTransJerkA maximum of value 5 as a factor for feed-rate
reduction at curvature changes
CfgLaPath: MP_curveJerkFactor, See "Tolerance for corners and arcs" on
page 1321.

Note

The feed rate can be additionally smoothed with the feed-rate smoothing
filter (CfgLaPath: MP_filterFeedTime), See "Ascertaining the initial values
(standard setting)" on page 1752. When using ADP with "Premium" mode,
the results can usually be further improved by using the feed-rate
smoothing filter.

Perform an adjustment:
 Goal:
Minimum following error (servo lag)
 Use a suitable NC program.
The TNCopt software from HEIDENHAIN features the "FF_100_[axis].h" NC
programs for feedforward adjustment.
 Evaluate the following error s-diff – it should largely be less than 1 µm at a
constant feed rate.

January 2015 6.23 Commissioning 1761


 Minimize the following error s-diff

Note

Relationship between cutoff frequency (MP_frequency) and the effect of


the filters:
MP_frequency = small value:
(recommended for "surface" criterion)
Strong damping—the contour is milled more slowly and is smoothed to a
greater extent
MP_frequency = large value:
Weak damping—the contour is milled faster and is smoothed to a lower
extent

 Perform the adjustment according to the following flow chart:

Set the "surface" criterion

Enter the machine


frequency standard value in
MP_frequency

Perform measurement

Reduce MP_frequency
by about 10%

Recommendation: No
Following error < 1 µm?

Yes

Mill a test workpiece

1762 HEIDENHAIN Technical Manual TNC 640


Clean surface – Example values of a medium-sized machine:

Machine parameter Recommended values


defaultPosition/shape Triangle/AdvancedHSC
defaultPosition/frequency 20-25
defaultPosition/hscMode Smoothing
maxPathJerk 0a
pathTolerance 0.02
curveJerkFactor 1 to 1.5b
maxTransAcc 1.5
axTransJerk 50 to 70
axPathJerk 35 to 50
a. Limit single axis jerks via MP_axPathJerk.
b. If ADP is deactivated (MP_setupADP = Off) then the value can be
increased, e.g. to 10.

Recommended settings guidelines for "speed":


Basic settings:
 Set high jerk values in traverse direction:
CfgLaPath: MP_maxPathJerk. You can nearly set rapid-traverse values for
the jerk.
or:
CfgLaAxis: MP_axPathJerk
=> a bigger following error s-diff is possible
 The triangle filter is recommended for tolerances > 50 µm (Cycle 32):
MP_shape = Triangle
 HSC filter is recommended at tolerances < 30 µm (Cycle 32)
MP_shape = HSC
Note

With the triangle filter and slightly increased jerk values, you can often
attain the same speed, but with a lower machine excitation than with HSC
filters.

 Define HSC mode (Cycle 32):


MP_hscMode = Roughing
 Set a high cutoff frequency:
MP_frequency = high value; recommendation: 50 Hz, if possible
 Set higher values for the transition jerk:
CfgLaAxis: MP_axTransJerk
You can nearly set rapid-traverse values.

January 2015 6.23 Commissioning 1763


Perform an adjustment:
 Goal:
Maximum speed while maintaining the programmed contour tolerance
(Cycle 32).
 Use a suitable NC program.
The TNCopt software from HEIDENHAIN features the "Contour-Single.h"
NC program within the "contour measurement" function. The advantage is
that the speed and the contour deviations can be seen directly.
 Perform the adjustment according to the flow chart below:

Set the "speed" criterion

Machine parameter
according to the "basic
settings"

Increase the jerk

Yes

Machine
Velocity No load, noise development or
sufficient? following error
are still low?

Yes No

1764 HEIDENHAIN Technical Manual TNC 640


Rapidity – exemplary values of a mid-sized machine with tolerance
exceeding 50 µm:

Machine parameter Recommended values


defaultPosition/shape Triangle
defaultPosition/frequency 50
maxPathJerk 0a
pathTolerance 0.05
curveJerkFactor 1.5 to 2b
maxTransAcc 5
axTransJerk 100 to 150
axPathJerk 80 to 120
a. Limit single-axis jerks via MP_axPathJerk.
b. If ADP is deactivated (MP_setupADP = Off), the value can be
increased, e.g. to 10.

Recommended settings guidelines for "accuracy":


Basic settings:
 Use the HSC filter whenever possible (with limit frequencies greater than 30
Hz)
MP_shape = HSC
 Define HSC mode (Cycle 32):
MP_hscMode = Smoothing
 Use lower jerk values than in the default setting
CfgLaAxis: MP_axTransJerk
CfgLaPath: MP_maxPathJerk
or:
CfgLaAxis: MP_axPathJerk
 Use limit frequencies above 30 Hz

Note

Do not use the stretch filter (CfgStrechFilter) because it is not taken into
account in Cycle 32!

Perform an adjustment:
 Goal:
The programmed contour tolerance (Cycle 32) must be maintained while the
following error is kept at a minimum

January 2015 6.23 Commissioning 1765


 Use a suitable NC program.
The TNCopt software from HEIDENHAIN features the "Contour-Single.h"
NC program within the "contour measurement" function. The advantage is
that the speed and the contour deviations can be seen directly.
Note

Possibility of further adjustment:


Ideally, circular paths should be checked with a KGM grid encoder from
HEIDENHAIN. However, in many cases the circular interpolation test with
the integrated oscilloscope or TNCopt suffices.

Note

To decrease deformations of machine elements due to increased


centrifugal forces (radial acceleration), the accelerations in
MP_maxTransAcc may have to be reduced to 1.5 m/s2.

 Perform the adjustment according to the flow chart below:

Set the "accuracy" criterion

Define machine parameters


according to the "Basic
settings"

Reduce the jerk and axis


accelerations of the X, Y
and Z axes (KGM
measurement required)

Contour tolerance Yes


exceeded?

No

1766 HEIDENHAIN Technical Manual TNC 640


Accuracy – Example values of a medium-sized machine:

Machine parameter Recommended values


defaultPosition/shape HSC
defaultPosition/frequency 35
defaultPosition/hscMode Smoothing
maxPathJerk 0a
pathTolerance 0.005
curveJerkFactor 1 to 1.5b
maxTransAcc 0.75
axTransJerk 30 to 40
axPathJerk 40 to 50
a. Limit single-axis jerks via MP_axPathJerk.
b. If ADP is activated (MP_setupADP = Off) use the same value (1 to
1.5).

January 2015 6.23 Commissioning 1767


Rapid, clean 5- axis machining with FUNCTION TCPM or M128:
To optimize the performance of 5-axis machining you can set the angle
tolerance both in Cycle 32 and via the two machine parameters
MP_angleTolerance and MP_angleToleranceHi (CfgLaPath).
Angle tolerance is only effective with FUNCTION TCPM or M128 for those
axes using the cutter location filter (MP_defaultCutterLoc or
MP_axisCutterLoc).
Important:
 Set the angle tolerance TA in Cycle 32 as high as possible (usually 3°)
 Before 5- axis machining, a FUNCTION TCPM or M128 must be
programmed in the NC program.
 When using the advanced HSC filter: Program a high tolerance for rotary
axes and roughing filters (mode 1) via Cycle 32. Typical tolerance values
range from 0.1° to 5°. This can achieve significant speed advantages.
However, possible undercuts must be taken into account.
 When setting the jerk and acceleration values of the rotary axes, as well as
selecting the suitable filters, take into account
• the running noises of the machine
• the mechanical load (wear)
• the desired machining speed
• the following error of the rotary axes
 Typical values for the cutter location filter frequency MP_defaultCutterLoc/
frequency are 1 to 20 Hz. The larger the rotary axis or the lower any jerk
values of the rotary axis can be set (depending on the following error), the
smaller MP_defaultCutterLoc/frequency should also be specified. The
triangle filter should only be used below 12 Hz. The use of a higher limit
frequency together with a smaller rotary axis tolerance (e.g. TA = 0.1) may
cause significant increases in speed with very dynamic rotary axes and
uniform distribution of points of the NC sets for linear and rotary axes.

Note

Use the advanced HSC or triangle filter for the cutter location filters.
If you are migrating from the iTNC 530:
The cutter location filter (MP_defaultCutterLoc or MP_axisCutterLoc)
with triangle filter setting (Triangle) and a frequency of 1 Hz corresponds to
the default behavior of the iTNC 530 without use of the MP1218.x.
MP1218.x of the iTNC 530 corresponds to MP_defaultCutterLoc/
frequency or MP_axisCutterLoc/frequency.

1768 HEIDENHAIN Technical Manual TNC 640


6.23.7 Commissioning the digital spindle

Current controller The current controller is adjusted in the same manner as a digital axis, See
"Current controller" on page 1711.

Speed controller To activate the jump function, enter the following machine parameters:

Settings in the configuration editor


Axes
ParameterSets
[Key name of the spindle parameter set]
CfgFeedLimits
maxAcceleration: High value
maxAccSpeedCtrl: High value
CfgPositionFilter
manualFilterOrder: 1

Use MP_manualFilterOrder = 1 to activate the lowest filter order for the


Manual Operation mode. As a result, the nominal speed value is no longer
"averaged."
 Start the step output by Spindle On.
 Activate a spindle speed from the highest gear range.
 Use the integrated oscilloscope to record the nominal feed rate (v nom), the
actual feed rate (v act) and the actual current value I (nom)
 Output a step with the Spindle On function (M03/M04)
 Choose the height of the step function for a very low speed so as not to
overload the speed controller, i.e. so that I (nom) is not limited
 Increase the P factor of the speed controller (MP_vCtrlPropGain) until the
system oscillates or no change is visible. To modify machine parameters,
press the MOD key and then the CONFIG EDIT soft key in the integrated
oscilloscope

January 2015 6.23 Commissioning 1769


 Calculate the input value for MP_vCtrlPropGain:
MP_vCtrlPropGain = MP_vCtrlPropGain · 0.6
 Increase the I factor (MP_vCtrlIntGain) until the nominal value is reached
and there is no overshoot

 Output the step with maximum shaft speed. I (nom) is within the limitation
during acceleration. I (nom) must not oscillate after reaching the maximum
speed. If I (nom) oscillates:

Reduce MP_vCtrlPropGain and MP_vCtrlIntGain evenly until the


overshoots are minimized.

I (nom) oscillates

1770 HEIDENHAIN Technical Manual TNC 640


Only one overshoot

Optimize the acceleration for M3/M4/M5 with the parameters


MP_maxAcceleration, MP_maxAccSpeedCtrl and MP_maxDecSpeedCtrl
The TNC 640 permits you to define adapted acceleration values for the speed-
controlled spindle with M3/M4/M5 and for the position-controlled spindle with
M19. You can also define different values for the acceleration and braking
ramp for the spindle in speed control:

Machine parameter Effective in Description


mode
MP_maxAccSpeedCtrl M3/M4/M5 Acceleration ramp of the spindle.
: Also effective for the braking
ramp if MP_maxDecSpeedCtrl is
not defined.
MP_maxDecSpeedCtrl M3/M4/M5 Braking ramp of the spindle.
MP_maxAcceleration M19 Acceleration of spindle in position
feedback control. Also effective
for the spindle in speed feedback
control if MP_maxAccSpeedCtrl
and/or MP_maxDecSpeedCtrl
are not defined.

January 2015 6.23 Commissioning 1771


To adjust the acceleration of the spindle, proceed as follows:
 Optimize the acceleration individually for each gear range.
 M3/M4:
The spindle is in speed control with M3 and M4. Define the acceleration
ramp of the spindle with MP_maxAccSpeedCtrl. If the value of
MP_maxAccSpeedCtrl is 0, then the value entered in
MP_maxAcceleration is used.

Note

For motor spindles with direct drives you can usually choose an
acceleration and braking ramp gradient at which the motor reaches the
electrical current limit during starting and braking. Pay attention to the
manufacturer's mechanical limit values for spindle drives with gear unit or
belts and set ramps that are suitable for the mechanics.

 M5:
Braking is usually performed at the current limit. You define the braking
ramp of the spindle with MP_maxDecSpeedCtrl. If the value of the
parameter is 0, then the value entered in MP_maxAccSpeedCtrl is used. If
the value of MP_maxAccSpeedCtrl is also 0, the TNC 640 uses the value
entered in MP_maxAcceleration.

1772 HEIDENHAIN Technical Manual TNC 640


M19:
For tapping and oriented spindle stop, I (nom) must not be within the limit
during acceleration:
 In MP_maxAcceleration, enter a lower value for these operations with
closed-loop position control
 The behavior of the spindle can be adjusted, if necessary, with the
parameter MP_axPathJerk for jerk limiting.

Check the direction of rotation:


You can check the direction of rotation of the spindle when M03 is output. If
the spindle does not rotate in clockwise direction:
 Change MP_signCorrNominalVal

Position controller The position control loop of the main spindle is closed only during the spindle
orientation:
 Close the position control loop of the main spindle, See "Spindle Oriented
spindle stop (spindle point stop)" on page 1568
 If the error message Nominal speed value too high appears, you need to
modify MP_signCorrActualVal
 Optimize the kv factor (MP_kvFactor) for each gear range. A TOOL CALL
must be run to transfer the modified gear-specific parameters

January 2015 6.23 Commissioning 1773


6.24 Integrated oscilloscope

6.24.1 Fundamentals
The TNC 640 features an integrated oscilloscope. This oscilloscope features 6
channels for recording analog signals and 16 channels for recording digital
signals (see the following tables).
The recording of CC signals is limited to four signals.

Overview
of signals
Analog Meaning CC
signals signal
Off No recording for this channel –
SAVED The signal last recorded on this channel is "frozen." –
a act Actual axis acceleration value [m/s2] or [°/s2]. –
Calculated from position encoder.
a nom Nominal axis acceleration value [m/s2] or [°/s2] –
v act Actual value of the axis feed rate [mm/min] or [°/ –
min]. Calculated from position encoder.
v nom Nominal value of the axis feed rate [mm/min] or [°/ –
min]. Axis feed rate calculated from the difference
between the nominal position values. The following
error is not included.
Feed rate F Contouring feed rate [mm/min] or [°/min] –
Block no. Block number of the NC program for triggering –
s act Actual position [mm] or [°] –
s nom Nominal position according to the nominal position –
value filter [mm] or [°]a
s diff Following error of the position controller [mm] or [°] –
PosDiff Difference between position and speed encoder –
[mm] or [°]
Position: A Signal A of the position encoder –
Position: B Signal B of the position encoder –
j act Actual jerk value [m/s3]. Calculated from position –
encoder.
j nom Nominal jerk value [m/s3] –
v (N act) Shaft speed actual value [mm/min]. Calculated from CC
speed encoder (= From the number of motor
revolutions). For drive motors with transmission,
this value differs from v act.
(v act = v (N act) · MP_distPerMotorTurn)
v (N nom) Nominal velocity value [mm/min]. Output quantity CC
of the position controller
I (N int) Integral-action component of the nominal current CC
value [A];
CC 422: peak value, CC 61xx/CC 424: effective value

1774 HEIDENHAIN Technical Manual TNC 640


Analog Meaning CC
signals signal
I (nom) Nominal current value [A] that determines torque; CC
CC 422: peak value, CC 61xx/CC 424: effective value
I2-t (mot.) Current value of the I2t monitoring of the motor [%] CC
I2-t (pow. Current value of the I2t monitoring of the power CC
module) module [%]
PLCPrePgm The PLC operands (B, W, D, I, O, T, C) are recorded –
before the PLC program run. This means that the
values of the operands are read at the beginning of
the PLC program cycle. For types B, W and D the
contents are recorded, and for the other types the
logical state of the operands is recorded.
PLCPostPgm The PLC operands (B, W, D, I, O, T, C) are recorded –
after the PLC program run. This means that the
values of the operands are read at the end of the
PLC program cycle. For types B, W and D the
contents are recorded, and for the other types the
logical state of the operands is recorded.
Analog Analog axis/spindle: –
Analog voltage = nominal velocity value [mV]
SPLC-MC SPLC operands of the SPLC program of the MC –
(reserved)
SPLC-CC SPLC operands of the SPLC program of the CC CC
(reserved)
IpoDbg Diagnostic information for internal purposes –
CCDbg Diagnostic information for internal purposes CC
Contour Circular interpolation test, contour deviation in mm –
deviat.
AFC diagnosis AFC option diagnosis information (Adaptive Feed –
Control - option #45). The following parameters are
available:
 Spindle utilization
 Override factor
 Cutting condition
 Position
 Status
 Spindle utiliz. accord. to DSP
 Load for breakage monitoring
 Upper overload limit
 Lower overload limit
 Idle load of spindle
The sampling interval should match the control loop
cycle.
Utilization Utilization of a motor with respect to its nominal CC
working point in %. See "Current utilization of drive
motors" on page 1533.

January 2015 6.24 Integrated oscilloscope 1775


Analog Meaning CC
signals signal
RTC Output channel of the real-time coupling function. If –
you set CfgRTCoupling/testMode=TRUE, the
result of an RTC calculation formula will be output
on the RTC channel instead of being applied to the
position nominal value of the corresponding axis.
For further information, See "Real-time coupling
function" on page 1147.
Comp Diagnosis information on non-linear and linear axis –
error compensations and the axis-related PLC
temperature
Torque_LAC Estimated mass moment of inertia (for rotary axes) CC
from Load Adaptive Control (LAC), if active
Mass_LAC Estimated mass (for linear axes) from Load CC
Adaptive Control (LAC), if active
i_ist Momentary actual current of the motor in A CC
i_dist Momentary actual magnetizing current of the motor CC
in A
P_elec Electric power consumption of the motor in W CC
P_uv Current power output of the supply module in W CC
a. If you are migrating from the iTNC 530:
The signal s nom always represents the filtered axis motions (in
contrast to the oscilloscope signal s nom with the iTNC 530).

Digital signals Meaning


M PLC marker
I Input
O Output
T Timer
C Counter
X Reserved

Note

The PLC operands are addressed with numbers in the oscilloscope. You get
the numerical addresses from the PLC diagnostic function Watch List.

Sampling rate The resolution of the internal oscilloscope is at most 600 µs.
This means that even for CC signals, the signal is only recorded every 600 µs.
However, since the CC 61xx and CC 424 operate with control-loop cycle times
< 600 µs, undersampling results at higher frequencies. This can result in
misinterpretation of the oscilloscope image.
For the CC 61xx and CC 424, the internal oscilloscope displays effective
values, as opposed to the peak values of the CC 422.

1776 HEIDENHAIN Technical Manual TNC 640


6.24.2 Preparing a recording

Starting the  Switch to the Programming operating mode


oscilloscope
 Press the MOD key
 Enter the code number 688379. The TNC 640 opens the integrated
oscilloscope and displays the setup menu for signal selection:

Int the setup menu, specify the following:


Output:
 Select whether the nominal speed value is to be output as a jump or a ramp:
• If you do not select a setting, then the programmed feed rate, the kV
factors and acceleration values that you have specified via machine
parameters, will be effective.
• If you select step, a step will be output as nominal velocity value when
you press the axis-direction buttons in the Manual operating mode. During
output, the position control loop is open. A step can be output only if code
number 688379 or 807667 has been entered.
Display mode:
 Select the time interval for recording the signals:
• YT: Chronological depiction of the channels
• YX: Graph of two channels
• Circle: Circular interpolation test, see page 1790

January 2015 6.24 Integrated oscilloscope 1777


Sampling time:
 Select the time interval for recording the signals:
• CC clock: Time interval = 0.6 ms
• IPO clock: Time interval = interpolator (IPO) clock
(from MP_System/CfgCycleTimes/ipoCycle)
• PLC clock: Time interval = PLC clock
(results from MP_System/CfgCycleTimes/plcCount * interpolator clock)
3000 grid points (events) are stored. The time interval determines the duration
of recording.
Examples:
 0.6 ms ⋅ 3000 = 1.8 s
 3 ms ⋅ 3000 = 9 s
 21 ms ⋅ 3000 = 63 s
Channel 1 to channel 6
Specify the signals to be recorded:
 Assign the channels of the analog signals to be recorded to the respective
axes.
 Specify the operand type (B,W,D,I,O,T,C) and the address for the recording
of PLC operands.
 Use the SAVED setting to "freeze" the signal last recorded for this channel.
This means that the recorded values remain available on the display. For
example, you can use them to record a reference curve for use in future
measurements.
Trigger conditions:
Specify the trigger conditions in the following input fields:
Trigger:
 Set the trigger condition.
• Single shot: After pressing the soft key, the next 3000 events are stored.
• Free run: Recording is started and ended by soft key. When you press the
STOP soft key, the last 3000 events (max.) will be saved.
• Channels 1 to 6: Recording begins when the trigger condition of the
channel selected here is fulfilled.
• Channel 1 + L to channel 6 + L: Recording begins when the trigger
condition of the channel selected here as well as the trigger conditions of
the digital signals (trigger condition "logic") are fulfilled. The trigger
conditions are linked by a logical AND operation.
• Logic: Recording begins when the trigger condition of the digital signals
is fulfilled (trigger condition "logic").

1778 HEIDENHAIN Technical Manual TNC 640


Slope (edge)
 Set the time when triggering is to occur:
• +: Trigger at rising edge
• –: Trigger at falling edge
Trigger Threshold:
 Enter the trigger threshold (you will find the appropriate units of measure in
the signals table on page 1774).
Pre-trigger:
 Select a value from the selection box.
Recording begins at a time preceding the trigger time point by the value
entered here.
The Output and Feed rate F fields are reserved.

January 2015 6.24 Integrated oscilloscope 1779


Setup for digital
To call the configuration for digital signals:
signals
 Press soft key MIOTC KONFIG.

Set:
 Select:
• X: Signal is displayed and considered as trigger
• Empty field: Signal is not displayed and not considered as trigger

Note

 You define the general trigger conditions ("Trigger" input field) and the
pre-trigger in the setup for analog signals.
 The trigger condition "logic" is fulfilled when all triggers set in "M I O T C
selection" are fulfilled (AND-gating).

 Trigger:
The trigger is taken into consideration only if Selection=X is set.
• X: No trigger
• 0: Trigger at 0-level
• 1: Trigger at 1-level
 Operand: Type and number of the PLC operand’s symbolic name
• M: Marker
• I: Input
• O: Output
• T: Timer
• C: Counter
• X: Diagnostic information for internal purposes
• s: Symbolic API operand
After selection, the symbolic API operand can be selected over the
SYMBOL LIST soft key.

1780 HEIDENHAIN Technical Manual TNC 640


6.24.3 Recording signals
Change to the Recording operating mode:
 Press the OSCI soft key.

For every channel, the type and resolution of the analog signal are shown in
the left status field. The operand type and address are listed for digital signals.

Starting and
To start recording:
stopping the
recording  Press the START soft key.

To stop recording:
 Press the STOP soft key.
To stop the display:
 Press the DISPLAY STOP soft key.

January 2015 6.24 Integrated oscilloscope 1781


Starting signal To start the signal recording in the oscilloscope before the first PLC scan,
recording before proceed as follows:
the first PLC scan
 Start the control.
 Do not acknowledge the Power interrupted message with the CE key;
instead, enter the code number 807667 to switch to the PLC programming
mode of operation.
 Press the COMPILE soft key.
 Press the SELECT + COMPILE PLC PGM soft key and press the SELECT soft key
to compile the MAIN_PGM.SRC PLC main program manually. The "PLC
program could not be started" error message can be ignored.
 Select the desired data in the oscilloscope and press the START soft key to
start recording.
 Acknowledge the power interruption with the CE key.

1782 HEIDENHAIN Technical Manual TNC 640


Trigger conditions: Trigger and pre-trigger conditions:
 Trigger=Single shot: 3000 events beginning from the start are recorded.
 Trigger=Free run: The last 3000 events (max.) before the STOP soft key is
pressed will be saved.
 Trigger condition defined: The time when recording ends depends on the
setting of the pre-trigger.
• Pre-trigger=0 %: 3000 events beginning from the fulfilled trigger
condition are recorded.
• Pre-trigger=25 % (or 50 %, or 75 %): 75 % (or 50 % or 25 %) of the
3000 events beginning from the fulfilled trigger condition are recorded.
• Pre-trigger=100 %: Recording is stopped. The last 3000 events before
the fulfilled trigger condition are recorded.

Note

If the trigger condition is fulfilled before the corresponding number of


events have been stored when the pre-trigger is set to 25 %, 50 %, 75 %
or 100 %, then correspondingly fewer events are recorded.

During recording, the selected signals are continuously displayed. You can
freeze the display of the signals with the DISPLAY STOP soft key. This does
not affect the recording of the signals.
The recorded data remain stored until you start recording again or activate
another graphic function.
A fulfilled trigger condition is indicated with a "T" in the status field at right
below the display area.

To hide/show gridlines:
 Press the GRID soft key.

January 2015 6.24 Integrated oscilloscope 1783


6.24.4 Analyzing the recording

Recording After recording has been completed, the oscilloscope shows the memory
completed contents. The information in the status field below the display area refers to
the displayed events. It has the following meanings (see figure below):
 Left number: Time the "leftmost" event was recorded
 Right number: Time the "rightmost" event was recorded
 The bar symbolizes the displayed range relative to the memory content.
The fulfillment of the trigger condition is designated as "t0" (t=0). Events that
were recorded before the trigger condition was fulfilled are given a negative
time. If no trigger condition was defined, the beginning of the recording is
designated as "t0."

1784 HEIDENHAIN Technical Manual TNC 640


Changing the The following soft keys influence the entire display range (all signals):
display
 Shift the display range to the left.

 Shift the display range to the right.

 Decrease horizontal resolution.

 Increase horizontal resolution.

Increment The increment used when shifting the display or shifting the cursor is shown
in the status field at bottom left, with the code "sk: ....." (see the "cursor
information" illustration).
 The Page Up key increases the increment, and the Page Down
key decreases it.

Analyzing an
 Use the arrow up and arrow down keys to select the channel
individual analog to be analyzed.
signal
The selected channel is indicated with an asterisk (*). At the same time, the
cursor is activated and placed on the selected channel.
Shown in the status field (bottom left) are (see "cursor information" figure):
 Code "t1: .....": Cursor position in [s], referenced to t0
 Code "Cu1: .....": Signal size at the cursor position

Shifting the cursor:


 Shift the cursor with the right arrow and left arrow keys.

January 2015 6.24 Integrated oscilloscope 1785


Influencing the
signal display Soft keys that influence the signal display:
 Shift the signal downward.

 Shift the signal upward.

 Decrease the vertical resolution.

 Increase the vertical resolution.

 Optimum vertical resolution; The signal is centered on the


zero line and always remains in the display area.
 Undo vertical shifts.

 Invert the signal (multiply by –1).

Second cursor
 Activate/deactivate second cursor.

The information for the second cursor is relative to the first cursor. It is
shown in the status field (see "Cursor information" figure):
 Code "t2: .....": Cursor position in [s], referenced to the first cursor
 Code "Cu2: .....": Signal referenced to the first cursor position

Cursor information:

1786 HEIDENHAIN Technical Manual TNC 640


6.24.5 Saving and loading recordings
You can save the recorded signals and all settings in one file. The file must
have the extension SCO (oscilloscope trace file).
You can load and evaluate saved SCO files in the oscilloscope. HEIDENHAIN
also makes the PC program TNCscopeNT available for evaluating SCO files.

To load the oscilloscope trace file:


 Press the LOAD soft key.
 Enter the path in the "Open" dialog box.
 Press the OK soft key or button.

To save the oscilloscope trace file:


 Press the SAVE soft key.
 Enter the path in the "Save As" dialog box.
 Press the OK soft key or button.

January 2015 6.24 Integrated oscilloscope 1787


6.24.6 Operation via NC program
It is possible to operate the integrated oscilloscope from the NC program. This
enables you, for example, to automate certain machine analyses. When the
oscilloscope is operated from the program, it behaves in the same way as
during manual operation. There is no additional locking, i.e. the active
recording can be stopped with the STOP soft key, restarted, or the settings can
be changed. Remote access to the internal oscilloscope during recording can
also disturb the recording process. FUNCTION SCOPE START reserves the internal
oscilloscope for the respective function. The oscilloscope is released
automatically with FUNCTION SCOPE STOP, or at the end of the program (PGM
END) and selection of a new NC program. To call the new functions, enter the
code number 555343. Under SPEC FCT, press the FUNCTION SCOPE soft key
and then the PROGRAM FUNCTIONS and PLC FUNCTIONS soft keys:
 FUNCTION SCOPE START JOB "INI file" RESULT "RES file"and
FUNCTION SCOPE START JOB QS1 RESULT QS2
This syntax starts the oscilloscope. The file specified in JOB initializes the
oscilloscope (channels, measurands to be recorded, trigger conditions,
sample time, ...). A *.SCO file is used for the initialization. To do this, set the
desired configuration in the internal oscilloscope and save the settings in a
*.SCO file. Use the SAVE soft key in the oscilloscope to save the
configuration. The file then only contains the current oscilloscope settings
without the measured data.
The path to which the oscilloscope is to save the measured data is indicated
in Result. This *.SCO file is generated automatically in the specified path as
soon as the data is saved with FUNCTION SCOPE STORE.
The two parameters JOB and RESULT are mandatory. However, you can
specify them independently of each other as explicit text or as a QS
reference.
The INI file and the RES file must be entered with absolute paths. Both files
must have the extension *.SCO for oscilloscope recordings. If an INI file
already contains oscilloscope data, this data will be ignored during
evaluation.
This function reserves the internal oscilloscope, and therefore the
oscilloscope cannot be started with the OSCI soft key.
 FUNCTION SCOPE STORE
If you call FUNCTION SCOPE STORE, which does not contain parameters, the
storage of the data in the buffer of the oscilloscope is forced from within the
NC program. If a trigger condition has been fulfilled before the STORE
function is called, the results for the trigger condition are written to the file
indicated in RESULT. You need to stop recording before you can save the
data.
This function releases the internal oscilloscope, and therefore the
oscilloscope can be started again with the OSCI soft key.

1788 HEIDENHAIN Technical Manual TNC 640


 FUNCTION SCOPE STOP Q1 and
FUNCTION SCOPE STOP
This syntax stops the recording and switches the oscilloscope off again. If
the execution of an NC program is to vary depending on whether a trigger
condition has occurred or not, a Q parameter can be transferred with the
shutdown function. A description of the transferred parameter in the
oscilloscope management gives feedback on the recording process. If the
NC program is structured appropriately, and especially if a default value
other than 1 is assigned to the parameter, this makes it possible for the user
to derive whether a trigger condition has been met and to select appropriate
branches that, for example, restart the oscilloscope or write the
oscillograms to the RES file. The following parameter values can occur:
0 = Recording had already been stopped before the SCOPE STOP function was
triggered. The trigger condition had not been met since SCOPE START.
1 = Recording was stopped by the SCOPE STOP function. The trigger
condition had not been met since SCOPE START.
2 = Recording had already been stopped before the SCOPE STOP function was
triggered. The trigger condition had been met since SCOPE START.
3 = Recording was stopped by the SCOPE STOP function. The trigger
condition had been met since SCOPE START.

Example NC program:
0 BEGIN PGM example
1 BLK FORM 0.1 Z X+0 Y+0 Z-20
2 BLK FORM 0.2 X+100 Y+100 Z+0
3 FUNCTION SCOPE START JOB “TNC:\Oszi_Settings.SCO“
RESULT “TNC:\MeasData.SCO“
4 L X+500 R0 FMAX M3
5 L X-500 R0 FMAX M5
6 FUNCTION SCOPE STOP
7 FUNCTION SCOPE STORE
8 END PGM example

January 2015 6.24 Integrated oscilloscope 1789


6.24.7 Circular interpolation test with the integrated oscilloscope
A circular interpolation test can now be conducted with the integral
oscilloscope.
 Start the oscilloscope and press the SELECTION soft key
 Under display mode, select the setting Circle
 At the desired channels, select as the signal type the setting
Contour deviat.
 Start recording. Press the soft keys OSCI and then START.
 Start an NC program in which a circle is programmed. The circle center point
must be at the origin of both axes.
 For lathe controls, the programs cir_xz_r10_f2000_f.nc and
cir_xz_r10_f2000_r.nc prepared for the circular interpolation test are
contained in the folder NCPS.
The starting points are X0 and Z0.
Example of a circular interpolation test with the integrated oscilloscope:
Actual position:
X +30
Y +0
NC program (example of milling control):
0 BEGIN PGM Circular interpolation test MM
1 CC X+0 Y+0
2 CP IPA+360 DR+ F1000
3 M30
4 END PGM Circular interpolation test MM

1790 HEIDENHAIN Technical Manual TNC 640


6.24.8 Configuring the colors of the oscilloscope display

Settings in the configuration editor MP number


System
DisplaySettings
CfgOsciColor
background 101401
channel1 101402
channel2 101403
channel3 101404
channel4 101405
channel5 101406
channel6 101407
logicTrace 101408
select 101409
grid 101410
cursorText 101411

 In the parameter object CfgOsciColor, set the colors for the oscilloscope.

MP_background
Background color
Available from NCK software version: 597110-01.
Format: Selection menu
Options: black
blue
light_gray
red
dark_gray
light_green
really_light_gray
really_dark_gray
light_violet
light_blue
light_red
medium_gray
yellow
white
Default: black
Access: LEVEL3
Reaction: NOTHING

January 2015 6.24 Integrated oscilloscope 1791


The colors defined in MP_channel1..6 are used for displaying the status
information for this channel and for displaying the curve progression. As soon
as a channel is selected, the color defined in MP_select is switched to.

MP_channel1
Color for channel 1
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: light_green
Access: LEVEL3
Reaction: NOTHING

MP_channel2
Color for channel 2
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: light_violet
Access: LEVEL3
Reaction: NOTHING

MP_channel3
Color for channel 3
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: light_blue
Access: LEVEL3
Reaction: NOTHING

MP_channel4
Color for channel 4
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: light_red
Access: LEVEL3
Reaction: NOTHING

MP_channel5
Color for channel 5
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: light_blue
Access: LEVEL3
Reaction: NOTHING

1792 HEIDENHAIN Technical Manual TNC 640


MP_channel6
Color for channel 6
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: light_red
Access: LEVEL3
Reaction: NOTHING

The color defined in MP_logicTrace is used for the display of the digital
signals.

MP_logicTrace
Color for logic-trace channels
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: yellow
Access: LEVEL3
Reaction: NOTHING

MP_select
Color for selected channel
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: white
Access: LEVEL3
Reaction: NOTHING

MP_grid
Color for gridlines
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: light_gray
Access: LEVEL3
Reaction: NOTHING

MP_cursorText
Color for grating
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_background
Default: dark_gray
Access: LEVEL3
Reaction: NOTHING

January 2015 6.24 Integrated oscilloscope 1793


6.25 Diagnosis with the online monitor (OLM)

6.25.1 Introduction
The On-Line Monitor (OLM) assists you in commissioning control components
and provides diagnostic functions to check them:
 Display of IPO internal variables for axes and channels
 Display of CC internal variables (if a CC is present)
 Display of hardware signal states
 Various trace functions
 Activation of spindle commands
 Enabling IPO internal debug outputs

The OLM is included in the control software.

Software structure

1794 HEIDENHAIN Technical Manual TNC 640


6.25.2 Using the OLM

Overview of the
menus

January 2015 6.25 Diagnosis with the online monitor (OLM) 1795
END and NEXT soft The NEXT soft key indicates that additional soft keys are available for this
keys menu level. The END soft key switches one level back.
 Press the NEXT soft key. The OLM switches to the next
soft-key row of this level.
 Press the END soft key. The OLM switches one level back. If
you press the END soft key on the main level, the OLM is
exited.

Keyboard and The OLM is operated using the soft keys of the control keyboard. The control
display screen is used for display.
The OLM distinguishes the following software and function areas:
 IPO
 Simulation IPO (SimIPO)
 PLC
 Trace
The software area or function area is selected by soft key on the "main level."
For hardware reasons, only a subgroup of the IPO functions is available for the
SimIpo. The available SimIpo functions work in the same way as the IPO
functions.

Starting and exiting To start the OLM:


the OLM
 Switch to the Programming operating mode.
 Press the MOD key
 Enter the code number 654321 for the TNC 640 to activate
the OLM main menu.

To exit the OLM:


 Change to the main level of the OLM.

 Press the END soft key.

1796 HEIDENHAIN Technical Manual TNC 640


6.25.3 Screen layout

Display of variables Example of screen layout when variables are displayed:

The OLM lists the variable designations, status designations, etc. in the dark-
highlighted boxes of the "main window."
The white-highlighted boxes contain the variable values. The OLM displays
the values of two axes or channels.
The axis designation or channel designation defined in the parameters is
shown in the column heading.
 Parameter for axis designation:
MP_System/CfgAxes/axisList(axisId)
 Parameter for channel designation for IPO:
MP_ChannelGroup/CfgChannelGroup/Machining/ChannelList
 Parameter for channel designation for SimIpo:
MP_ChannelGroup/CfgChannelGroup/Simulation/ChannelList
The term Index n in the column heading means that no axis or no channel is
defined for this index.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1797
The following general data is displayed in the bottom display line:
 Connected: Indicates the software or function area to which the OLM is
connected
• Ipo
• SimIpo
• PLC6
• none: No connection
 IpoCounter: Counts the IPO clock pulses
Note: The contents of the IpoCounter are also stored for trace information
and error messages.
 Ax/Chn-Number: Logical axis number or channel number (depends on the
selected function)
• Number at left: Left column
• Number at right: Right column
If the number of variables displayed exceeds the capacity of the main window,
use PageDown/PageUp to scroll to the next/previous group of variables. One
group consists of eight displayed variables.

Units The OLM displays data in the following units:


 Linear axes
• For position, length, etc: in [mm]
• For speed: in [mm/s]
• For acceleration: in [mm/s2]
 Rotary axes (spindles)
• For position, etc: in [°]
• For speed: in [°/s]
• For acceleration: in [°/s2]

Selecting axes and To select axes or channels, proceed as follows:


channels
 Press CTRL + UP ARROW / DOWN ARROW to influence the left column.
• CTRL + UP ARROW: Display the next axis/channel.
• CTRL + DOWN ARROW: Display the previous axis/channel.
 Press ALT + UP ARROW / DOWN ARROW to influence the right column.
• ALT + UP ARROW: Display the next axis/channel.
• ALT + DOWN ARROW: Display the previous axis/channel.
 Press UP ARROW / DOWN ARROW (without CTRL or ALT) to influence
both columns.
• UP ARROW: Display the next axes/channels.
• DOWN ARROW: Display the previous axes/channels.

1798 HEIDENHAIN Technical Manual TNC 640


Status display Example of screen layout for status display:

In the main window, the status of the binary variables is displayed. The status
is identified by the background color and the code letter.
 Green or "T": true
 Red or "F": false
 Yellow: The status is not defined yet
The information given about the display of variables also applies to the column
headings and the bottom display line.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1799
6.25.4 Group of NC axes

Nominal To select the PLC Nom Data function:


commands of the
 Press the Login Ipo soft key.
PLC (Plc Nom Data)

 Press the Axes soft key.

 Press the PlcNomData soft key.

The function displays the nominal commands of the PLC for each axis in the
following variables:

Variable Display
PlcSollStatus Axis status of the PLC as a bit line (listed in
PLC-Nom_State)
MaxAchsVorschub Maximum permissible axis feed rate in mm/s
AchsOverride Override value for each axis (1 = 100%)
TempKorr Temperature compensation in mm

1800 HEIDENHAIN Technical Manual TNC 640


IPO-internal The OLM displays the current IPO-internal variables of the selected axes (also
variables (Ipo Act spindle axes).
Data or Spindle)
To select the Ipo Act Data function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Axes soft key.

 Press the Ipo Act Data soft key.

The display of the current IPO-internal variables is also activated when you
select the Spindle function.
 Press the Login Ipo soft key.

 Press the Axes soft key.

 Press the Spindle soft key.

The function displays the following variables:

Variable Display
axisState1 Bit line (listed in IpoActState 1)
axisState2 Bit line (listed in IpoActState 2)
driveCmdWord Command for universal controller
relNomPos Relative nominal position
absNomPos Absolute nominal position
absActPos Absolute actual position
absNomFeed Absolute nominal velocity
absActFeed Absolute actual velocity
absNomAcc Absolute nominal acceleration
absActAcc Absolute actual acceleration
actParSet Current parameter set index
ipoCtrlWord Internal control bit line of nominal commands in the IPO
chain
compensPos Compensation value
masterId Active master during synchronism
lag Current following error

January 2015 6.25 Diagnosis with the online monitor (OLM) 1801
Variable Display
lagPeak Peak of current following error. The maximum peak of
the following error is determined and displayed here.
Use CLEARPEAKLAG to delete it.
targetPos Absolute target position of the axis
totalDistance Total travel of the axis
motorTemperature Motor temperature in degrees Celsius
utilization Utilization of axis in %
rpfOffset Coordinate system offset between switch-on position
and reference point
spindleTurns. Spindle revolutions – the value of the active spindle is
calculated.
ModCounter Only available for modulo axes. This counter is
generated with each pass of the zero position of the
momentary nominal position value with moduloaxes.
All positions leaving the IPO (display, PLC, etc.) are
calculated from the current position (0 to 359.9999
degrees) + moduloCounter * 360. The counter can be
set, cleared, stopped and restarted from the geometry
module. The modulo counter is saved cyclically in
SRAM and restored during control startup.
ModCounterAct Only available for modulo axes. The counter is updated
with each zero crossover of the current actual position
value of a modulo axis. All positions leaving the IPO
(display, PLC, etc.) are calculated from the current
position (0 to 359.9999 degrees) + moduloCounter *
360. The counter can be set, cleared, stopped and
restarted from the geometry module.
absNomPosOfFilt1 Absolute nominal position before the nominal position
value filter (see configuration data System/CfgFilter)
absNomPosOfFilt2 Absolute nominal position before the nominal position
value filter (see configuration data System/CfgFilter)
absNomPosBase Nominal position without compensation of virtual axes
lastIpoPos Last interpolated nominal value of interpolator
syncPosDiff Position difference during spindle synchronism (for
slave spindle)
absTouchPos Absolute actual position provided by measuring system
virtStartPos Starting position of virtual axis (reference position).
Basis for determining the relative virtual offset.
requestedPos Position commanded by HMI for returning to the
contour

1802 HEIDENHAIN Technical Manual TNC 640


Variable Display
absProgFeed Currently programmed speed
PosWithChainTime The value is "pre-calculated" in the spindle module and
then processed in the internal path calculation. This
value considers the runtime of the interpolator.
realAxisIdent Number of the real axis to which a virtual axis is
connected.
relActPos Relative actual position per IPO clock
xNom Nominal position value on the CC interface (in
interpolation increments)
absActPosNonMod Absolute actual position without any modulo
calculation (for non-modulo axes:
absActPosNonModulo == absActPos).
absSollPosNonMod Absolute nominal position for modulo axes without any
modulo calculation (only required for CC 424).
acceptableLag1 Permissible following error for warning.
acceptableLag2 Permissible following error for emergency stop error.
axisCommand Internal axis commands (e.g. freeze override, from
interpolator to spindle during thread cutting)
driveCmdWord Command for universal controller
virtOffsetOn Feedforward of virtual offset is active.
rpfActiv Reference run for this axis is active.
measureLatch Touch probe latch is active.
Active
counterAbs Encoder monitoring is active.
PosCheck
checkPosStandstill Standstill monitoring is active.
toolCorrDelta Asynchronous tool compensation per IPO clock.
toolCorrNom Nominal value for asynchronous tool compensation.
toolCorrAkt Asynchronous tool compensation path executed until
now.
wpCorrDelta Asynchronous position compensation per IPO clock.
wpCorrNom Nominal value for asynchronous position
compensation.
wpCorrAkt Asynchronous position compensation path executed
until now.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1803
Internal working To select the Plc Ipo Data function:
data of PLC-IPO
 Press the Login Ipo soft key.
(Plc Ipo Data)

 Press the Axes soft key.

 Press the Plc Ipo Data soft key.

The function displays the following variables:


 act-Cmd (currently active command)
 last-Cmd (last assigned command)

Variable Display
state Possible states:
 Finished: Command acknowledged.
 Idle: Axis does not work and can be assigned a command.
 MovingByHand: Manual direction key or PLC positioning is
active.
 StoppingByHand: Deceleration until standstill
 WaitForPlcPosQuit: Waiting condition until the last
nominal-position value has reached the axis (run times in the
IPO chain)
 RpfStart: Status during reference run
 RpfFastToSwitchPreo: Status during reference run
 RpfFastToSwitch: Status during reference run
 RpfFastFromSwitchPrep: Status during reference run
 RpfFastFromSwitch: Status during reference run
 RpfSlowToSwitchPrep: Status during reference run
 RpfSlowToSwitch: Status during reference run
 RpfAktivatePulse: Status during reference run
 RpfWaitForPulse: Status during reference run
 RpfWaitForStop: Status during reference run
 RpfLatchPos: Status during reference run
 RpfFinish: Status during reference run
 WaitForSpindlemoveQuit: Waiting for acknowledgment of
spindle (e.g. speed reached or synchronism switched on,
etc.)
 Spindlemove: Spindle rotates at programmed speed.

1804 HEIDENHAIN Technical Manual TNC 640


Variable Display
typeOfMove Possible states:
 NONE = 0: Axis is in IDLE state
 AXKEY: Manual direction key
 PLCPOS: PLC positioning
 LIFTOFF: Lift off at Cycle stop
 RESTORE_POS: Return to contour (block scan)
 SYNCHRON: Synchronism (only for spindles)
 PLCMEASURE: Measuring with PLC axes
 SG_POS: Positioning with safety-related (SG) package
 REVOL_FEED: Feed per revolution
 SPINDLE: Command to spindle (M3, M4, M19 etc.)
noLimitSw With PLC positioning, SW limit switch monitoring can be
deactivated (T = deactivated)
error The following errors can occur:
 AxisAlreadyActive = 1: Axis is already working and cannot be
given a new command.
 PlcposAlreadyActive: Axis is already working and cannot be
given a new command.
 KeyposAlreadyActive: Axis is already working and cannot be
given a new command.
 OnlyOneAxWithKinem: When the kinematics model is
switched on (M128), the PLC-IPO can give commands to
only one axis at a time.
 SweAlreadyActive: Axis is located at software limit switch.
 MovementCanceled: Movement was canceled.
 TsSwitched: Touch probe has triggered
 ErrorPending: Touch probe error must be cleared first (in the
error window).
 NoToolAx: No tool axis.
 MinFeed: Too small a feed rate is programmed.
 M19_ACTIVE: M19 is active; axis cannot be moved.
 NoChannel: Feed-per-revolution command was sent to an
axis without NC channel.
 M19WithoutRef: Not used.
 ReconfigActive: Do not move any axis while changing
parameters.
 AlreadyMaster: This axis is a master and cannot be a slave
at the same time (synchronism).
 AlreadySlave: Only the SYCHRON_OFF command is
allowed for a slave spindle.
 NoSlave: The SYNCHRON_OFF command was sent to a
non-slave spindle.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1805
Variable Display
Vb-Prog Programmed feed rate (mm/s)
Vb-Act Active feed rate
Source Type of handwheel (serial, e.g. HR410, etc., or encoder)
Dist/Revol Traverse per handwheel revolution
DistMax Maximum traverse range (+/–) of handwheel (e.g. M118).
Factor Internal conversion factor (dist./rev. / incr./rev.)
Impulse Handwheel pulses at current IPO clock
ImpulseLast Handwheel pulses at previous IPO clock
Position Handwheel position
PosRaster Handwheel position (for handwheel with detent).
InputsToPL Handwheel keys are sent to the PLC as bit line
C
OutputsFro e.g. LEDs on the HR 410
mPLC

1806 HEIDENHAIN Technical Manual TNC 640


Data from the The data of the interpolator and the PLC-IPO are collected in the module
IpoOffset module IpoOffset.
(Offset Data)
To select the Offset Data function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Axes soft key.

 Press the Offset Data soft key.

The function displays the following variables:

Variable Display
offsetIpoSteuer Internal control bit line
IpoSteuer Internal control bit line
IpoSteuerErlaubt Internal control bit line
handValid Nominal values from the PLC-IPO are available.
offsetPosition Nominal position (relative) from PLC interpolator and/or
kinematics.
kinematikOffset Incremental offset of kinematics.
autoValid Nominal values from the interpolator are available.
sollPosition (Absolute) nominal position from the interpolator.
sollPosBase Absolute position (sum of SollPosition and
OffsetPosition)
lastPosition Absolute position (sum of sollPosBase and virtual
offset)
lastPosWithoutG Position of the axis without grinding offset. The axis
has reached this position by executing the movement
in the standard interpolator.
grindingValid Validity of the value in grindingOffset.
True: The content of grindingOffset is added to the
nominal axis value.
grindingOffset Offset value generated by the grinding interpolator.
channelNr Current channel number

January 2015 6.25 Diagnosis with the online monitor (OLM) 1807
Variable Display
The following variables coordinate the movements of the real and virtual
axes. The nominal position value of the virtual axes is added to the nominal
position value of the real axis (feedforward of nominal value). This applies
only to the relative movements of the virtual axis.
virtOffsValid Validity of the value in virtOffset.
True: virtOffset is effective.
virtOffset Value of the relative movement of the virtual axis. (Only
important for real axes.)
virtOffsActive = The feedforward of the nominal position value is
true configured and effective. (Only important for virtual
axes.)
virtStartPos Starting position of the virtual axis before feedforward
of nominal position value is activated. (Only important
for virtual axes.)
realAxisNr Number of the real axis to which the virtual axis was
connected. (Only important for virtual axes.)
virtOffsetOn Feedforward of position value of virtual axis is active.
(Only important for real axes.)
channelNr Assignment of the axis to the channel.

Example of coordinated movements of real and virtual axes:


 Absolute position of virtual axis = 5.0
 The virtual axis is moved to position 8.0.
 Resulting virtual offset (virtOffset) at the end of movement = 3.0.

1808 HEIDENHAIN Technical Manual TNC 640


Data of the active To select the CC Data function:
CC (CC Data)
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Axes soft key.

 Press the CC Data soft key.

The function displays the following variables:

Variable Display
ccIndex Current position of the axis (on CC0 or CC1).
axIndex Index of this axis on the current CC.
N_SOLL_IN Nominal velocity transferred to the CC (internal units in
the CC).
V_VORST Nominal feedforward velocity transferred to the CC
(internal units in the CC).
N_SOLL_IN_DEL Nominal acceleration transferred to the CC (internal units
TA in the CC).
N_SOLL_IN_CHK Handshake bit
DriveCmdWord Command word
XNom Nominal position transferred to the CC (only for CC424)
XNomHsc Nominal position transferred to the CC (only for CC424)
boDREG_FREI Controller enable
S_IST Actual position in the CC interface.
S_IST_CHK Handshake bit
N_IST Actual velocity
S_REF Reference position
S_REF_CHK Handshake bit
S_3D Measurement result (position)
S_3D_CHK Handshake bit
Lag Following error on the CC (only for CC424)
S_IST_ROT_ENC Position of the motor encoder
S_IST_CHK_ROT_ Handshake bit
ENC
Utilization Utilization of drive
MotTemp Motor temperature
Dummy01

January 2015 6.25 Diagnosis with the online monitor (OLM) 1809
Nominal status The nominal status of the axes is requested by the PLC.
of the axes
To select the PLC Nom State function:
(Plc Nom State)
 Press the Login Ipo soft key.

 Press the Axes soft key.

 Press the Plc Nom state soft key.

The function displays the status of the following binary variables (the
descriptions refer to the status "true"):

Variable Display
RefSwitch Trip dog
ActualToNom Transfer the current values as nominal values.
ClampRequest Request for clamping this axis.
PosCtrlRequest Request for position feedback control for this axis
NoMonitoring No monitoring of following error or standstill
NoFeedhold Feed rate stop is not set
AntriebEin Request to switch the drive on
ActToNomStrb Not used
CurrentOff Switch off the current for wye/delta connection
SpiChangeDir Change the direction of spindle rotation
ResetRefOk Reset the Ref OK flag when changing from 0 to 1
NoPosDiffCheck Suppress the position difference check

1810 HEIDENHAIN Technical Manual TNC 640


Actual status 1 of To select the Ipo Act State 1 function:
the axes
 Press the Login Ipo (or Login SimIpo) soft key.
(Ipo Act State 1)

 Press the Axes soft key.

 Press the Ipo Act State 1 soft key.

The function displays the status of the following binary variables (the
descriptions refer to the status "true"):

Variable Display
CMD_ACTIVE Command is active for this axis
IM_FENSTER Following error is within the positioning tolerance
SPEED_OK Feed rate is OK
V_OK No acceleration active
LGR_AKTIV Position feedback control is active
ANTRIEB_EIN Drive is on
ANTRIEB_FREI Drive ready for operation
MOVING Axis is in motion (feed rate > 0)
DIRECTION Direction of motion (true: negative direction or
standstill)
SCHLEPP_OK Not used
REF_OK Axis was homed
VORSCHUB_FREI Feed rate has been enabled (no feed stop)
NULLPULS Reference pulse in one IPO cycle
LATCH_GUELTIG Probe value is valid
ISTW_UEBERNOM The current value was transferred instead of the
MEN nominal value.
SCHLEPP_AUSF_ If position feedback control is activated, the "old"
REQ position is approached (no compensation of following
error)
REQU_POS_ Requested position is reached
REACHED
KEINE_UEBERW Request from PLC: No servo lag and standstill
monitoring
MOVING_VNOM Axis is in motion (nominal feed rate > 0)
SWE_POS Positive software limit switch is reached
SWE_NEG Negative software limit switch is reached
RELEASE_ Status of axis-specific enabling (X150/X151)
CONNECTOR

January 2015 6.25 Diagnosis with the online monitor (OLM) 1811
Variable Display
BREAK_ON Request to PLC for activating the brake within 100 ms
POS_ERROR Positioning error
I2T_WARN Warning during I2t monitoring
I2T_ERROR Error during I2t monitoring
TEMP_ERROR Error during temperature monitoring
SG_REFERENCED Axis was homed (SG: safety-oriented control)
SG_POS_TESTED Axis was "tested" by the user (SG: safety-oriented
control)
SG_PREPARED Axis was homed and "tested" by the user (SG: safety-
related control)
SG_SAVE Safe axis (SG: safety-oriented control)

1812 HEIDENHAIN Technical Manual TNC 640


Actual status 2 of To select the Ipo Act State 2 function:
the axes
 Press the Login Ipo (or Login SimIpo) soft key.
(Ipo Act State 2)

 Press the Axes soft key.

 Press the Ipo Act State 2 soft key.

The function displays the status of the following binary variables (the
descriptions refer to the status "true"):

Variable Display
NO_CONTROL Axis is not controlled (internal IPO status)
SPEED_CONTROL Speed control is active (internal IPO status)
POS_CONTROL Position control is active (internal IPO status)
INTERNAL_ERROR Error has occurred (internal IPO status)
CHANNEL_AXIS Axis belongs to a channel
CHANNEL_ Axis is a spindle of a channel
SPINDLE
PLC_AXIS Axis received a command from the PLC
PLC_SPINDLE Axis is used as spindle
IS_ACTIVE Axis is physically available and can be given a command
IS_MANUAL Axis is a noncontrolled counter axis
IS_VIRTUAL Virtual axis whose nominal position values can be added
to those of other axes. (Axis does not have its own
servo drive.)
IS_DISPLAY Axis is only displayed. (Axis does not have its own servo
drive.)
NORMAL_FEED Feed rate in "travel/minute."
REVOL_FEED_ Feed rate in "travel per revolution" in the manual control
MANUAL mode.
REVOL_FEED_ Feed rate in "travel per revolution" in the automatic
PROGR mode.
VCONST_FEED Only for spindles – Feed rate at constant cutting speed
NC_CMD_ACTIVE Command from the NC is active
PLC_CMD_ACTIVE Command from the PLC is active
HR_ACTIVE Handwheel is active
NC_STOP_ACTIVE NC stop is active in the channel

January 2015 6.25 Diagnosis with the online monitor (OLM) 1813
Variable Display
SP_SPEED_ Only for spindles – last spindle speed reached
REACHED
SP_MASTER Axis is master spindle (for spindle synchronism)
SP_SLAVE Axis is slave spindle (for spindle synchronism)
SP_SYNC_ Last spindle speed reached (for spindle synchronism)
REACHED
LGR_REQUEST Only for spindles – IPO-internal request for position
feedback control
TAKE_CYC_DATA Use the nominal values from the cyclic message
IS_NOT_ACTIVE Axis was configured but is not available physically
IS_ENDAT Axis with EnDat encoder

1814 HEIDENHAIN Technical Manual TNC 640


Status of the axes To select the Diag State function:
(Diag State)
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Axes soft key.

 Press the Diag State soft key.

The function displays the status of the following binary variables (the
descriptions refer to the status "true"):

Variable Display
OwnFeedhold No feed-rate enable from the PLC for this axis
OtherFeedhold No feed-rate enable from the PLC for an axis of the
kinematics
NewSlope Internal use
NoAntriebFrei No drive enable by the PLC
OwnPosCtrl Position feedback control not active
OtherPosCtrl Position feedback control not active in an axis of the
kinematics
Override=0 Override at 0%
OffsetCtrl Internal use
TakeCycData Internal use
PlcMaxFeed=0 MaxFeed from the PLC is 0
TsMaxFeed=0 MaxFeed from the touch-probe table and/or from
parameter "maxTouchFeed" is 0
WorkingOutLag Following error is corrected

January 2015 6.25 Diagnosis with the online monitor (OLM) 1815
Counters for axis To select the Diag Counter function:
commands
 Press the Login Ipo (or Login SimIpo) soft key.
(Diag Counter)

 Press the Axes soft key.

 Press the Diag Counter soft key.

All counters are reset to 0 when the control is started. The function displays
the following counters:

Variable Display
cntrActToNom Number of nominal/actual position captures
cntrFeedHold Number of changes of the feed-rate enable
cntrM3 Number of M3 commands
cntrM4 Number of M4 commands
cntrM5 Number of M5 commands
cntrHwheel Number of handwheel commands

1816 HEIDENHAIN Technical Manual TNC 640


Group of axis The OLM transfers the axis commands directly to the axis. The current IPO
commands internal variables are displayed in the display boxes.
The commands apply to the axis selected in the left column.
To select the axis commands:
 Press the Login Ipo soft key.

 Press the Axes soft key.

 Press the Plc Ipo Data soft key.

 Press the ActPos=0 soft key or a soft key for another


command.

Axis commands
Set axis to position 0.

Set axis to position 1000.

Set axis to position –50.

Restore original axis data.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1817
Switching the The active parameter set of an axis can be switched for test purposes.
parameter set of an
To select the Change ParSet function:
axis (Change
ParSet)  Press the Login Ipo (or Login SimIpo) soft key.

 Press the Axes soft key.

 Press the Change ParSet soft key for the OLM to open the
"Change ParSet" dialog box.
 Enter the required data in the dialog box (see below).

 Confirm with OK—the OLM switches to the defined


parameter set.

"Change ParSet" dialog box:

Dialog box entries:


 Axis-Index: Logical axis number
 ParSet-Index: Index of parameter set

1818 HEIDENHAIN Technical Manual TNC 640


Deleting the The IPO saves the greatest following error (PeakLag) that occurred. The Clear
following error PeakLag function deletes this variable for all axes.
(Clear PeakLag)
To select the Clear PeakLag function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Axes soft key.

 Press the Clear PeakLag soft key.

Deleting the Deleting the reference point is necessary for being able to assign a new
reference point reference-run command. The function is effective for all axes.
(Clear RefOk)
To select the Clear RefOK function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Axes soft key.

 Press the Clear RefOK soft key.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1819
6.25.5 Group of spindle commands
The OLM transfers the spindle commands directly to the spindle. The current
IPO internal variables are displayed in the display boxes.
 The standard spindle commands apply to the spindle selected in the left
column.
 When you use spindle synchronism commands, the following
assignments apply:
• Spindle in left column: Master spindle
• Spindle in right column: Slave spindle

To select the spindle commands:


 Press the Login Ipo soft key.

 Press the Axes soft key.

 Press the Plc Ipo Data soft key.

 Press the Spindle soft key.

 Press the M3 soft key or a soft key for another spindle


command.

In the commands for spindle synchronism, additionally specify the direction of


rotation (M3 or M4).

Spindle commands
Spindle rotates (at 123 rpm) in M3 direction

Spindle rotates (at 234 rpm) in M4 direction

Spindle is stopped

The spindle rotates at constant cutting speed (2000 m/s in


M3 direction)
Spindle point stop at 0°

Spindle point stop at 179°

1820 HEIDENHAIN Technical Manual TNC 640


commands for spindle synchronism
Spindle synchronism:
 Same direction of rotation
 Speed ratio master/slave: 1/1
Spindle synchronism:
 Same direction of rotation
 Speed ratio master/slave: 1/2
Spindle synchronism:
 Reversed direction of rotation
 Master slave speed ratio: 1/1
Spindle synchronism:
 Same direction of rotation
 Master slave speed ratio: 1/1
 Angle offset: 42°
Spindle synchronism:
 Reversed direction of rotation
 Speed ratio master/slave: 2/1
 Angle offset: –25°
Switch off spindle synchronism

January 2015 6.25 Diagnosis with the online monitor (OLM) 1821
6.25.6 Group of NC channels

Data of the To select the Ipo Data function:


interpolator
 Press the Login Ipo (or Login SimIpo) soft key.
module (Ipo Data)

 Press the Channels soft key.

 Press the Ipo Data soft key.

The function displays the following variables:

Variable Display
State Possible IPO states:
 Idle: IPO is idle (start-up)
 RdNextMsg: IPO is waiting for job—reads from its
input queue
 Running: IPO is working (traverses the axes)
 Waiting: Waiting during synchronism between IPO,
PLC and channel object
 WaitingForLr: Waiting to ensure that the nominal
value last generated was received by axes (IPO
chain)
 WaitingForCancel: Waiting for GmCanceled from the
input queue
 WaitingForAxes: Waiting until all axes are in the
control window
 WaitingForLiftOff: Waiting for lift off movement after
NcStop
 WaitingForLA: Waiting for Look-Ahead
 WaitingForSpindle: Waiting for spindle command to
be executed (internal M19 during drilling)
 WaitingForSync: Waiting for M97, G62, G63 (channel
synchronism)
 ShapeReset:
 StartThreadCutting: Thread cutting
 WaitingForPLCPos: Waiting for PLC positioning
 WaitingForTime: Waiting times for tapping with BCD
spindles
 WaitingForPlcQuit: Waiting for acknowledgment
from the PLC during tapping with BCD-encoded
spindles (M3, M4, M5)
kanalStatus Possible channel states, represented as bit codes (See
page 1826)

1822 HEIDENHAIN Technical Manual TNC 640


Variable Display
chainState Status of the IPO chain:
 IPO chain is "full."
 IPO chain is "empty."
 IPO chain is "almost empty" (waiting for the last
acknowledgment message)
chainCount Number of acknowledgment messages in the IPO
chain
satzCount Number of blocks in this NC program.
blockId ID of the current block
blockNumber Number of the current block (from NC program)
fileName Current NC program
syncActState  Running: Synchronization not active
 Wait SS: Waiting in Single Block mode
 Wait Sync: Waiting during the synchronization of IPO
and PLC
syncWaitFor Is only relevant if syncActState is not SyncRunning.
 Channel object
 PLC-Sync
 Step-Contrl
syncWaitId Number of the current synchronization
CH-syncIdWait Waiting ID for M97, G62, G63 (channel synchronization)
CH-syncId Starting ID for M97, G62, G63 (channel
synchronization)
eomStopId ID of the End of Move (eom) from the geometry chain
laStopId ID of the End of Move (EOM) from the real-time
LookAhead
startPath Absolute starting position of current traverse on the
path
endPath Absolute end position of current traverse on the path
pathLength Current path length
S(t) (Absolute) position on the path
P(s)[0] Position of the first axis to be interpolated
P(s)[1] Position of the second axis to be interpolated
P(s)[2] Position of the third axis to be interpolated
P(s)[3] Position of the fourth axis to be interpolated
P(s)[4] Position of the fifth axis to be interpolated
P(s)[5] Position of the sixth axis to be interpolated

January 2015 6.25 Diagnosis with the online monitor (OLM) 1823
Variable Display
RevolFeedProg Programmed feed rate per revolution in automatic
mode
RevolFeedMan Programmed feed rate per revolution in manual mode
ProgFeed Programmed contour speed
Fmax (If true:) Rapid traverse was programmed
toolCorrId ID of the current asynchronous tool compensation
wpCorrId ID of the current asynchronous workpiece
compensation

1824 HEIDENHAIN Technical Manual TNC 640


Internal data of the To select the Offset Data function:
offset interface
 Press the Login Ipo (or Login SimIpo) soft key.
(Offset Data)

 Press the Channels soft key.

 Press the Offset Data soft key.

The function displays the following variables from the IpoOffset:

Variable Display
kindOfKinComp Type of current kinematics
kindOfKinCompSav Type of current kinematics
e
useFrozenAxVal The "frozen position" is used for rotary axes
v_bahn Current contour speed
mySpindleNr Spindle number belonging to this channel
achsAnz Number of axes of this channel to be interpolated
logAchsNr[0] First logical axis number of the channel
... ...
logAchsNr[8] Ninth logical axis number of the channel

January 2015 6.25 Diagnosis with the online monitor (OLM) 1825
Current status of To select the Act State function:
the channel
 Press the Login Ipo (or Login SimIpo) soft key.
(Act State)

 Press the Channels soft key.

 Press the Act State soft key.

The function displays the following binary variables:

Variable Display
rapidFeed Rapid traverse is active for this channel
ncStopTaster PLC request for NcStop at triggering of touch probe
override100 The override is frozen at 100 %
singleStep Single Block is active
ncStart NC start is active
internStart Internal NC start is active
systemCycle A system cycle is active
ncStop NC stop is active
programStop Program stop (M00/M01) is active
cancel Cancellation is active
threadCycle Thread cycle is active
tProbeCycle Touch probe cycle is active
threadRevFeed Feed rate per revolution during thread cutting
tasterMonitorGeo NC request for monitoring of touch probe
tasterMonitorPlc PLC request for monitoring of touch probe
measure The touch probe has triggered. (If "tasterMonitorGeo" is
set with the message "GmProbeMonitoring,"
"tasterMonitorPlc" will also be set.) Use M141 to stop
the touch probe monitoring temporarily
("GmPlcProbeMonitoring"). This resets
"tasterMonitorPlc."
revolFProgRun Feed rate per revolution in automatic mode is
programmed for this channel.
revolFManualMode Feed rate per revolution in manual mode is
programmed for this channel.

1826 HEIDENHAIN Technical Manual TNC 640


Diagnosis of the To select the Diag State function:
channel status
 Press the Login Ipo (or Login SimIpo) soft key.
(Diag State)

 Press the Channels soft key.

 Press the Diag State soft key.

The function displays the following binary variables:

Variable Display
WaitingForAxes Waiting until all axes are in the control window after the
program is started
noSFromT No new nominal values from the look-ahead
SameSFromT Cyclically identical nominal values from the look-ahead

Look-Ahead To select the Look-Ahead information:


information
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Channels soft key.

 Press the Look Ahead soft key.

 Press the Paths or States I or States II or States III soft


key.

The functions display the states and variables of the look-ahead function.
Analyzing this data is reserved for look-ahead specialists.

6.25.7 Hardware group

Hardware To select the CC HW Info function:


information of the
 Press the Login Ipo (or Login SimIpo) soft key.
CC (CC HW Info)

 Press the HW soft key.

 Press the CC HW Info soft key.

Note

The hardware information displayed for the CC is only valid if a CC with a


parallel interface is used (no HSCI).

January 2015 6.25 Diagnosis with the online monitor (OLM) 1827
On the left side of the screen the OLM shows the variables as they are
provided by the CC (first CC in the left column, and second CC in the right
column):

Variable Display
CC-Type
ActiveAxes Displays the available axes in bit-encoded
representation.
CtrlType Provides information on hardware and software
versions, etc.
TestVersion Information on the DSP software. Indicates either the
letter of a test version or the number of a DSP software
service pack. The MC must take this additional
information into account.
LinkDate Contains the software generation in 32 bits (Unix
format)
SoftIdent Contains the software ID and the version code.
ReadyInc After processing the remaining identification cells, the
variable is incremented by the controller program or
boot program to allow an "activity check."

The data provided by the CC are explained in the right half of the screen (first
CC in the left column, and second CC in the right column):

Variable Display
BootHost Boot software from the host
BootEprom Boot software from the EEPROM
Type Controller model:
 TMS320C31
 TMS320C32
 TMS320C32 – spindle board
 Universal controller
HW-Info Information on the hardware version
PS-Modul Module for safety-related controls (SG: safety-oriented
controls)
Version Test version or release version (delivery version)
TestVers. Is the software a test version?
LinkDate Contains the software generation in 32 bits (Unix
format)
SW-Info Information on the software version

1828 HEIDENHAIN Technical Manual TNC 640


Transfer of To select the CC Data function:
commands
 Press the Login Ipo (or Login SimIpo) soft key.
between IPO and
CC (CC Data)
 Press the HW soft key.

 Press the CC Data soft key.

Note

The hardware information displayed for the CC is only valid if a CC with a


parallel interface is used (no HSCI).

The function displays the following variables (first CC in left column – second
CC in right column):

Variable Display
CmdFrmHost Current command to the CC
AxInfoFrHost Associated axis information
MsgInfoFrmHost0 .. 3 Additional information on the command
CmdToHost Current command from the CC
AxInfoToHst Associated axis information
MsgInfoToHost0 .. 3 Additional information on the command
WatchDogFrHst Watchdog to the CC
WatchDogToHst Watchdog from the CC
Irq_Cycle Synchronization between CC0 and CC1
UnixTime Not used
DriveOffMask Not used
ExtDrvRelMask Not used
LtRdyState The 8-bit word (oooo oooo) contains the following
information ("x" indicates the bit(s) containing the
information):
 oooo ooxo (x=1): DC-link voltage too high
(Port input: "–ERR.UZ.GR" = low level)
 oooo oxoo (x=1): Temperature of heat sink too
high
(Port input: "–ERR.TEMP" = low level)
 ooox oooo (x=1): DC-link current too high
(Port input: "–ERR.IZ.GR" = low level)
 ooxo oooo (x=1): Power supply unit not ready
(Port input: "RDY.PS" = low level)
 oxoo oooo (x=1): Leakage current too high
(Port input: "–ERR.ILEAK" = low level)

January 2015 6.25 Diagnosis with the online monitor (OLM) 1829
Variable Display
DriveStatus Shows the status of the drives in bit-encoded
representation. The bit position of a drive depends
on the index in the CC. This index is shown in the
axIndex field (OLM function: IPO/Axes/CC Data).
 Bit = 0: Drive is switched off or does not exist
 Bit = 1: Drive is on
AxRelConnect  Bits 0 .. 7: show the status on terminal X150 (axis-
specific enable)
 Bits 8 .. 15: show the release status of the axes of
the first CC
AxRelConnectSl  Bits 0 .. 7: show the status on terminal X151 (axis-
specific enable)
 Bits 8 .. 15: show the release status of the axes of
the second CC

1830 HEIDENHAIN Technical Manual TNC 640


Command to the CC This function transfers commands directly to the CC.
(CC Command)

Danger

Please note that commands transferred to the CC with this function are not
checked by the system.
Do not use these functions to switch drives on or off, since the brakes will
not be activated or deactivated.

To select the CC Command function:


 Press the Login Ipo soft key.

 Press the HW soft key.

 Press the CC Command soft key for the OLM to open the "CC
Command" dialog box.
 Enter the required data in the dialog box (see below).

 Enter the required data in the dialog box (see below).

 Confirm with OK—the OLM sends the defined command to


the CC.

CC Command dialog box:

Dialog box entries:


 Function: Command sent to the CC
• AxMpUebern
• MotTemp
• AntriebEin
• AntriebAus
• Status
• CHK_PHIFELDREF
• SHOW_HW_CO...
 Info: Not used
 Axis no: Logical axis number

January 2015 6.25 Diagnosis with the online monitor (OLM) 1831
Data of the static This function displays the data stored in the static RAM of the IPO.
RAM (S-RAM)
To select the S-RAM function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the HW soft key.

 Press the S-RAM soft key.

The function displays the following variables:

Variable Display
kennung1 Internal code
kennung2 Internal code
absActPos Switch-off position of the individual axes
absActPosNonMod Switch-off position of the individual axes
refPosition Reference position of the individual axes
modCntrEndat Overflow of multiturn EnDat encoder
checkSum Checksum of current machine parameters
valid Validity code

Data of the analog Use AnalogOutput to display the nominal commands. – The values of the
outputs (Analog outputs are not returned.
Output)
To select the Analog Output function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the HW soft key.

 Press the Analog Output soft key.

The function displays the values of the analog outputs in [V]:


 Output1
 Output2
 ...
 Output16

1832 HEIDENHAIN Technical Manual TNC 640


Counter function GAL Data allows you to display the internal registers of the counter function
blocks of the MC blocks of the MC.
(GAL Data)
To select the GAL Data function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the HW soft key.

 Press the GAL Data soft key.

The GAL Data variables have only an IPO-internal meaning:

Variable Display
reg0_low
reg0_mid
reg0_hig
reg1_low
reg1_mid
reg1_hig
init_reg_1
cntrl_reg_1
Rl_reg
latch_reg
irq_reg
offset00_reg
offset90_reg
timer_reg
cntrl_reg_2
cntrl_reg_3

January 2015 6.25 Diagnosis with the online monitor (OLM) 1833
Hardware port The HW-Ports function displays the current status of some hardware ports.
states (HW-Ports) For the meaning of the displays, please refer to the description of the MC
hardware. To make orientation easier, the relative addresses of the ports are
indicated below. To obtain the actual port address, add the base address of the
hardware to the relative address.
To select the HW-Ports function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the HW soft key.

 Press the HW-Ports I or HW-Ports II or HW-Ports III soft


key.

The functions display the status of the following hardware signals:

Variable Display
HW-Ports I  WD (IPO)
 _SH2_p(CCU): Base address + 0x 330c
 _NE1_p (I3): Base address + 0x330e
 _NE2_p (I32): Base address + 0x3304
 _24V_plc2on:
 _24V_plc3on:
 _SH1AB_1_p: Base address + 0x3208
 _SHS1AB_1_p: Base address + 0x3204
 EN_SH2:Base address + 0x6000
 EN_NE1:Base address + 0x6004
 EN_PL:Base address + 0x6004
 EN_REG:Base address + 0x6006
 EN_MS:Base address + 0x6008
 EN_AT:Base address + 0x600a
 EN_ACFAIL:Base address + 0x600c
 IRQ_SH2:Base address + 0x6010
 IRQ_NE1:Base address + 0x6012
 IRQ_PL
 IRQ_REG:Base address + 0x6016
 IRQ_MS:Base address + 0x6018
 IRQ_AT:Base address + 0x601a
 IRQ_ACFAIL:Base address + 0x601c
 IRQ_SYNCPWM:Base address + 0x601e

1834 HEIDENHAIN Technical Manual TNC 640


Variable Display
HW-Ports II  3D-Signal (low active)
 3D-Bereit (low active)
 3d-Warng.
 TT-Signal (low active)
 TT-Bereit (low active)
 X30-SpRef
 WD-Reset
 PLC-2*5V
 iport1[0]: Base address + 0x3100
 iport1[1]:Base address + 0x3102
 iport1[2]:Base address + 0x3104
 iport1[3]:Base address + 0x3106
 iport1[4]:Base address + 0x3108
 iport1[5]:Base address + 0x310A
 iport1[6]:Base address + 0x310C
 iport1[7]:Base address + 0x310E
 oport1[0]:Base address + 0x3302
 oport1[1]:Base address + 0x3102
 oport1[2]:Base address + 0x3104
 oport1[3]:Base address + 0x3106
 oport1[4]:Base address + 0x3108
 oport1[5]:Base address + 0x310A
 oport1[6]:Base address + 0x310C
 oport1[7]:Base address + 0x310E
 _sg_inst_

January 2015 6.25 Diagnosis with the online monitor (OLM) 1835
Variable Display
HW-Ports II  IRQ SH2
 IRQ MNE1
 IRQ PLC
 IRQ Reg/Spi1
 IRQ MS
 IRQ Mitsu/Spi2
 IRQ AF
 IRQ SyncPWM
 IRQ busTimeout
 IRQ VART1
 IRQ Vart2
 IRQ PF
 IRQ HWM
 IRQ WD
 IRQ
 IRQ
 MSK SH2
 MSK MNE1
 MSK PLC
 MSK Reg/Spi1
 MSK MS
 MSK Mitsu/Spi2
 AMK AF
 MSK SyncPWM
 MSK busTimeout
 MSK VART1
 MSK VART2
 MSK PF
 MSK HWM
 MSK WD
 MSK
 MSK enable all

1836 HEIDENHAIN Technical Manual TNC 640


Encoder data Encoder Data is used to display the information of the encoder.
To select the Encoder Data function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the HW soft key.

 Press the Encoder Data soft key.

The index is structured as follows:


 0 to 9: Position encoders of the MC
 10: Speed encoder (index 0; CC 0)
 11: Position encoder (index 0; CC 0)
 12: Speed encoder (index 1; CC 0)
 13: Position encoder (index 1; CC 0)
. . .
 32: Speed encoder (index 5; CC 1)
 33: Position encoder (index 5; CC 1)
The OLM displays the following data of the encoder:

Variable Display
type  NotConnected
 McPosEncoder
 CcMotorEncoder
 CcPosEncoder
inUse The encoder is configured in the system (handwheel,
position encoder or speed encoder).
usedFor  Nothing
 Position
 Speed
 Handwheel
axisIdent Index of the axis from axisList
axisKey Key of the axis from axisList
ipoFactor Fine interpolation factor
ccIndex Index of the CC
dpIndex Index on the CC
latch1Ok
latch1 Counter increments of latch 1, including fine
interpolation
latch2Ok
latch2 Counter increments of latch 2, including fine
interpolation (reference pulse or measuring pulse).

January 2015 6.25 Diagnosis with the online monitor (OLM) 1837
Variable Display
EndatInfo (Heading of the subsequent displays)
resolution Resolution of the absolute track
absValue Value of the absolute track
error Error code
iresolution Resolution of the incremental track
serialNumber Serial number
multiturn Maximum number of multiturn revolutions
mstype Encoder code
incValue Value of the incremental track during power-on

1838 HEIDENHAIN Technical Manual TNC 640


Data of the This function displays information on the fast inputs.
"Fast Inputs"
To select the Fast Inputs function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the HW soft key.

 Press the Fast Inputs soft key.

The index is structured as follows:


 0 to 4: Fast inputs of the PLC
 5 to 9: Trip dogs of the spindles
The OLM displays the following data of the fast inputs:

Variable Display
inUse Fast input is configured
usedFor  Nothing
 Plc
 Axis (spindle)
axisIdent Index of the axis from axisList
axisKey Key of the axis from axisList
number Number of the input:
 No HSCI: I0 to I31
 HSCI: All inputs are permitted
set Status of the input (0/1)

January 2015 6.25 Diagnosis with the online monitor (OLM) 1839
6.25.8 Group of drive commands

Note

On a control with analog interface to the drives (no CC controller unit is


present), this function does not return useful values.

To select the Drive Command function:


 Press the Login Ipo (or Login SimIpo) soft key.

 Press the HW soft key.

 Press the CC HW Info soft key.

1840 HEIDENHAIN Technical Manual TNC 640


6.25.9 Auxiliary group

Enabling debug Use Get/Set DebugPrint, to define the data to be logged and saved in the file
outputs (Get/Set r:\runtime\_Xprint.txt. Data you identify by a "T" will be saved.
DebugPrint)
Example of a selection:

To select the Get/Set DebugPrint function:


 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Auxil soft key.

 Press the Get/Set DebugPrint soft key for the OLM to open
(Get...) the selection list (see figure below).
 Use the arrow keys to select the data whose identifiers you
want to change.
 Use the ENT key to change the identifier (T or F).

The OLM uses the selected data to generate a bit line. The bit line is displayed
in the bottom screen line at right. You can also use the bit line in the start batch
of the IPO to start the IPO with the Debug Print function.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1841
Meaning of the data:

Variable Display
parameter Output of information during parameter assignment. In
addition, the parameters for every axis that are sent to
the CC are written to the file r:\runtime\_HelpTrace.txt.
referencing Output of information during reference run
monitoring Output of information during standstill monitoring and
during monitoring of the absolute position (from zero
pulse to zero pulse for distance-coded encoders)
axisCommands Output of internal axis commands
axisValues Output of information during actual-value transfer
measuring Output of information on the measuring process (probe
on/off, monitoring, etc.)
tracePlcIpoMsg All messages that are sent to the PLC-IPO are written
to r:\runtime\_HelpTrace.txt
initIpoChain Output during the initialization of the IPO chain
traceIpoMsg All messages that are sent to the IpoInterpolator are
written to r:\runtime\_HelpTrace.txt
handwheel Output of information during the configuration and
selection of the handwheel
ipoFilter Output of information during the configuration and
selection of the two filters in the IPO chain
singleStep Output of information during graphic simulation in the
SingleStep mode of operation
sg Output of additional information from the safety-
oriented package (SG: safety-oriented control)
sgIo Output of additional information from the safety-
oriented package
sgPos Output of additional information from the safety-related
package
sgCyclic Output of additional information from the safety-related
package
spindleCmds All spindle commands and their acknowledgments are
recorded
EmStopTest Outputs during the emergency stop test
IpoIpoAchse Output during the configuration of the axes of a channel
(swapping axes in and removing axes from the
interpolation context)
M97-G62-G162 Outputs during the synchronization of multiple NC
channels
AxesRegState Outputs during axis status changes in the controller

1842 HEIDENHAIN Technical Manual TNC 640


Variable Display
ServerLogin Log in to / log out of the IpoData server
Graphics Request of workpiece positions for the on-line graphics
and graphic simulation
CC Watchdog Not used
Threading Outputs during thread cutting
GAL Not used
LiftOff Lift off of tool during cycle stop
AxisPolys Trace of the distance polynomials (result in file
_HelpTrace.txt)
HirthAxis Outputs during Hirth axis commands
DrvCmdData Reserved
EthernetAll Reserved
PathNames Output of the names of all selected programs and
cycles, including the paths
Watchdog Output of watchdog states (only output once)
EthNet OnOff Reserved
Terminal Enable output to serial terminal
GetValues Output when capturing positions with internal path
calculation
Encoder Reserved
RequestedPos Output when approaching the restore position

Reload of trace The configuration data for the IPO trace is loaded from the configuration file
information O:\service\traceInfo.cfg.
To select the Check AxPar function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Auxil soft key.

 Press the Reload TraceInfo soft key for the OLM to load the
configuration data.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1843
Generating error The Set Error function generates error messages. You define the error
messages (Set number and the error class.
Error)
To select the Check AxPar function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Auxil soft key.

 Press the Set Error soft key for the OLM to open the "Send
Error" dialog box (see figure below).
 Enter the required data in the dialog box (see below).

 Confirm with OK—the OLM generates an error message.

"Send Error" dialog box:

Dialog box entries:


 Error-No: Error number (hexadecimal)
 Event-Class: Error class

1844 HEIDENHAIN Technical Manual TNC 640


Generating an The Set PosCorr function generates an asynchronous position compensation
asynchronous (additive compensation). You define the number of the compensation and the
position compensation values.
compensation (Set
To select the Set PosCorr function:
PosCorr)
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Auxil soft key.

 Press the Set PosCorr soft key for the OLM to open the "Send
asynchron Pos-Corr" dialog box (see figure below).
 Enter the required data in the dialog box (see below).

 Confirm with OK—the OLM generates the compensation.

"Send asynchron Pos-Corr" dialog box:

Dialog box entries:


 ID: Compensation number
 dX, dY, dZ: Compensation values

January 2015 6.25 Diagnosis with the online monitor (OLM) 1845
Interface test Interface for DNC mode and WinCast.
To select the function:
 Press the Login Ipo (or Login SimIpo) soft key.

 Press the Auxil soft key.

 Press the Interface Test soft key for the OLM to open the
dialog box (see figure below).
 Set and check the required interface.

1846 HEIDENHAIN Technical Manual TNC 640


6.25.10 PLC group

Displaying the
values of the
analog-to-digital
converter

Note

The displayed information is specific to the control and the machine. Refer
to the technical documentation to find out which analog values are
assigned on your TNC 640 and the meaning they have.

To select the AD values function:


 Press the Login Plc soft key.

 Press the AD VALUES soft key.

The function displays the values measured by the analog inputs as well as the
permissible limits of some temperature and voltage values:
 Value column: Measured values, converted to units used internally by the
PLC
 Raw value column: Values from the encoder, standardized to 16-bit format
 Constraint column: Limit values
 Sample interval column: PLC interval during which the value was read
(0=simulated value)

January 2015 6.25 Diagnosis with the online monitor (OLM) 1847
Displays:

Variable Display
ovr1 Values of the override potentiometer (* 10000)
ovr2
battery Battery voltage (* 1000)
goldCap "Gold-cap" voltage (* 1000)
caseTemp Temperature of the control (* 10)
supply5V 5 V supply voltage at the main board (* 1000 / 2)
supply3V 3.3 V supply voltage at the main board (* 1000)
pt100_1 Temperature inputs (X48) of the MC (* 10)
..
pt100_3
u_1 Voltage of the analog inputs (X48) of the MC (* 1000)
..
u_3
tempCpu1 Temperature of CPU 1 (* 10)
tempCpu2 Temperature of CPU 2 (* 10)
caseFan Fan speed [rpm]

1848 HEIDENHAIN Technical Manual TNC 640


PLC trace The PLC trace function saves the PLC modules called and the errors that have
occurred during the module call. Depending on the setting of the PLC-TRACE
ON-OFF soft key, the following module data is saved:
 Plc Trace On: The PLC trace saves all module calls of the real-time thread
and the submit/spawn thread.
 Plc-Trace Off: The PLC trace saves only module calls that generate an error.

The PLC trace saves the following information for each module call:
 IPO counter
 Module called
 Error number

Press the PLC-TRACE SAVE soft key for the OLM to save the PLC trace data
in the file r:\runtime\=APIModCall.txt.

PLC trace on/off To define Plc-Trace On-Off:


 Press the Login Plc soft key.

 Press the Plc-Trace On-Off soft key for the PLC-trace status
to be changed.

Plc-Trace Save To select the Plc-Trace Save function:


 Press the Login Plc soft key.

 Press the Plc-Trace Save soft key for the PLC trace data to
be saved.

January 2015 6.25 Diagnosis with the online monitor (OLM) 1849
6.25.11 Queue trace
The Q trace records the messages of the selected queues and saves them in
a file.

After the trace function has been selected, the OLM displays the data of the
queue at the top of the screen (see figure).
 Press the Trace soft key for the OLM to display the data of a
queue.
 Cursor Up: Displays the next queue.

 Cursor Down: Displays the previous queue.

 CTRL + Cursor Up: Scrolls forward in increments of 10.

 ALT + Cursor Up: Scrolls forward in increments of 100.

 CTRL + Cursor Down: Scrolls backward in increments of 10.

 ALT + Cursor Down: Scrolls backward in increments of 100.

1850 HEIDENHAIN Technical Manual TNC 640


Activating a Q trace The OLM saves the queues to be traced in a file. Define the entries in this file
as follows:
 Press the Q-Trace On-Off soft key for the OLM to open the
"trace onoff" dialog box.
 Enter the required data in the dialog box (see below).

 Conclude with OK.

"trace onoff" dialog box:

Dialog box entries:


 TraceDefNo: Enter the number of the queue (after selecting Trace, you can
view details of the queue—see above).
 On/Off: Enter 0 or 1.

Deleting trace When the trace is activated, the data is "appended" to the existing trace file.
information You can delete the file as follows:
 Press the Clear Saved Q soft key for the OLM to delete the
existing trace file.

All entries made after that will be entered into a new file.

Saving trace Select how the Q trace is to save the trace information:
information
 Press the Saved Q On Compact soft key for the OLM to save
the trace information in compact form (single-line).
 Press the Saved Q On Pretty soft key for the OLM to save
the trace information in structured form.

Stopping a Q trace
 Press the Saved Q Off soft key for the OLM to stop the trace.

"Tipo Command" The "Tipo Command" function is provided for internal tests.
soft key

January 2015 6.25 Diagnosis with the online monitor (OLM) 1851
6.25.12 Frequent causes of error

Servo drive cannot The servo drive cannot be switched on or does not move:
be switched on
1 Check whether the drive was enabled by the CC.
Selection: Login Ipo/Axes/Ipo Act State 1: ANTRIEB_FREI ()

ANTRIEB_FREI=false: Presumably an error on the CC or a hardware


problem

2 Check whether "Antrieb-Ein" (Switch drive on) was requested by the PLC.
Selection: Login Ipo/Axes/Plc Nom State: AntriebEin ()

AntriebEin=false: probably error in the PLC program

3 Check whether the drive was switched on.

Selection: Login Ipo/Axes/Ipo Act State 1: ANTRIEB_EIN ()

ANTRIEB_EIN=false: probably IPO internal error

4 Check whether position feedback control was requested by the PLC.


Selection: Login Ipo/Axes/Plc Nom State: PosCtrlRequest (does not apply
to spindles)

PosCtrlRequest=false: probably error in the PLC program

5 Check whether position feedback control is active.


Selection: Login Ipo/Axes/Ipo Act State 1: LGR_AKTIV

6 Check whether "feed rate enable" was set by the PLC.


Selection: Login Ipo/Axes/Plc Nom State: VorschubFreigabe

Servo drive does The servo drive cannot be switched on or does not move although all enabling
not move commands are available—check the following variables:
1 The maximum permissible axis feed rate must be > 0.
Selection: Login Ipo/Axes/Plc Nom Data: MaxAchsVorschub

MaxAchsVorschub = 0: probably an error in the PLC program

2 The axis override must be > 0.


Selection: Login Ipo/Axes/Plc Nom State: AchsOverride

AchsOverride = 0: probably error in the PLC program

3 The IPO nominal speed must not be equal to 0.


Selection: Login Ipo/Axes/Ipo Act Data: absSollV

absSollV = 0: probably IPO internal error

4 The IPO actual speed must not be equal to 0.


Selection: Login Ipo/Axes/Ipo Act Data: absIstV

absIstV = 0: probably IPO internal error

1852 HEIDENHAIN Technical Manual TNC 640


6.26 Block diagram for TNC 640 with CC 61xx

MC CC TRC
Axis
compTorqueRipple

Holding
torque
FEED RATE
filterFeedTime compCurrentOffset
f

OSCI P
P P D
v VORSCHUB F

t
distPerMotorTurn compAcc
Look-Ahead: CfgLaPath + CfgLaAxis
minPathFeed
minCornerFeed
maxG1Feed
maxPathJerk(-Hi)
axPathJerk(-Hi) Torsion/
axTransJerk Jerk
pathTolerance(-Hi)
maxPathYank compTorsionFact n
curveTolFactor
curveJerkFactor compFriction0
angleTolerance(-Hi) compFrictionT1
Backlash compFrictionT2
posCtrlRevErr
posCtrlRevErrTime

Gear Error
Compensation n
compTorqueRipple
compFrictionNS

Fine Position
interpolation controller V(N NOML) Distance
3 ms P P P PI of one
motor
f M revolution
200 µs f f in distPer-
CfgFilter + CfgAxisComp feedForwardFactor distPerMotorTurn vCtrlPropGain iCtrlPropGain MotorTurn
CfgPositionFilter: kvFactor max. 6 multi- max. 6 multi- iCtrlIntGain
controlOutputLimit function filters *) I function filters *)
defaultPosition
defaultCutterLoc CfgSpeedControl CfgSpeedControl
defaultManualOrder vCtrlFiltType1...6 vCtrlFiltType1...6
axisPosition J NOM
vCtrlFiltFreq1...6 vCtrlFiltFreq1...6
axisCutterLoc vCtrlFiltBandWidth1...6 vCtrlIntGain vCtrlFiltBandWidth1...6
manualFilterOrder vCtrlIntTime vCtrlFiltDamping1...6
A NOM vCtrlFiltDamping1...6
vCtrlFiltLowPassT vCtrlFiltLowPassT
f IPC
S NOML V NOM 3 ms vCtrlEncInputFilt compIpcT1
compIpcT2
200 µs
3 ms D
OSCI
S ACTL V POS
200 µs
P D
3 ms vCtrlDiffGain

200 µs
distPerMotorTurn 3 ms

200 µs
3 ms
OSCI
V ACTL D *) Multi-function filters are used by the position and speed controllers;
200 µs
vCtrlFiltType1...6 = 1... 4, 101...104 speed controller
Sample rate vCtrlFiltType1...6 = 11...14, 111...114 position controller
adjustment

January 2015 6.26 Block diagram for TNC 640 with CC 61xx 1853
7 Machine interfacing

7.1 Display and operation


The display screen of the TNC 640 is divided into separate windows. The user
can select the operating functions by soft key. Please also refer to the User's
Manual.

7.1.1 General settings for the display screen


The TNC 640 features a revised user interface with a more modern design
compared to previous TNC controls.
The new features include, for example, revised soft keys, a new font as well
as color highlighting of syntax elements in the Program Run operating modes
and in the Programming operating mode. In addition, the MOD dialog has been
revised and a new smartSelect dialog introduced, which makes it even easier
for users to select cycles and programming functions. Refer to the
Conversational Programming User’s Manual for the TNC 640 for more
information about these new features.
Two further new features of the TNC 640 user interface are a time and/or an
OEM logo display at the top right corner of the screen and an info line below
the operating mode display:

Time display or
OEM logo

Info line

January 2015 7.1 Display and operation 1854


Configuring the
time display
Settings in the configuration editor MP number
System
DisplaySettings
CfgClockView
displayMode 120601
System
Path
CfgOemPath
oemLogo 102007

In the MP_displayMode machine parameter, you can specify how the time of
day is to be shown in the top right corner of the screen. You can display either
an analog or digital clock or a small company logo. As an alternative, you can
superimpose your company logo with the time of day.
To display a company logo, the following size and file format specifications
must be met:
 Size:
Max. 108 x 54 pixels with 15-inch screens (1024 x 768)
Max. 108 x 22 pixels with 19-inch screens (1280 x 1024)
 Permissible file formats:
BMP, BMX, GIF, JPG, PNG, SVG
You can save the logo at any location in the file system of the TNC 640. The
path to the logo image file must be specified in the MP_oemLogo parameter.

MP_displayMode
Display mode for time of day on the screen
Available from NCK software version: 597110-05.
Format: Selection menu
Options: Analog
Analog clock
Digital
Digital clock
Logo
OEM logo
Analog and logo
Analog clock and OEM logo
Digital and logo
Digital clock and OEM logo
Analog on logo
Analog clock that superimposes the OEM logo
Digital on logo
Digital clock that superimposes the OEM logo
Default: Analog
Access: LEVEL1
Reaction: NOTHING

1855 HEIDENHAIN Technical Manual TNC 640


MP_oemLogo
Path/name for optional OEM logo
Available from NCK software version: 597110-05.
Format: String
Input: Path/file name of the OEM logo, max. 260 characters
Permissible file formats:
BMP, BMX, GIF, JPG, PNG, SVG
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

Configuring the info


line
Settings in the configuration editor MP number
System
DisplaySettings
CfgInfoLine
infoLineEnabled 120701

With MP_infoLineEnabled, you define whether the info line is displayed


below the operating mode display.
The info line is provided for the user's convenience. It indicates the user's
current position in the user interface and is thus particularly useful for
beginners.
The machine operator can use the MOD key to configure the info line:
MOD > Display settings > Display info line
If you deactivate the info line on a screen with a resolution of 1024x768 pixels
(15-inch or 12.1-inch), error messages will be displayed over two lines.

MP_infoLineEnabled
Enable/disable info line
Available from NCK software version: 597110-05.
Format: Selection menu
Options: ON
The info line below the operating mode display is enabled
OFF
The info line is disabled
Default: ON
Access: LEVEL1
Reaction: NOTHING

Font If you use fonts not available in the control for custom texts to be displayed at
the control panel (e.g. in Python masks), the TNC 640 automatically replaces
them with the "Dejavu Sans" (true type) default font. Keep this in mind for your
OEM-specific implementations.
HEIDENHAIN recommends to specifically select fonts which are available on
the TNC 640.

January 2015 7.1 Display and operation 1856


7.1.2 Settings for soft-key rows

Settings in the configuration editor MP number


System
DisplaySettings
CfgSoftkeys
leftSoftkeyRow 123101

Use MP_leftSoftkeyRow to configure the behavior of the left vertical OEM


soft-key row.

MP_leftSoftkeyRow
Behavior of the left vertical OEM soft-key row
Available from NCK software version: 597110-06.
Format: Selection menu
Options: Disabled
The left vertical OEM soft-key row is not active.
The soft-keys must be evaluated for example via a Python
application
ausgewertet werden.
10 SKs, Auto Hide
The left vertical OEM soft-key row has 10 soft keys.
The row is automatically displayed by pressing one of the left,
vertical soft keys.
9 SKs, Show Always
The left vertical OEM soft-key row has 9 soft keys.
The row is always shown on the OEM desktop.
Default: Disabled, optional parameter
Access: LEVEL3
Reaction: NOTHING

1857 HEIDENHAIN Technical Manual TNC 640


7.1.3 Settings for 3-D simulation graphics

Settings in the configuration editor MP number


System
DisplaySettings
CfgGraphics
modelType 124201
modelQuality 124202

Use MP_modelType to specify the type of the displayed model for the 3-D
simulation graphics.

MP_modelType
Model type of the 3-D simulation graphics
Available from NCK software version: 597110-08.
Format: Selection menu
Options: No Model
The model depiction is deactivated. Only the 3-D line graphics
are shown (lowest processor load, e.g. for fast ascertainment of
the NC program and program run times)
3D
Model representation for complex operations (highest
processor load, e.g. for turning or undercuts)
2.5D
Model representation for 3-axis operations (medium processor
load)
Default: 3D
Access: LEVEL1
Reaction: NOTHING
Use MP_modelQuality to specify the model quality of the 3-D simulation
graphics using four levels.

MP_modelQuality
Model quality of the 3-D simulation graphics
Available from NCK software version: 597110-08.
Format: Selection menu
Options: very high
Very high model quality, the production result can be evaluated
exactly. This setting requires the highest computing power.
Block numbers and block end points can only be displayed in
the 3-D line graphics with this setting.
high
High model quality
medium
Medium model quality
low
Low model quality
Default: medium
Access: LEVEL1
Reaction: NOTHING

January 2015 7.1 Display and operation 1858


7.1.4 Position and status display
The status display shows the status of the TNC 640.
With a soft key you can activate an additional status display in the graphic
window instead of the graphic.
This includes:
 Axis positions
 Tools
 Feed rate
 M functions

Free rotation Free rotation means that the rotary axis rotates as often as required (with a
display range of 0 to 360°) without being affected by software limit switches.
Use Module 9223 to define the Free Rotation function.
The maximum feed rate is 300 000 °/min. The feed rate is not shown in the
status window.
Before using the Free Rotation function, you need to switch off the active
kinematics for the axis to be rotated. Then switch it on again after the free
rotation. You can use the FN17: SYSWRITE ID290 NR1 function, for example, to
switch the kinematics. Change to a kinematics description that does not
include this axis, perform the free rotation, and then change back to the
previous kinematics description.

Free rotation If a program has been started, the module may be called only in conjunction
with Module 9223 with an M/S/T/Q strobe.
Module 9223 Free rotation
The feed-rate override (NN_ChnFeedOverrideInput) remains in effect.
Constraints:
 The transferred axis must be an auxiliary axis (axis must not be part of the
active kinematics).
 The axis must have traversed the reference mark.
 The module can only be called if no program is running, or if an M/G/S/T/T2/
Q strobe is pending.
 An axis that is not configured as "active," or an axis that was set to the
"deactivated axis" activation status (e.g. with Module 9226 or 9418), is
treated as if it were not present.

1859 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
PS B/W/D/K <Feed rate [°/min]>
PS B/W/D/K <Mode>
0: Stop
+1: Start in positive direction
–1: Start in negative direction
CM 9223
PL B/W/D <Error code>
0: No error: Free rotation is started/stopped
1: No rotary axis transferred or axis is assigned to the
machine kinematics of an NC channel
2: Impermissible feed rate
3: Axis has not traversed the reference mark
4: No M/S/T/Q strobe during running program
5: Programmed axis not in closed loop
6: Other traversing command active for axis at start of
function
7: Free rotation not active for axis at stop of function
Error code:

Marker Value Meaning


NN_GenApiModule 0 Free rotation is started/stopped
Error (M4203) 1 For error see error code

January 2015 7.1 Display and operation 1860


Assignment of axis On the control keyboard and the HR handwheel, you can assign the axis keys
keys IV and V IV and V as desired.

MP_axisKeyIV
Designation of axis IV on the control keyboard
Available from NCK software version: 597110-01.
Format: String
Input: Max. 1 character
Axis letter, e.g. "C"
Default: C
Access: LEVEL1
Reaction: RUN

MP_axisKeyV
Designation of axis V on the control keyboard
Available from NCK software version: 597110-01.
Format: String
Input: Max. 1 character
Axis letter, e.g. "B"
Default: B
Access: LEVEL1
Reaction: RUN

Deleting of status
information
Settings in the configuration editor MP number
System
DisplaySettings
CfgStatusAndQPar
clearMode 100901

To erase the status information and contents of the Q parameters:


 Select the conditions with MP_clearMode.
Status information is all programmed values, such as scaling factor, datum
shift, feed rate, tolerance from Cycle 32, etc. These are all reset, and the
tolerance programmed in Cycle 32 is cleared (MP_pathTolerance effective
again). The Q parameters are set to zero.

1861 HEIDENHAIN Technical Manual TNC 640


MP_clearMode
Reset status values and Q parameters
(compare to iTNC 530: MP 7300)
Format: Selection menu
Options: 0...3
Reserved, do not use!
4
Erase the status display and Q parameters when an NC
program is selected.
5
Erase the status display and Q parameters when an NC
program is selected and/or in the event of M02, M30 and
END PGM.
6
Erase the status display when an NC program is selected.
7
Erase the status display when an NC program is selected and/
or in the event of M02, M30 and END PGM.
Default: 4
Access: LEVEL3
Reaction: RUN

Input Erase with Erase with Status Q parameters


PGM MGT M02, M30, information
END PGM
4 x – x x
5 x x x x
6 x – x –
7 x x x –

January 2015 7.1 Display and operation 1862


Interrogating the Module 9035 Read status information (expanded)
status display With this module you can interrogate the status display or read status
through the PLC information. You transfer a number indicating the desired information.

Transferred number Return code


0 Editor mode in foreground 0: Programming and Editing
1: Test Run
1 Machine mode in foreground 0: Traverse the reference points
1: Manual operation
2: Electronic Handwheel
3: Positioning with Manual Data Input
4: Program Run, Single Block
5: Program Run, Full Sequence
2 Editor mode in background 0: None (main operating mode active)
1: MOD active
2: Program management/external interfaces active
3: MP editor active
4: PLC programming active
3 Machine mode in background 0: None (main operating mode active)
1: Mode active
2: Directory/external screen active
3: Tool-table editor active
4: Pocket-table editor active
5: Other table editor active
5 Selected file in Programming and 0: No file
Editing or Test Run 1: *.H (conversational NC PGM)
2: *.I (ISO NC PGM)
3: *.T (tool table)
4: *.D (datum table)
5: *.P (pallet table)
6: *.A (ASCII file)
7: *.TCH (pocket table)
6 Selected file in Program Run, Single 0: No file
Block or Program Run, Full Sequence 1: .H (conversational NC PGM)
2: .I (ISO NC PGM)
5: .P (pallet table)
7 Selected axis for actual position 0: X axis
capture in Programming and Editing 1: Y axis
mode 2: Z axis
3: IV. Axis
4: 5th axis (V)
5: 6th axis
6: 7th axis
etc.
8 Selected machine axis Index from CfgAxes/axisList
(for actual-position-capture)
9 Handwheel axis Finds the axis which is assigned to the handwheel
connected to connection X23 of the MC.
–1: None or more than one
999: Virtual tool axis
>=0: Number of the machine axis
(Index from CfgAxes/axisList)

1863 HEIDENHAIN Technical Manual TNC 640


Transferred number Return code
10 Handwheel axes bit-coded Bit n: Machine axis <n> handwheel-controlled
Bit 31: Virtual tool axis handwheel-controlled
Handwheel subdivision factor
11 X key 0 to 10
12 Y key
13 Z key
14 IV key
15 V key
16 Input format of the Positioning with 0: .H file
MDI mode ($MDI file) 1: .I file
17 Number display format 0: MM
1: INCHES
18 Tilted working plane 0: Tilted working plane active
1: Tilting is preselected for manual operation
2: Tilting preselected for program run
19 Active line in the *.CMA file >=0: Active line
(Call only from within a submit/spawn –1: No *.CMA file
job)
20 Speed for HR 410 0: Slow
1: Medium
3: Fast
–1: No global speed range set (undefined)
21 Control model 20: NCK-based control
22 Tool center point management 0: Function not active
(M128, TCPM) active 1: Function active
23 Handwheel superimposition with 0: M118 not active
M118 Bit n: Machine axis <n> handwheel-controlled
26 Jog increment Current increment for machine axis #0 in 0.0001 mm/°
28 Query of the superimposed operating 0: No table editor in "Edit on" condition
mode "Table editing" in the "Machine" 3: Tool table editor in "Edit on" position
operating mode 4: Pocket table editor in "Edit on" position
Handwheel subdivision factor
31 Machine axis 0 0 to 10
32 Machine axis 1
33 Machine axis 2
34 Machine axis 3
35 Machine axis 4
36 Machine axis 5
37 Machine axis 6
38 Machine axis 7
39 Machine axis 8
50 Read number of tool-change
sequence
51 Read pocket number for reserve
52 Read magazine number for reserve
53 Read pocket number for exchange
54 Read magazine number for exchange
55 Tool number with call FN18 ID61

January 2015 7.1 Display and operation 1864


Transferred number Return code
56 Tool number in spindle with
call FN18 ID61
100 Number of the tool axis
110 Simulation ID that can be set 0: No ID set, simulation not active
viaJHIOsim.DLL (corresponds to >=0: Any ID
D296 with iTNC 530)
500 Interpolator cycle time 0..
501 Cycle time of the PLC
502 Current utilization
503 Maximum utilization
1000 Active line of the table editor 0... : Current line
–1: Table editor is not active
1001 Pallet table –1: Pallet table not active
(Call only from within a submit/spawn >= 0: Active line in the pallet table
job)
1002 Status of pallet machining –1: The main program in Full/Single mode is not a pallet
(Call only from within a submit/spawn 0: Machining was not started
job) 1: Machining interrupted by external stop,
programmed stop, after mid-program startup or during
program switch-over
2: NC program started from pallet
3: Pallet-change macro was started
4: Epilog macro was started
5: Pallet-change macro was started by the PLC
(Module 9280)
6: NC macro for changing the fixture started
7: NC macro for prologue started
8: NC macro for program cancelation started

Constraints:
 Status information no. 19 (read active line in the *.CMA file) is displayed
even if the active line does not contain any *.COR file.
 Status information 19, 1001 and 1002 can only be called within a submit/
spawn job.
 In systems with multiple channels the status information 18, 22, 50 to 56,
100, 1001 and 1002 cannot be read.
 In the event of an error the value of the status information is undefined
Call:
PS B/W/D/K <Number of the desired status information>
CM 9035
PL B/W/D <Status information>

1865 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information invalid
ErrorCode 20 Call not in a submit/spawn job
58 No NC channel or multi-channel system
configured

January 2015 7.1 Display and operation 1866


7.1.5 Unit of measurement for display and operation

Settings in the configuration editor MP number


System
DisplaySettings
CfgUnitOfMeasure
unitOfMeasure 101101

MP_unitOfMeasure is evaluated by the following functions or modes of


operation:
 Machine display
 Entries in the Manual Operation, El. Handwheel and
Positioning with MDI operating modes
 Entries in the configuration editor
NC programs have a specific code for the unit of measurement.

 In MP_unitOfMeasure, you define whether display and operation are in


metric or inch mode.

Input or display metric inch


Coordinates, linear dimensions, compensation mm inch
values, etc.
Feed rate (feed rate per minute, feed rate per mm/min; inch/min;
revolution) mm/rev in./rev
Cutting speed mm/min ft/min

Number of decimal places metric inch


Coordinates, linear dimensions, etc. 3 4
Compensation values 3 5

MP_unitOfMeasure
Unit of measure for display and user interface
Available from NCK software version: 597110-01.
Format: Selection menu
Options: metric
Metric measurement system
inch
Inches
Default: metric
Access: LEVEL3
Reaction: RUN

1867 HEIDENHAIN Technical Manual TNC 640


7.1.6 Conversational language

Settings in the configuration editor MP number


System
DisplaySettings
CfgDisplayLanguage
ncLanguage 101301
plcDialogLanguage 101302
plcErrorLanguage 101303
helpLanguage 101304

The TNC 640 distinguishes between conversational languages for the


following areas:
 NC operation
 PLC operation
 PLC error messages
 Online help
The path for the dialog text files is permanently defined. The language
abbreviation is at the end of the path. You define the language abbreviation in
the parameters of the CfgDisplayLanguage object.
 In the parameter object CfgDisplayLanguage, you define the languages
you want to use.
These directories are:
%OEM%\PLC\LANGUAGE\ cs (Czech)
da (Danish)
nl (Dutch)
en (English)
fi (Finnish)
fr (French)
de (German)
it (Italian)
pl (Polish)
pt (Portuguese)
es (Spanish)
sv (Swedish)
hu (Hungarian)
ru (Russian)
zh (Chinese simplified)
zh-tw (Chinese traditional)
sl (Slovenian)
sk (Slovak)
no (Norwegian)
ko (Korean)
tr (Turkish)
ro (Romanian)
If the dialog text files for the selected language are not on the PLC partition,
the error message LANGUAGE LOAD ERROR appears. The TNC 640 will then try to
open the dialog text file in the directory "..\en" (English).

January 2015 7.1 Display and operation 1868


The file names of the dialog text files are the same for all languages. The file
names are usually defined in parameters.
 Store the dialog texts you created under the same file name in permanently
defined directories.
In MP_ncLanguage you define the end of the path indicating the NC
conversational language (language abbreviation).

MP_ncLanguage
NC conversational language
Available from NCK software version: 597110-01.
Format: Selection menu
Options: ENGLISH—English dialog text
GERMAN – German dialog text
CZECH – Czech dialog text
FRENCH – French dialog text
ITALIAN – Italian dialog text
SPANISH – Spanish dialog text
PORTUGUESE – Portuguese dialog text
SWEDISH – Swedish dialog text
DANISH—Danish dialog text
FINNISH – Finnish dialog text
DUTCH – Dutch dialog text
POLISH – Polish dialog text
HUNGARIAN – Hungarian dialog text
RUSSIAN – Russian dialog text
CHINESE—Chinese (simplified) dialog text
CHINESE_TRAD—Chinese (traditional) dialog text
SLOVENIAN—Slovenian dialog text
KOREAN—Korean dialog text
NORWEGIAN—Norwegian dialog text
ROMANIAN—Romanian dialog text
SLOVAK—Slovak dialog text
TURKISH—Turkish dialog text
Default: ENGLISH
Access: LEVEL1
Reaction: RUN
In MP_plcDialogLanguage you define the end of the path indicating the PLC
conversational language (language abbreviation).

MP_plcDialogLanguage
PLC conversational language
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_ncLanguage
Default: ENGLISH
Access: LEVEL1
Reaction: RUN
In MP_plcErrorLanguage you define the end of the path indicating the PLC
error messages (language abbreviation).

1869 HEIDENHAIN Technical Manual TNC 640


MP_plcErrorLanguage
PLC error message language
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_ncLanguage
Default: ENGLISH
Access: LEVEL1
Reaction: RUN
MP_helpLanguage is used to define the end of the path of the help texts
(language abbreviation).

MP_helpLanguage
Language for online help
Available from NCK software version: 597110-01.
Format: Selection menu
Options: See MP_ncLanguage
Default: ENGLISH
Access: LEVEL1
Reaction: RUN

January 2015 7.1 Display and operation 1870


7.1.7 File management

Settings in the configuration editor MP number


System
ProgramManager
CfgPgmMgt
dependentFiles 122101

In the MP_dependentFiles machine parameter you define whether


dependent files are to be displayed or not. In addition to the file name
extension, dependent files have the ending ".DEP".
Possible types are, e.g. ".H.SEC.DEP", ".I.SEC.DEP", ".T.DEP", ".P.T.DEP",
".H.T.DEP".

MP_dependentFiles
Display of dependent files
Available from NCK software version: 597110-06.
Format: Selection menu
Options: AUTOMATIC
Dependent files are not displayed.
MANUAL
Dependent files are displayed.
Default: AUTOMATIC
Access: LEVEL1
Reaction: NOTHING

1871 HEIDENHAIN Technical Manual TNC 640


7.1.8 Format for NC programs

Settings in the configuration editor MP number


System
DisplaySettings
CfgProgramMode
programInputMode 101201

Program format for For the Positioning with Manual Data Input operating mode you can specify
MDI the format for program entry with the parameter MP_programInputMode:

MP_programInputMode
MDI: Program entry in HEIDENHAIN conversational dialog or
ISO format
Available from NCK software version: 597110-01.
Format: Selection menu
Options: HEIDENHAIN
Program entry with HEIDENHAIN conversational programming
ISO
Program entry according to ISO
Default: HEIDENHAIN
Access: LEVEL2
Reaction: RUN

January 2015 7.1 Display and operation 1872


7.1.9 Settings for the Programming mode of operation

Settings in the configuration editor MP number


System
CfgEditorSettings
createBackup 105401
deleteBack 105402
cursorAround 105403
lineBreak 105404
stdTNChelp 105405
toggleCyclDef 105406
warningAtDel 105407
maxLineGeoSearch 105408
blockIncrement 105409
useProgAxes 105410
enableStraightCut 105411
maxLineCommandSrch 105412

Use the configuration object CfgEditorSettings to define the settings of the


NC editor.

Creating file If the parameter MP_createBackup is set to TRUE and existing NC programs
backups *.bak are edited in the Programming mode of operation, then the TNC 640
automatically generates a backup file with the extension *.bak. Example:
Use the file manager (PGM MGT key) to open an existing NC program 123.h
you want to edit. In the background, the TNC 640 automatically creates the
backup file 123.h.bak for the 123.h file.
As a default, the backup files are not visible in the file manager. You need to
change the settings of the display filter for the backup files with the extension
*.bak to become visible. Proceed as follows:
 Press the PGM MGT key to open the file manager
 Select the directory in which the desired NC program is stored
 Press the SELECT TYPE soft key
 Press the SHOW ALL soft key
If you want to open a backup file *.bak and edit it in the editor, you must first
rename it, or else the TNC 640 will display the error message File type not
selectable.
 Press the PGM MGT key to open the file manager
 Select the desired *.bak file with the cursor
 Press the RENAME soft key. (Second soft-key row)
 Remove the extension *.bak and rename the file. Example: 123.h.bak =>
1234.h
You can now open and edit the file in the editor.

1873 HEIDENHAIN Technical Manual TNC 640


Note

If you delete an NC program using the file manager, the backup file *.bak
of the NC program is retained.
If you also want to delete the backup files, you must change the display
filter as described above before being able to delete the *.bak file manually.

Note

Particularly when editing large NC programs (e.g. CAD drawings with a file
size of several megabytes), the *.bak files may cause large amounts of
invisible data on the TNC:\ partition or on USB storage media. Ensure that
at regular intervals you manually delete *.bak backup files that you no
longer need in order to make memory available.

Note

If you want to edit an NC program stored on a USB memory stick and the
parameter MP_createBackup is set to TRUE, you must ensure that at least
double the amount of memory needed for the NC program is available.
Example:
An NC program with a file size of 5 MB is stored on a USB memory stick.
If you use the NC editor to open the program, the TNC 640 automatically
generates a *.bak backup file and saves the file on the memory stick. At
least 5 MB of free memory must therefore be available on the memory
stick.

MP_createBackup
Generate a backup file *.bak
Available from NCK software version: 597110-02.
Format: Selection menu
Options: TRUE
After you have edited a file, a backup file *.bak is automatically
created before you save the file and exit the NC editor.
FALSE
No backup file *.bak is created. Select this setting if you do not
need any backup files and want to save memory space.
Default: TRUE
Access: LEVEL1
Reaction: NOTHING

January 2015 7.1 Display and operation 1874


Configuring the With the MP_deleteBack parameter you define the behavior of the cursor
cursor behavior after the deletion of lines in the NC program. The MP_cursorAround
parameter defines the cursor behavior for the first and last line of the NC
program.

MP_deleteBack
Behavior of the cursor after deletion of lines
Available from NCK software version: 597110-02.
Format: Selection menu
Options: TRUE
Behavior as with iTNC 530, the cursor is on the previous line.
FALSE
Cursor is on the following line
Default: TRUE
Access: LEVEL1
Reaction: NOTHING

MP_cursorAround
Behavior of the cursor on the first or last line
Available from NCK software version: 597110-02.
Format: Selection menu
Options: TRUE
Cursor jumps to the last or first line
FALSE
Cursor stands ready; at first or last line. Jumping not possible.
Default: TRUE
Access: LEVEL1
Reaction: NOTHING

1875 HEIDENHAIN Technical Manual TNC 640


Display of the NC With the MP_lineBreak parameter you define the display of multiline NC
program blocks. If split screen is active and if, for example, the NC program is displayed
on the left and the programming graphics or help on the right, you have
different options for setting the display of multiline NC blocks:

Note

The MP_lineBreak parameter is not evaluated in the Test Run mode of


operation.

MP_lineBreak
Line break on NC blocks with more than one line
Available from NCK software version: 597110-02.
Format: Selection menu
Options: ALL
Always break and display lines completely (multiline)
ACT
Only display the selected NC block completely (multiline)
NO
Only display all lines when the selected NC block is edited
Default: ALL
Access: LEVEL1
Reaction: NOTHING

January 2015 7.1 Display and operation 1876


Help graphics During cycle programming, the TNC 640 supports the user with interactive
help graphics. With the MP_stdTNChelp parameter you define whether the
help graphics are displayed automatically during cycle input or whether they
have to be activated by pressing the CYCLE HELP ON/OFF soft key. The soft
key is displayed when you press the "Select split screen layout" key (triple-
arrow key).

MP_stdTNChelp
Activate help graphics
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Behavior as with iTNC 530: the help graphics are displayed
automatically during cycle entry.
FALSE
The help graphics have to be called via the CYCLE HELP ON/
OFF soft key.
Default: TRUE
Access: LEVEL1
Reaction: NOTHING

Behavior of the With the optional parameter MP_toggleCyclDef you define the behavior of
cycle soft-key row the cycle soft-key row after cycle entry. You can either select the iTNC 530
compatible behavior (= row is hidden after cycle entry) or the setting that
keeps the row in the foreground.

MP_toggleCyclDef
Behavior of the cycle soft-key row after a cycle entry
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
The cycle soft-key row remains active after the cycle entry
FALSE
The cycle soft-key row is hidden after the cycle entry
Default: No value, parameter optional (same behavior as for FALSE)
Access: LEVEL1
Reaction: NOTHING

1877 HEIDENHAIN Technical Manual TNC 640


Deleting lines from The optional parameter MP_warningAtDel activates a confirmation request
an NC program when deleting an NC block via the DEL key. If the parameter is set to the value
TRUE, when deleting a block the TNC 640 displays the confirmation request
Really delete NC set? DEL!

MP_warningAtDel
Confirmation request when deleting an NC block.
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
The confirmation request is displayed and must be confirmed
by pressing DEL again.
FALSE
iTNC 530: The NC block is deleted without any request for
confirmation.
Default: No value, parameter optional (= behavior as for FALSE)
Access: LEVEL1
Reaction: NOTHING

Checking the NC The TNC 640 tests the NC program during opening and editing. The number
program during of NC blocks tested depends on the optional parameter
editing MP_maxLineGeoSearch. Errors that occur after the defined line number are
not automatically recognized by the control.
 Enter in MP_maxLineGeoSearch the line number to which the NC program
is to be checked.

MP_maxLineGeoSearch
Line number to which the program is to be checked.
Available from NCK software version: 597110-02.
Format: Number
Input: 100 to 9 999 [NC blocks]
Default: 100, optional parameter If the parameter is not part of the
configuration, the minimal value 100 becomes effective.
Access: LEVEL1
Reaction: NOTHING

January 2015 7.1 Display and operation 1878


Search for same Starting from the selected syntax element, you can use the up/down cursor
syntax elements keys to start a search for the same commands in the NC program. The
parameter MP_maxLineCommandSrch defines the number of lines up to
which a search is run for the same syntax elements.
If no value is given, the minimum value is effective.
If the TNC 640 finds no identical syntax element in the specified line number,
the message Block scan in block n aborted. Please use search function.
is displayed. In this case, either enter a larger value
MP_maxLineCommandSrch, or use the search function in the Programming
mode of operation.
Depending on the hardware used and when utilizing the maximum input range
of MP_maxLineCommandSrch, major waiting times may result. Therefore,
restrict such utilization to exceptional cases.
 Enter in MP_maxLineCommandSrch the line number to which the same
syntax element is to be searched for.

MP_maxLineCommandSrch
Number of lines for search for same syntax elements
Available from NCK software version: 597110-04.
Format: Number
Input: 500 to 400 000
Default: 20 000, optional parameter. If the parameter is not part of the
configuration, the initial value 20 000 becomes effective.
Access: LEVEL1
Reaction: NOTHING

DIN/ISO:  In the parameter MP_blockIncrement you enter the block-number


Block number increment in DIN/ISO programs:
increment
MP_blockIncrement
DIN/ISO programming: Block number increment
Available from NCK software version: 597110-04.
Format: Number
Input: 0 to 250
Default: 10
Access: LEVEL1
Reaction: NOTHING

1879 HEIDENHAIN Technical Manual TNC 640


Specifying  Specify in the parameter MP_useProgAxes which axis configuration is to
programmable axes be used in the Programming mode of operation:

MP_useProgAxes
Specify programmable axes
Format: Selection menu
Options: TRUE
Use the axis configuration defined in parameter
CfgChannelAxes/progAxis (200301).
FALSE
Use the default axis configuration XYZABCUVW.
Default: FALSE, optional parameter
Access: LEVEL1
Reaction: RESET

Behavior of paraxial  Allow or lock paraxial positioning blocks with the parameter
positioning blocks MP_enableStraightCut.

MP_enableStraightCut
Allow or lock paraxial positioning blocks
Format: Selection menu
Options: TRUE
Paraxial positioning blocks are allowed. When an orange axis
key is pressed, and in DIN/ISO when G07 is programmed, a
paraxial positioning block is generated.
FALSE
Paraxial positioning blocks are locked. When an orange axis key
is pressed, the TNC 640 generates a straight line interpolation
(L block).
Default: No value, parameter optional (behavior same as for TRUE)
Access: LEVEL1
Reaction: NOTHING

NC program With the API marker NP_ChnProgSelected it is possible to interrogate


selected whether an NC program is selected in the Program Run, Full Sequence or
Program Run, Single Block mode of operation. The marker is not set if an NC
program is selected from a pallet table.

PLC operand / Description Type

NP_ChnProgSelected M
NC program selected

January 2015 7.1 Display and operation 1880


7.1.10 Defining the output path for the function FN16: F-PRINT

Settings in the configuration editor MP number


System
Paths
CfgUserPath
fn16DefaultPath 102202
fn16DefaultPathSim 102203

The function FN 16: F-PRINT transfers Q-parameter values and texts in a


selectable format through the data interface or as a file.
The maximum text size for output via the FN16: F-PRINT function is 20480
characters or 20 KB.

Note

Please also note the description of the function FN16: F-PRINT in the TNC
640 User's Manual for Conversational Programming.

If no output path is transferred after calling the FN16: function, the TNC 640
uses a default path. You specify this path through the machine parameter
MP_fn16DefaultPath (Program Run modes) and MP_fn16DefaultPathSim
(Test Run mode).

MP_fn16DefaultPath
Default output path for the function FN16: F-PRINT in the
Program Run operating modes
Available from NCK software version: 597 110-05.
Format: String
Input: Path with max. 260 characters
Select the folder in the dialog window and confirm it with the
SELECT soft key
Default: No value, parameter optional
Access: LEVEL1
Reaction: RUN

MP_fn16DefaultPathSim
Default output path for the function FN16: F-PRINT in the Test
Run operating mode
Available from NCK software version: 597 110-05.
Format: String
Input: Path with max. 260 characters
Select the folder in the dialog window and confirm it with the
SELECT soft key
Default: No value, optional parameter
Access: LEVEL1
Reaction: RUN

1881 HEIDENHAIN Technical Manual TNC 640


7.1.11 Binary file management

Settings in the configuration editor MP number


System
CfgBinFileCache
cachePath 102801
maxFiles 102802
freeSpace 102803

The TNC 640 normally uses ASCII files whose structures vary depending on
the application (e.g. NC programs *.H and *.I or tables *.T, *.MOT, *.INV,
etc.). The ASCII files are used to create, edit and execute these special
HEIDENHAIN file types.
The TNC 640 creates copies of the ASCII files in binary format in order to
achieve better performance, meaning an increase in file execution speed. This
means that the ASCII data do not have to be interpreted, which results in an
increase in performance.
Use the configuration object CfgBinFileCache to define the settings for
managing binary files. The copies of the ASCII files converted into binary
format are saved on the SYS drive. This is the default path defined in machine
parameter MP_cachePath, which should not be changed.
Use the parameter MP_maxFiles to define the maximum number of files in
the binary cache directory. Change this setting if you want to gain memory
space on the system partition. Normally you should not change the default
value 200 for the parameter.
Use the parameter MP_freeSpace to define a memory limit. When the limit is
exceeded, the binary cache directory will be cleaned. When the limit specified
in megabytes [MB] is exceeded, 10 % of the files in the cache directory will
be deleted. The TNC 640 deletes the oldest files first.

MP_cachePath
Path/directory in which the cache binary files are stored
Available from NCK software version: 597 110-01.
Format: String
Input: Max. 500 characters
The default directory %SYS%\bincache should not be changed.
No entry: Binary cache is not active
Default: %SYS%\bincache
Access: LEVEL3
Reaction: NOTHING

January 2015 7.1 Display and operation 1882


MP_maxFiles
Maximum number of cache files in cache directory
Available from NCK software version: 597 110-01.
Format: Number
Input: 0 to 200 [files]
0: Binary cache is not active
Default: 200
Access: LEVEL3
Reaction: NOTHING

MP_freeSpace
Maximum available memory for cache files
Available from NCK software version: 597 110-01.
Format: Number
Input: 0 to 50 [megabyte MB]
Default: 30
Access: LEVEL3
Reaction: NOTHING

1883 HEIDENHAIN Technical Manual TNC 640


7.1.12 Access rights to drives and directories

Settings in the configuration editor MP number


System
ProgramManager
CfgPathProtection
[Key name: Directory path or drive]
protection 103101

You can assign access rights for any drive letters or directories. Use the
configuration object CfgPathProtection to configure the access rights.
Application example:
By defining access rights for folders, drives or network drives, you can save
OEM commissioning programs on the TNC partition for example, and protect
them from access by the machine operator.
The parameter MP_protection provides the following access levels:
 LEVEL1:
Drive or directory that is visible to the machine operator (no code number
required).
 LEVEL2:
The folder or drive letter is visible only after the user-parameter code
number "123" has been entered.
 LEVEL3:
The folder or drive letter is available only after the OEM code number
"95148" or "807667" has been entered.
Example:
You want to create a folder for commissioning programs on the TNC:\
partition. The folder must not be visible until the OEM code number "95148"
has been entered.
To define an access right, proceed as follows:
 Enter the Programming mode of operation and press the PGM MGT key to
open the file manager.
 Select the TNC:\ drive and create a folder (e.g. "SETUP") for the
commissioning programs
 Enter the Machine Parameter Programming mode of operation and select the
configuration object program manager/CfgPathProtection.
 Press the MORE FUNCTIONS soft key and then the INSERT soft key
 The Insert Data Object dialog box appears. Enter the path of the folder in
Key name?. Use environmental variables instead of drive letters:
%OEM%\ instead of PLC:\
%USR%\ instead of TNC:\
Example: %USR%\SETUP
 In Storage file? select a *.cfg file, in which the new settings are to be
stored (normally: PLC:\config\oem.cfg).

January 2015 7.1 Display and operation 1884


 Use the machine parameter MP_protection to define the access level, such
as LEVEL3 for OEM access via code number "95148".
 Press the SAVE soft key to save the changes to the configuration
 Press the END soft key to exit the Machine Parameter Programming mode
of operation
 In the Programming mode of operation, press the MOD key to open the MOD
dialog box, enter the code number 0 and press the ENT key. As a result, the
TNC 640 deletes all code numbers from the memory, which you have
entered earlier.
 Open the file manager. The created "SETUP" folder is not visible on the
TNC:\ drive.
 Press the MOD key, enter the OEM code number 95148 and confirm with
the ENT key. The SETUP folder is now displayed.

Note

You need to delete the access right in the configuration object


CfgPathProtection before you can delete a folder that has been protected
with an access level. Otherwise the folder is write protected and the error
message Access denied appears.

MP_protection
Access rights to the drive or directory
Available from NCK software version: 597110-01.
Format: Selection menu
Options: LEVEL1
Folder/drive is visible and can be edited without entering a code
number.
LEVEL2
Folder/drive will be visible and can be edited after you have
entered the code number 123.
LEVEL3
Folder/drive will be visible and can be edited after you have
entered the OEM code number 95148 or 807667.
Default: No value
Access: LEVEL3
Reaction: NOTHING

1885 HEIDENHAIN Technical Manual TNC 640


7.1.13 Code numbers

General You can enter certain code numbers through the MOD function. With these
information code numbers you can activate certain functions.

Overview The following code numbers have a fixed meaning:

Code number Function


0 After access, deletion of the soft keys for the Machine
Parameter Programming, Oscilloscope and PLC
Programming operating modes.
123 Calls machine parameters that are accessible to the user.
95148 Selects the Machine parameter programming mode of
operation.
231019 Software update, See "Manual NC software exchange" on
SETUP page 226.
setup
531210 Deletes nonvolatile PLC operands, permanently saved
data of the PLC run-time system (e.g. feed rate limits) and
stops control operation. Then you must restart the PLC
program.
555343  FN17: Overwrite system data
 Edits table characteristics if the table editor is open.
654321 OnLine Monitor (OLM)
688379 Oscilloscope
13852 Enables the commissioning tool for analog axes
(The soft key for accessing the tool is provided in the
startup screen of the internal oscilloscope.)
75368 Adjustment of analog axis offsets
807667 Selects the PLC Programming mode of operation
94655 Selects the special operating mode Current Controller
and Field Angle Adjustment
6871232 Tests the internal EMERGENCY STOP
857282 Resets the operating times
NET123 Ethernet settings
RESTORE Enables the restoring of an OEM-specific machine backup
(*.ZIP) in the file manager, see page 612.
SIK Opens the menu for enabling software options
211258 Displays additional soft keys and a status tab for diagnostic
purposes related to kinematic compensation
(KinematicsComp, Temperature Compensation) in the
Manual Operation mode of operation.

January 2015 7.1 Display and operation 1886


PLC operand The code of the entered code number is entered in NP_GenModCode. You
can evaluate this code and define your own functions for code numbers, or
disable fixed code numbers.

PLC operand / Description Type

NP_GenModCode D
Code of the code number last entered

Changing
HEIDENHAIN code
numbers Settings in the configuration editor MP number
System
Key code
CfgChangePassword
[Key name = HEIDENHAIN code number]
replaceWith 120501
hideOriginal 120502

Use CfgChangePassword to replace existing HEIDENHAIN code numbers


with your own code numbers or passwords.
Proceed as follows if you want to change existing HEIDENHAIN code
numbers:
 Open the configuration editor
 Add the optional configuration object CfgChangePassword to the machine
configuration and confirm with the soft key INSERT.
 As key name, enter the previous HEIDENHAIN code number, e.g. 807667
 Indicate a storage file *.CFG for the new parameters.
 In MP_replaceWith, enter a new code number with which you want to
replace the existing HEIDENHAIN code number. The new password can
consist of numbers and/or capital letters.

Note

In the MOD dialog for code number input, any small letters entered are
automatically converted to capital letters.
The letters in MP_replaceWith must therefore be entered as capitals.

Note

To delete, rename or edit an MP after a code number has been replaced, it


is necessary to enter a currently valid password. This applies both to
MP_replaceWith and MP_hideOriginal.

1887 HEIDENHAIN Technical Manual TNC 640


After you have entered the new password in the dialog window you can
encode it. An encoded password cannot be decoded in the *.CFG files of the
machine configuration.
 Press the ENCODE PASSWORD soft key to encode the entered password.
 Use MP_hideOriginal to define whether the previous HEIDENHAIN code
number remains effective or is deactivated.

Attention

If you set MP_hideOriginal = TRUE, then if the new code number is lost,
only HEIDENHAIN service personnel can restore the previous
HEIDENHAIN code number.
Protect the new code number from loss!

 Save your changes with the SAVE soft key.


 The new code number is immediately effective.

Note

Changes made to the parameters MP_replaceWith and MP_hideOriginal


will not be displayed in the list of changes and cannot be undone by
pressing the CANCEL CHANGE soft key.

MP_replaceWith
New OEM password or code number
Available from NCK software version: 597110-05.
Format: String
Input: Max. 18 characters
Numerals and/or capital letters
The HEIDENHAIN password indicated in the key name is
replaced by the new OEM password defined here.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_hideOriginal
Lock previous HEIDENHAIN code number
Available from NCK software version: 597110-05.
Format: Selection menu
Options: TRUE
The previous HEIDENHAIN code number is disabled.
FALSE
The previous HEIDENHAIN code number remains in effect.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: NOTHING

January 2015 7.1 Display and operation 1888


Day code for With the HEIDENHAIN OEM Day Code Generator PC tool, you can generate
passwords and a day code for any HEIDENHAIN code number, code number modified by you
code numbers or password, to be used on the control instead of the normal code number or
password. The day code is valid only on the day it was generated. This day
code can for example be given to customers or service technicians to grant
them time-limited access to specific areas of the control. The permanently
valid real code number thus remains confidential.
The PC tool is available for downloading on the HESIS web including the file
base directory "PC Software/NC Service" in the form of the zip file
"TNCkeygen". This collection also contains the PC tool "TNCOEMOption".
The tool is started with the file TNCOEMNumber.exe for generating a day
code. The tool also provides a mail function to automatically create an e-mail
template that already contains the generated day code and its validity date.
The day code can be used on the control in areas where code numbers are
usually input, e.g. in the MOD dialog of the control or when requested to enter
the manufacturer password. This functions with all code numbers if these are
evaluated by the NC software.
A day code does not function at operating system level (console) or when the
code number is evaluated by the PLC program. Only the real input is
forwarded to the operating system or PLC program here.

1889 HEIDENHAIN Technical Manual TNC 640


7.1.14 Programming station mode

Settings in the configuration editor MP number


System
CfgMachineSimul
simMode 100201
skipReferencing 100202
skipEmStopTest 100203
simHardwareType 100204

With MP_simMode, you can switch the TNC 640 into a programming station
mode. This way the control can be used as a simple programming station. No
drives are enabled. You can create and test NC programs. The operation of the
machine is simulated in the programming station mode. As OEM, you have
access to the machine configuration in the programming station mode. This
enables you to adapt the TNC 640 to the machine before actual
commissioning.
The MP_simMode parameter offers four different setting possibilities for the
programming station mode:
If FullOperation is set, the TNC 640 starts in normal operation. The
programming station mode is deactivated. All drives and the PLC are active.
Choose the CcOnly setting in order to simulate the CC controller unit while
the PLC is active. In this case all PLC inputs and outputs, as well as the
emergency-stop loop (X41/34 and X42/4), must already be connected correctly
in order to switch the TNC 640 on correctly. As of NCK software version
597 110-04, analog values are only simulated and are no longer output if axes
are moving.

Danger

With the CcOnly setting, all axes are automatically switched to test mode.
Hanging axes are not braked in test mode.
Hanging axes need 100 % weight compensation.
Ensure that hanging axes are adequately supported.

Choose CcAndExt in order to simulate the CC controller unit and all PLC
inputs and outputs. The PLC runs in simulation mode, and the emergency-stop
loop and PLC inputs and outputs are not interrogated.
If Delivery is set, all axes are set to the test mode during startup of the TNC
640, and a switch-on of the axes is prevented. The user should then be able
to start the control, even with an incomplete or faulty axis configuration in
order to put the axes into operation. After the configuration of all axes has
been completed, the control can be switched to full operation (FullOperation).
If MP_simMode is set to the value Delivery, a warning is output after the TNC
640 is started up.

Note

After changes in MP_simMode, the TNC 640 must be restarted for the
new settings to become active.

January 2015 7.1 Display and operation 1890


MP_simMode
Specify the type of programming station mode
Available from NCK software version: 597 110-02.
Format: Selection menu
Options: FullOperation
Programming station mode is switched off, the emergency-
stop loop (X41/34 and X42/4) must be complete. The drives are
moved.
CcOnly
Simulation of the CC controller unit. All PLC inputs and outputs,
as well as the emergency-stop circuit, must be connected
correctly in order to switch the control on correctly.
CcAndExt
Simulation of the CC controller unit and all PLC inputs and
outputs. The emergency-stop loop does not need to be
complete. The PLC runs in simulation mode.
Delivery
Mode for commissioning.
During power-up, all axes are automatically put into the test
mode. The drives cannot be switched on. In this way, the
control can be started even with an incomplete or faulty axis
configuration.
Default: FullOperation
Access: LEVEL3
Reaction: RESET
Traversing the reference position of the axes can be skipped in programming
station mode.
Set the MP_skipReferencing parameter to the value TRUE in order to set the
axes directly on the reference position when the control is started.

MP_skipReferencing
Fast reference run
Available from NCK software version: 597 110-02.
Format: Selection menu
Options: FALSE
The axes are not set to the reference position.
TRUE
The axes are set directly on the reference position when the
control is started.
Default: FALSE
Access: LEVEL3
Reaction: RESET

1891 HEIDENHAIN Technical Manual TNC 640


You can suppress the emergency-stop test with the MP_skipEmStopTest
parameter.

MP_skipEmStopTest
No emergency-stop test is performed
Available from NCK software version: 597 110-02.
Format: Selection menu
Options: TRUE
Emergency-stop test is not performed
FALSE
Emergency-stop test is performed
Default: FALSE
Access: LEVEL3
Reaction: RESET
On the TNC 640, transferring configuration data from a machine with a CC
61xx (HSCI) to a programming station can result in errors concerning the
interpolator and simulation (e.g. position encoder / speed encoder / PWM
assignment does not match the simulated default setting of the CC 422). In
the MP_simHardwareType parameter, you can therefore specify the CC type
to be simulated in programming station mode. If this machine parameter is
defined, it has priority over MP_hardwareType in CfgHardware.

MP_simHardwareType
Controller unit to be simulated in programming station mode
Available from NCK software version: 597 110-05.
Format: Selection menu
Options: automatic
Automatic identification of controller unit
CC 422
CC 422 controller unit for conventional axes
CC 424
CC 424 controller unit for direct drives with high control loop
requirements (very short cycle times)
CC 61xx
CC 61xx or UEC 11x controller unit with HSCI interfaces
NoCC
No controller unit
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

MP_simHardwareType
Controller unit to be simulated in programming station mode.
Only the value NoCC is possible on the TNC 640.
Available from NCK software version: 597 110-05.
Format: Selection menu
Options: NoCC
No controller unit installed
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

January 2015 7.1 Display and operation 1892


7.1.15 Operating modes / control operation in the operating mode group

Operating modes

Note

All machining channels of an operating mode group have the same


operating mode.
The symbolic PLC operands available depend on the control model. Under
certain circumstances not all operands listed in the following table may be
available on your control.

In the following PLC operands, the NC informs the PLC of the current
operating mode of an operating mode group:

PLC operand / Description Type

NN_OmgManual M
Manual Operation operating mode
0: Operating mode not active
1: Operating mode active
NN_OmgHandwheel M
Electronic Handwheel operating mode
0: Operating mode not active
1: Operating mode active
NN_OmgMdi M
Positioning with Manual Data Input operating mode
0: Operating mode not active
1: Operating mode active
NN_OmgProgramSingle M
Program Run, Single Block operating mode
0: Operating mode not active
1: Operating mode active
NN_OmgProgramRun M
Program Run, Full Sequence operating mode
0: Operating mode not active
1: Operating mode active
NN_OmgReference M
Reference operating mode
0: Operating mode not active
1: Operating mode active
NN_OmgJogIncrement M
Incremental Jog operating mode
0: Operating mode not active
1: Operating mode active
NN_OmgAuxiliaryMode D
Product-specific code for special modes and submodes
For the return codes, see the table below

1893 HEIDENHAIN Technical Manual TNC 640


Return codes of NN_OmgAuxiliaryMode:

Return code = Special mode or submode / Description


Product-specific
code
101 Cycle in preparation
If a program was selected but not yet started with
Cycle ON (e.g. an M function is run in manual
control)
102 Reference in preparation
If the axes to be referenced were selected but the
reference run has not yet been started
103 Single Block in preparation
If a program was selected and SINGLE BLOCK is
active but has not yet been started with Cycle ON
104 Continuous in preparation
If a program was selected and CONTINUOUS is
active but has not yet been started with Cycle ON
105 Single Block Continuous in preparation
If a program was selected and SINGLE BLOCK and
CONTINUOUS is active, but has not yet been
started with Cycle ON
106 Measurement in preparation
If in the "Measure the tool" overview the "Touch
probe" soft key was pressed but the measuring
cycle has not yet been started
107 If the Retraction special operating mode is active
following power failure
201 Teach-In
Teach-In operating mode and cycle have been
started
202 Single Cycle
If, for example, an M function is run in manual
control
203 Single Program
If a single cycle is started
204 Program cycle ON and continuous mode
If a single cycle is started and CONTINUOUS is set

January 2015 7.1 Display and operation 1894


"Machine"  Main operating modes "Machine"
operating modes • Traverse reference points (not with absolute encoders)
• Manual Operation
• Electronic Handwheel
• Positioning with Manual Data Input
Machine individual NC blocks without a special program context
• Program Run, Single Block
Machine an NC program block by block. Each NC block must be started
manually.
• Program Run, Full Sequence
Completely machine the NC program
 Superimposed operating modes "Maschine" (cannot be called from all main
operating modes)
• MOD
Basic settings and information
• Program Management/Interfaces
File manager and configuration of external interfaces
• Edit Tool Table
• Edit Pocket Table
• Edit Other Tables

Operating modes  Main operating modes "Editor"


"Editor" • Programming and Editing
• Test Run
Virtual machining of a workpiece with nearly real-time graphic
simulation
 Superimposed operating modes "Editor"
• MOD
General settings and settings via code number
• Program Management/Interfaces
• MP Editor
• PLC programming

1895 HEIDENHAIN Technical Manual TNC 640


Operating PLC Module 9285 can be used to disable operating modes and other
modesDisable functions.
Module 9285 Set the access level
PLC Module 9285 locks/enables the following predefined functions. If the bit
is set in the mask, the function is locked. If the bit is set to 0, the function is
enabled:

Group 0: Disabling operating modes Bit mask

Manual Operation operating mode 0x01

Electronic handwheel operating mode 0x02

Positioning with Manual Data Input 0x04


operating mode

Program Run, Single Block operating mode 0x08

Program Run, Full Sequence operating mode 0x10

smarT.NC operating mode 0x20

Group 1: Disabling write-access to files Bit mask

NC programs 0x01
(*.H, *.I, *.HU, *.HP, *.HC, *.DXF)

Tool table 0x02

Pocket table 0x04

Preset table 0x08

Pallet table 0x10

Group 2: Disabling other functions Bit mask

Manual probing 0x01

Code numbers 0x02

Call:
PS B/W/D/K <Group number>
0: Disable operating modes
1: Disable write-access to tables
2: Disable other functions
PS B/W/D/K <Bit mask>
CM 9285
PL B/W/D <Status>
0: Function performed
1: Illegal group number
2: Incorrect parameterization via bit mask
20: Module was not called in a spawn job or submit job

January 2015 7.1 Display and operation 1896


Error code:

Marker Value Meaning


NN_GenApiModule 0 Function performed
Error (M4203) 1 Error code in W1022
NN_GenApiModule 1 Invalid group number
ErrorCode (W1022) 2 Invalid value for bit mask
20 Module was not called in a spawn job or
submit job

Start/stop of the With the following PLC operands, the PLC informs the NC of the start or stop
machining channels status:

PLC operand / Description Type

PP_OmgNcStart M
NC start for all machining channels of this operating
mode group
0: NC start not active
1: NC start active
PP_OmgNcStop M
NC stop for all machining channels of this operating
mode group
0: NC stop not active
1: NC stop active

1897 HEIDENHAIN Technical Manual TNC 640


Set status Module 9409 Set status information of an operating mode group
information of an Use Module 9409 to set the status information of an operating mode group.
operating mode
Call:
group
PS B/W/D/K <Number of the operating-mode group>
PS B/W/D/K <Number of the status information>
1: Delay leaving the "Pass over Reference points" mode
2: .PET PLC error table: Activate/deactivate alternative error
reactions
PS B/W/D/K <New value of the status information>
Previously for all statuses: 1/0 = activate/deactivate
CM 9409
PL B/W/D <Result>
0 = Status information was set
1 = Invalid number of the operating mode group
2 = Invalid number of the status information
3 = Invalid value
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error, status information was set
Error 1 Error in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter <Number of the
ErrorCode (W1022) operating-mode group>, for <Number of the
status information> or for <New value of the
status information>

January 2015 7.1 Display and operation 1898


Selecting the Module 9425 Select a pallet file or an NC program as main program for
NC program or an operating-mode group
pallet file Use Module 9425 to select a pallet file or an NC program as main program for
an operating-mode group.
Constraints:
 The module can only be called in a submit or spawn job.
The module does not permit selection if
 An NC channel of the indicated operating-mode group is already active.
 An NC program is currently being executed.
 An error message with the "Emergency Stop" or "Program Cancellation"
reaction is pending.
 No operating mode for running NC programs has been selected for the
operating-mode group.
Possible errors:
 The entered number of the operating-mode group is invalid
 The entered mode is invalid
 The entered string number is invalid
 The operating mode of the NC channel does not permit any NC machining
A pending error message does not permit selection or execution
 The module was called from the cyclic program task
 An NC channel of the operating-mode group is already active
 The selected file is not an NC program or pallet file
 The selected file could not be found
Call:
PS B/W/D/K <Number of the operating-mode group>
PS B/W/D/K/S<String number or constant string: path name>
PS B/W/D/K <Mode (bit-coded)>
Bit 0: Reserved
Bit 1: Reserved
Bit 2: Selection of an NC program (0)
or a pallet file (1)
CM 9425
Error code:

Marker Value Meaning


NN_GenApiModule 0 NC program or pallet file was selected
Error 1 Error in NN_GenApiModuleErrorCode

1899 HEIDENHAIN Technical Manual TNC 640


Marker Value Meaning
NN_GenApiModule 1 The specified number of the operating-mode
ErrorCode group is invalid
2 The entered mode is invalid
3 The entered string number is invalid
8 The operating mode of the NC channel does not
permit any NC machining
A pending error message does not permit
selection or execution
20 The module was called from the cyclic program
task
28 An NC channel of the operating-mode group is
already active
29 The selected file is not an NC program or pallet
file
56 The selected file could not be found

January 2015 7.1 Display and operation 1900


7.1.16 Retracting after power failure
The operator can retract a tool following power failure in the Retraction
special operating mode. If power fails during machining (e.g. thread cutting),
the tool can be retracted from the workpiece following a restart of the control
before the brake test is performed and the axes have to be homed.
Machine parameter MP_retractionMode = Available activates the
Retraction operating mode. After each control power-up, the operator is
shown the RETRACTION ON/OFF soft-key in power interruption condition. If
the operator specifies RETRACTION ON and acknowledges power
interruption with the CE key, the Retraction mode becomes active after the
self-test. The operator is shown a dialog with possible parameter settings for
retracting, and the status bar displays the green message Retraction active.
The operator can select between four special retraction modes:
 Machine axes
 Tilted system
 Tool axis
 Thread
If the operator selects RETRACTION OFF, the process is continued as usual
and the control can be operated normally after the self-test. For detailed
information on operating the Retraction operating mode see the TNC 640
User's Manual.

1901 HEIDENHAIN Technical Manual TNC 640


Danger

For the special operating mode Retraction please note the following:
 If the operator selects RETRACTION ON, this causes the brake test not
to be implemented (holding torque test) at the end of the self-test of the
control.
The functionality of the holding brakes can be undermined by this. The
brake test is only carried out when the Retraction operating mode is
completed with the EXIT RETRACTION soft-key.
 If the operator selects RETRACTION ON, this has the result that no
referencing is requested for the axes that would have to be referenced
after switch-on to determine the actual position.
For these axes the saved switch-off position is used as the momentary
axis position. Referencing is only requested when the Retraction
operating mode is completed with the EXIT RETRACTION soft-key.
 If the operator selects RETRACTION ON, then monitoring of the
software limit switches is inactive for all non-referenced axes, because
no precise axis positions are available.
 Please note the points above with risk analysis for the machine, and
implement all necessary safety measures such as closing and locking
guard doors to avoid danger to the operator.
 The Retraction operating mode is also available with systems featuring
HEIDENHAIN Functional Safety FS, although the brake test is always
implemented here at the end of the self-test. This test may cause
movements in the axes. Take this into account when considering
enabling of the Retraction operating mode.

In the PLC program the API marker NN_OmgAuxiliaryMode = 107 can be


used to query whether the operating mode Retraction is momentarily active.
Please note the following when developing the PLC program:
 As long as the operating mode Retraction is active, the PLC program
should prevent access to the configuration data e.g. via cycles or PLC
processes, because automatic modifications in the configuration data are
required during retraction. The processes may interfere with each other.
 If you wish to give the operator the possibility to use a handwheel in
Retraction operating mode this must be correspondingly prepared in the
PLC program.
 Take care in Retraction operating mode that the PLC program reliably
activates the spindle when requested by the NC software. This is important
for functionality of the Thread traversing mode.

January 2015 7.1 Display and operation 1902


 As long as the Retraction programming mode is active, the NC software is
unable to monitor the software limit switches of non-referenced axes.
Therefore deactivate the holding functions for the axis direction keys. The
PLC program should ensure that axes stop when the operator enables an
axis direction key.
Encoder handwheels connected to a position input of a controller unit cannot
be used in Retraction mode.

Settings in the configuration editor MP number


System
CfgDisplaySettings
CfgRetractionMode
retractionMode 124101

MP_retractionMode
Enable Retraction special operating mode
Format: Selection menu
Options: Available
The operator can select the Retraction operating mode during
control start-up.
Prohibited
The Retraction operating mode is not available to the user.
Default: Prohibited
Access: LEVEL3
Reaction: RESET

1903 HEIDENHAIN Technical Manual TNC 640


7.1.17 Control operation in the machining channel

Channel-specific Arc end-point tolerance


settings

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgGeoTolerance
circleDeviation 200901

The TNC 640 uses the entered NC data to calculate the deviation of the arc
radius between the beginning and end of the arc:
 Enter a tolerance value in MP_circleDeviation. If the entered tolerance is
exceeded, the error message CIRCLE END POS. INCORRECT appears.

MP_circleDeviation
Permissible deviation from radius
(cf. iTNC 530: MP7431)
Available from NCK software version: 597110-01.
Format: Number
Input: 0.00001 to 0.01600 [mm]
Enter the permissible deviation of the radius between the end
point and starting point of the arc.
Default: 0.005 [mm]
Access: LEVEL1
Reaction: RUN

January 2015 7.1 Display and operation 1904


Configuring Tool Center Point Management (TCPM)

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgTCPM
toolRefPoint 201302
maxCompFeed 201303

Configure the TCPM in the parameter object CfgTCPM:


 In MP_toolRefPoint, define the tool reference point
 In MP_maxCompFeed, define the maximum velocity of the principal axes
during compensating movements. The speed for compensating
movements with M128 can also be limited via the PLC and the FMAX soft
key, in addition to MP_maxCompFeed.

MP_toolRefPoint
Tool preset for programmed path
Available from NCK software version: 597110-01.
Format: Selection menu
Options: ToolTip
Tool tip
ToolCenter
Tool center point
Default: ToolTip
Access: LEVEL1
Reaction: RUN

MP_maxCompFeed
Maximum velocity of the principal axes during compensating
movements through M128 or TCPM
Available from NCK software version: 597110-05.
Format: Number
Input: 0 to 59 999 999 940 [mm/min] with max. 3 decimal places
Default: 600 000 [mm/min], optional parameter
Access: LEVEL1
Reaction: RUN

1905 HEIDENHAIN Technical Manual TNC 640


NC program run

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgChannelFile
geoIniProgram 200402
geoCycleEnd 200405
geoCancelCycle 200406
System
Paths
CfgSystemCycle
[Key name of the OEM system cycle]
path 102601

Starting an NC The PLC executes an NC start with PP_ChnNcStart.


program
PLC operand / Description Type

PP_ChnNcStart M
NC start or cycle on
0: NC start not active
1: NC start active

The NC uses NN_ChnNcStartExternRequest to ask the PLC to initiate an NC


start. The PLC then uses PP_ChnNcStart to activate the NC start.

PLC operand / Description Type

NN_ChnNcStartExternRequest M
External request for an NC start
0: External NC start not requested
1: External NC start requested

January 2015 7.1 Display and operation 1906


Before running the actual NC program, the NC first starts the program defined
in MP_geoIniProgram, and then the OEM program defined in MP_Path.
The NC program is executed immediately after the lead programs.

MP_geoIniProgram
Path and name of the lead program
Available from NCK software version: 597110-01.
Format: String
Input: Path and name of the lead program
No entry: No lead program is executed.
Default: %SYS%\jhcyc\sys\nc\iniprog.h
Access: LEVEL3
Reaction: RESET

MP_path
Path and name of the OEM lead program
Available from NCK software version: 597110-01.
Format: String
Input: Path and name of the OEM lead program
No entry: No OEM lead program is executed.
Default: –
Access: LEVEL3
Reaction: RUN

Automatic NC
program start
Settings in the configuration editor MP number
System
CfgAutoStart
autoStartEnabled 100701
closeDialogOnOK 100702
useLastStartData 100703
hideSoftkey 100704

NC programs and pallet tables can be started by the TNC 640 automatically at
a date and time set by the user.
To use the autostart function and enter the autostart, the following
preconditions are required:
 You have to enable the autostart operation in MP_autoStartEnabled.

1907 HEIDENHAIN Technical Manual TNC 640


 The PLC must enable autostart operation with
PN_ChnAutostartEnable = 1.

Danger

Caution, danger to life!


Do not use this function on open machines without enclosed working
space (including protective door)!
It must be ensured that the machine operator will not be able to activate
the "Automatic NC program start function" while the protective door is
open. It is absolutely necessary that you take this into account in the PLC
program of the machine. Disable the function for open machines through
the PLC by setting the operand PN_ChnAutostartEnable permanently to
the value 0. Be sure to link the operand with protective-door monitoring in
your PLC program.

 Enable the autostart function with the parameter setting


MP_autoStartEnable = ON
 With MP_closeDialogOnOK, define whether the dialog window for
configuration of the Autostart function stays visible after pressing the OK
soft key or is hidden.
 With MP_useLastStartData, define whether the most recent entries in the
dialog window for configuration of the autostart function should remain
saved.
 Switch to Program Run, Full Sequence mode and use PGM MGT to activate
the NC program or pallet table to be processed. No current error messages
are allowed.
 Press the AUTOSTART soft key.
 Enter the date and time at which the machine is to be switched on.
 Set PN_ChnAutostartEnable for the PLC to enable the autostart function.
If the PLC does not enable the function, the error message Autostart not
enabled appears.
 Activate the autostart function with the AUTOSTART ON soft key. Active
blinks in the window.
 In MP_hideSoftkey you can specify whether the AUTOSTART soft key is to
be hidden or grayed out when MP_autoStartEnabled is deactivated
(=OFF).

January 2015 7.1 Display and operation 1908


MP_autoStartEnabled
Activate the AUTOSTART soft key
(compare to iTNC 530: MP7683 bit 5)
Available from NCK software version: 597110-01.
Format: Selection menu
Options: ON
Permit autostart operation.
AUTOSTART soft key is displayed
OFF
Suppress autostart operation.
AUTOSTART soft key is not displayed.
Default: ON
Access: LEVEL1
Reaction: RUN

MP_closeDialogOnOK
Close the Automatic Program Start dialog window with the OK
soft key
Format: Selection menu
Options: Defines the behavior of the dialog window for configuration of
the automatic program start (AUTOSTART soft key), if the OK
soft key is pressed:
TRUE
The dialog window is closed
FALSE
The dialog window remains visible
Default: TRUE, optional parameter
Access: LEVEL1
Reaction: RUN

MP_useLastStartData
Use the last input in the Automatic Program Start dialog
window as default.
Format: Selection menu
Options: Specifies the default when opening the dialog window for
configuration of the automatic program start (AUTOSTART soft
key).
TRUE
In the dialog window, the last input, the last file entered, and the
current date and time are indicated.
FALSE
No specifications for opening of dialog window. The currently
selected program is used for the AUTOSTART function.
Default: TRUE, optional parameter
Access: LEVEL1
Reaction: RUN

1909 HEIDENHAIN Technical Manual TNC 640


MP_hideSoftkey
Hide or gray out the AUTOSTART soft key
Available from NCK software version: 597110-06.
Format: Selection menu
Options: Specifies whether the AUTOSTART soft key is hidden or grayed
out when it’s deactivated:
TRUE
AUTOSTART soft key is hidden
FALSE
AUTOSTART soft key is grayed out
Default: TRUE, optional parameter
Access: LEVEL1
Reaction: RUN

PLC operand / Description Type

PN_ChnAutostartEnable M
Enable the autostart function
0: Autostart disabled
1: Autostart enabled

The NC informs the PLC of the current autostart status in two markers:
 NN_ChnAutostart indicates whether autostart is active.
 NN_ChnAutostartTimeExpired indicates whether the time programmed
by the user has expired. After expiration of the time, the PLC activates NC
start with PP_ChnNcStart.

PLC operand / Description Type

NN_ChnAutostart M
Autostart active
0: Autostart not active
1: Autostart active
NN_ChnAutostartTimeExpired M
Autostart: Time has expired
Request for program start
0: Autostart time not expired
1: Autostart time expired

January 2015 7.1 Display and operation 1910


Module 9290 Select an NC main program
The module selects main programs for the Single Block and Full Sequence
operating modes.
Constraints:
 The module can only be activated if it is called from the Single Block or Full
Sequence mode and no NC program is currently executed.
 The module can only be called in a submit or spawn job.
Call:
PS B/W/D/K/S<String number or constant string: file name>
CM 9290
Error code:

Marker Value Meaning


NN_GenApiModule 0 Program was selected
Error (M4203) 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid string programmed
ErrorCode (W1022) 8 Control is not in the Single Block or Full
Sequence mode
20 Call not in a submit/spawn job
29 Selected file is invalid or does not exist
58 No NC channel or multi-channel system
configured

1911 HEIDENHAIN Technical Manual TNC 640


Terminating the In NN_ChnProgEnd, the NC informs the PLC that an NC stop was executed
NC program because the program end has been reached.

PLC operand / Description Type

NN_ChnProgEnd M
End of NC program reached
A "program end" command was executed (END PGM,
M02 or M30).
0: End of NC program not reached
1: End of NC program reached

After the NC program has been run, the NC starts the program defined in
MP_geoCycleEnd. The trailer program is executed immediately after the
NC program.

MP_geoCycleEnd
Path/name of the trailer program for program end
Available from NCK software version: 597110-01.
Format: String
Input: Path and name of the trailer program
No entry: No trailer program is executed.
Default: %SYS%\jhcyc\sys\nc\progend.h
Access: LEVEL3
Reaction: RESET

Interrupting an The PLC or NC can stop execution of the NC program. After interruption, the
NC program NC program is continued.
During program interruption, the axes can be traversed manually.
PLC stops NC program run:
The PLC executes an NC stop with PP_ChnNcStop.

PLC operand / Description Type

PP_ChnNCStop M
NC stop or cycle off
0: NC stop not active
1: NC stop active

January 2015 7.1 Display and operation 1912


NC stops NC program run:
The NC uses the following markers to inform the PLC of NC program
interruption and the reason for the interruption:
 NN_ChnStopExtern: The program was interrupted because of an external
request (e.g. Stop key).
 NN_ChnProgStopped: The program was interrupted because of a program
stop (M0), the end of a block in Single block mode, etc.
 NN_ChnProgStoppedAsync: The program interruption was caused by an
error, etc.

PLC operand / Description Type

NN_ChnNcStopExtern M
NC stop or Cycle off
NC stop is executed by the NC.
0: NC stop not executed
1: NC stop was executed by the NC
NN_ChnProgStopped M
NC program interruption
The NC reports an asynchronous program interruption,
such as at the end of a block in Single Block mode, M0,
etc.
0: No NC program interruption
1: NC program interruption
NN_ChnProgStoppedAsync M
Asynchronous NC program interruption
The NC reports an asynchronous program interruption,
for example because of an error, etc.
0: No asynchronous NC program interruption
1: Asynchronous NC program interruption

Moving the axes During program interruption, the NC distinguishes between "manual traverse
during program of the axes" and "returning to the contour." The NC indicates the status in the
interruption following markers:

PLC operand / Description Type

NN_ChnProgManTraverse M
Manual traverse of the axes active (for lathes:
inspection operation)
0: Manual traverse not active
1: Manual traverse active
NN_ChnProgReturnContour M
Return to contour active (after manual traverse or block
scan)
0: Return to contour is not active
1: Manual traverse active

1913 HEIDENHAIN Technical Manual TNC 640


Canceling an In NN_ChnProgCancel, the NC informs the PLC of a program cancelation.
NC program
PLC operand / Description Type

NN_ChnProgCancel M
NC program cancelation
NC program canceled because of an internal stop
0: No NC program cancelation
1: NC program cancelation

After the NC program has been canceled, the NC starts the program defined
in MP_geoCancleCycle. The trailer program is executed immediately after the
NC program has been canceled.

MP_geoCancelCycle
Path/name of the trailer program for program cancelation
Available from NCK software version: 597110-01.
Format: String
Input: Path and name of the trailer program.
No entry: No trailer program is executed.
Default: %SYS%\jhcyc\sys\nc\cancelcyc.h
Access: LEVEL3
Reaction: RESET

Block scan
(mid-program
startup)
PLC operand / Description Type

NN_ChnBlockScan M
Mid-program startup (or block scan) active
0: Block scan not active
1: Block scan active
NN_ChnBlockScanStrobeTransfer M
Restore status at block scan (M/S/T/Q transfer)
0: Status not restored
1: Status restored

The PLC operand NN_ChnBlockScan is set when a start block is selected and
the Cycle Start key is pressed. After the start block has been reached, the
signal is reset.
If the Cycle Start key is pressed again, the signal
NN_ChnBlockScanStrobeTransfer is set and all strobes collected during the
block scan are executed by the control.
After the last strobe signal has been acknowledged,
NN_ChnBlockScanStrobeTransfer is also reset to zero. This falling edge
indicates to the PLC that the control is in a state that corresponds to the start
block status.
All data relevant to the PLC has been processed, and therefore the NC
program can be started.

January 2015 7.1 Display and operation 1914


Finding the NC Module 9321 Find the current block number
program and block Prefer Module 9322 to evaluate the NC program!
number
Module 9321 finds the current block number of the active NC program.
Constraints:
 Before running an NC program for the first time, –1 is set as the block
number. For all positioning blocks not generated by an NC program, a cycle
or an NC macro (e.g. PLC positioning, re-approach-logic), –1 is set as the
block number.
 After the NC program is canceled or after the end of the NC program, the
last block number executed is returned.
Call:
PS B/W/D/K <String number>
CM 9321
PL B/W/D <Current block number>
Error code:

Marker Value Meaning


NN_GenApiModule 0 Block number has been found
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid string number
ErrorCode

Module 9322 Query information of the NC program


The module returns information about the momentarily selected or processed
NC program.
Querying the momentarily selected NC program returns the path and file
name of the selected NC program or the selected pallet file and the block
number 0.
Querying the momentarily run NC program returns the path and file name as
well as the momentary block number of the displayed NC program. After
selecting an NC program or a pallet file, the module returns an empty string
and block number 0 until processing starts.
Constraints:
 Values 1 and 3 for the mode parameter are not supported.
 If more than one NC channel is configured then Module 9429 must be used.
 From SW 597110-08, path names in the display form (e.g.
"TNC:\nc_prog\XY.H") are copied in the specified string and shortened for
better display if necessary.

1915 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Mode>
0: Block number of the current NC (sub-)program,no
information about cycle calls
(behavior with program names as with NC block display)
2: Only name of NC main program
PS B/W/D/K <String number>
CM 9322
PL B/W/D <Block number>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (information provided)
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid mode programmed
ErrorCode 2 Invalid string number programmed
58 Function not available with more than one
configured NC channel

January 2015 7.1 Display and operation 1916


Determining the
current machining
cycle Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of machining channel]
CfgNcPgmBehaviour
plcSignalCycle 200803

In MP_plcSignalCycle, you can specify the number or the name of a PLC


word marker. The TNC 640 writes the number of the cycle currently available
for machining to this PLC operand.
This allows you e.g. to disable the execution of selected machining cycles via
the PLC for particular operating situations.
Before starting the execution, the TNC 640 writes the cycle numbers for all
CALL-active machining cycles or for all DEF-active point pattern cycles to the
specified operand.
Upon completion of cycle execution, the PLC operand is reset to 0.

MP_plcSignalCycle
PLC signal for the number of the pending machining cycle
Available from NCK software version: 597110-09.
Format: String
Input: Name or number of a PLC word marker
Max. 500 characters
Default: No value, optional parameter
Access: LEVEL2
Reaction: RUN

Querying the status Module 9429 Interrogate the status of the executed NC program
of the NC program Module 9429 enables the querying of path and file names, block numbers and
the condition of the selected or run NC program in an NC channel.
Querying the momentarily selected NC program returns the path and file
name of the selected NC program or the selected pallet file.
Querying the momentarily displayed NC program returns the path and file
name of the displayed NC program during or following processing. After
selecting an NC program or a pallet file, the module returns an empty string
until processing starts.
Querying the momentarily run NC program returns the path and file name of
the momentarily run NC program or cycle during or following processing. After
selecting an NC program or a pallet file, the module returns an empty string
until processing starts.

1917 HEIDENHAIN Technical Manual TNC 640


Independent of the mode parameter, the module returns the block number of
the displayed NC program during or after processing. After selecting an NC
program or a pallet file, the module returns block number 0 until processing
starts.
Constraints:
 As of SW 597110-08, path names in the display form (e.g.
"TNC:\nc_prog\XY.H") are copied to the specified string and shortened for
better display, if necessary.
Call:
PS B/W/D/K <Channel number>
PS B/W/D <String number: Path name>
PS B/W/D/K <Mode>
0: Do not return a path name
1: Return the path name of the main program
2: Return the path name of the displayed program
3: Return the path name of the executed program
CM 9429
PL B/W/D <Status>
0: NC program is being run
1: NC program run is interrupted
2: NC program run has completed
PL B/W/D <Substatus>
<of status 0: NC program is being run>
0: Program not started yet
1: Program with external start is being run
2: Program with internal start is being run
3: System cycle is being run
<of status 1: NC program run is interrupted>
0: Interruption by external stop, EMERGENCY STOP,
error with "stop" reaction
1: Interruption due to programmed stop
2 : Interruption at block end in the "Program Run, Single
Block" operating mode
3: Interruption at end of the dry run
<of status 2: NC program run has completed>
0 : NC program run completed normally (M02 or
END_PGM)
1: NC program run completely canceled by operator
2: NC program run canceled by operator
3: NC program run canceled by error with reaction
"Cancel"
4: NC program run canceled by EMERGENCY STOP
5: NC program run canceled by programmed error
6: NC program run canceled due to program error
PL B/W/D <Block number of the displayed NC program>
PL B/W/D <Help number, not yet supported>

January 2015 7.1 Display and operation 1918


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (information provided)
Error 1 No information provided,
for error, see NN_GenApiModuleError
NN_GenApiModule 1 Invalid value for <Channel number>
ErrorCode parameter
2 Invalid value for <Mode> parameter
3 The entered string number is invalid

Control in In the Positioning with Manual Data Input, Program Run, Single Block and
operation Program Run, Full Sequence operating modes, the NC uses
NN_ChnControlInOperation to inform the PLC that the control is in
operation. The status "control in operation" applies when the NC is executing
a program, an M function or an axis movement.
NN_ChnControlInOperation is also set if the NC is processing a macro
(cycle) in the background.
This applies to the following situations:
 Program selection
 Leaving the Positioning with Manual Data Input operating mode
 Control start-up (execution of the start-up cycle)
 When running cycles in the Positioning with Manual Data Input operating
mode (the control-in-operation symbol is shown on the screen), e.g. while
entering M functions or setting a datum.
The control-in-operation symbol is displayed on the screen while a traverse job
is active. This is independent of any axis movement. If, e.g., the feed rate
override is set to 0% and a traverse job is pending, the TNC 640 displays the
control-in-operation symbol.
In the Manual Operation operating mode, axes may be moved using the
direction keys, provided that no cycle (macro or NC program) in being
executed which was started via the PP_ChnNcStart marker. The
NN_ChnControlInOperation marker is not set in this case. Axes may be
moved using the direction keys in any operating mode, provided that an NC
program is being executed which explicitly permits this through the FN17:
SYSWRITE ID910 function. Axes may be moved using the direction keys if an
NC program was interrupted and the MANUAL TRAVERSE soft key was
pressed by the operator.

PLC operand / Description Type

NN_ChnControlInOperation M
Control is in operation
0: Control not in operation
1: Control in operation

1919 HEIDENHAIN Technical Manual TNC 640


M, S or T function in The PLC can execute M, S or T functions in parallel with the movement
parallel with programmed in the same NC block.
traverse motion
Module 9404 Start movement while there is an NC strobe
The module starts the movement programmed in an NC block when a strobe
that is effective at the beginning of the same NC block is still present.
 Do not execute the module in a submit job or spawn process.
Call:
PS B/W/D/K <Channel number>
CM 9404
PL B/W/D <Error number>
0: Successful
1: Invalid channel number
15: Module was called in a submit job or spawn process
Error code:

Marker Value Meaning


NN_GenApiModule 0 Movement successfully started
Error 1 Process not possible
NN_GenApiModule 1 An invalid channel number was transferred
ErrorCode 2 Processing of NC part program is not
synchronized
24 The module was called in a submit job or spawn
process

January 2015 7.1 Display and operation 1920


Error status The NC informs the PLC of errors occurring in this machining channel. The PLC
operands are used to distinguish between the reactions to errors (See "PET
table (PLC error table)" on page 1940).

PLC operand / Description Type

NN_ChnErrorWarning M
Error or warning occurred
0: No error or warning occurred
1: NC error or warning occurred
NN_ChnErrorFStop M
Feed stopped because of an error
0: No feed stop triggered
1: Feed stop triggered
NN_ChnErrorNCStop M
NC stop because of an error
0: No NC stop triggered
1: NC stop triggered
NN_ChnErrorCancel M
Program canceled because of an error
0: No program cancelation
1: Program cancelation triggered
NN_ChnErrorEmergencyStop M
Emergency stop triggered because of an error
0: No emergency stop triggered
1: Emergency stop triggered
NN_ChnErrorReset M
Reset because of an error
0: No reset
1: Reset triggered
NN_ChnErrorReact M
NC stop at block end triggered by an error
0: No NC stop triggered
1: NC stop triggered
NN_ChnErrorLiftoff M
NC stop, lift-off and emergency stop after a standstill
triggered by an error
0: No lift-off triggered
1: Lift-off triggered

NN_ChnErrorReset is not used at present because the PLC program stops


when a reset error occurs.

1921 HEIDENHAIN Technical Manual TNC 640


Assignments in In the manual operating modes, the peripheral user devices, such as the
Manual modes of monitor or keyboard unit, are assigned to a machining channel and a spindle.
operation The machining channel is specified in the PLC operands
NN_GenOmgManual and NN_GenChnManual, and the spindle in
NN_GenSpiManual.
The machining channel and the spindle are selected specifically for each
control.

PLC operand / Description Type

NN_GenOmgManual D
Selected operating mode group in manual operation
NN_GenChnManual D
Selected machining channel in manual operation
NN_GenSpiManual D
Selected spindle in manual operation

January 2015 7.1 Display and operation 1922


7.1.18 Error messages and log files
The control displays errors in the header of the screen. Long error messages
or error messages extending over more than one line are abbreviated. The
complete information on all pending error messages is given in the error
window.
Errors and system information (system start, system end, etc.) are entered in
the error log file. The control saves every keystroke and the mouse events in
the keystroke log file.

Error window
 Press the ERR key to call the error window

The error window contains the details of all errors that have occurred (see
figure).
To obtain information on the cause of error and the corrective action, proceed
as follows (see figure):
 Press the MORE INFO soft key

1923 HEIDENHAIN Technical Manual TNC 640


For further details regarding the software's internal error data, such as date,
time, event class, line of the NC program, control program reporting the error,
etc., proceed as follows (see figure):
 Press the INTERNAL INFO soft key

Deleting errors To delete an individual error:


 Use the arrow keys to select the entry you want to delete.
 Press the DELETE soft key.

To delete all errors contained in the error window:


 Press the Delete all soft key.

January 2015 7.1 Display and operation 1924


Information provided by the error message:
 Error number: Assigned by HEIDENHAIN or the machine tool builder
 Error class: Defines the control's reaction to this error (see table)
 Error text: Describes the error (in one or more lines). If the error occurs while
an NC program is running, the line of the NC program will also be indicated.

Overview of error handling in the control:

Error class Reaction Display Log file Acknow Error


entry ledgme group
nt
Ev_class_2 None x Warning
Ev_class_3 None x Warning
Ev_class_4 None x x Warning
Ev_class_5 None x x x Errors
Ev_class_6 Feed stop x x x Error
Ev_class_7 Program abortion x x x Error
Ev_class_8 Program aborts at x x x Error
stable position
Ev_class_9 Emergency stop x x x Error
Ev_class_10 Reset x x x System
error
Ev_class_11 NC stop x x Error
Ev_class_12 NC stop x x x Error
Ev_class_13 Program abortion x x Error
Ev_class_14 Reset – without x x x System
output of error text error
("Processor check
error")
Ev_class_15 Feed stop x x Error
Ev_class_16 Emergency stop x x Error
Ev_class_17 Display informational x x Info
text
Ev_class_18 None x x Warning
Ev_class_19 Program abortion x x x Error

Ev_class_18 is used to report that service files were saved.

1925 HEIDENHAIN Technical Manual TNC 640


Error log file The control saves all errors that occurred and the error information, including
all details, in the error log file (see figure).
To call the error log file:
 Press the LOG FILES soft key

 Press the ERROR LOG soft key

Moving within the log file:


To the oldest entry:
 Press the BEGINNING soft key
To the most recent entry:
Press the END soft key

To view other log file entries:
 Move using the arrow keys (up arrow, down arrow, page up, page down).

January 2015 7.1 Display and operation 1926


To find a log file entry:
Call the "Find" dialog box:
 Press the FIND soft key

 Enter the search string


 Define the search direction

Current and The error log file uses two files, the current file and the previous file.
previous error log
If the current file is full, the control switches the files. After converting the
file
current file to the previous file, the control creates a new current file.
To switch between the current and the previous error log file:
 Press the PREVIOUS FILE soft key

 Press the CURRENT FILE soft key

1927 HEIDENHAIN Technical Manual TNC 640


Filter Use a filter to limit the log file display to the following error groups:
 Information
 Warnings
 Errors
 System errors
In addition, you can select the following information:
 Date and time from which you want the log file contents to be displayed.
 Clients whose errors and error information are to be considered in the log
file display.
Whether the filter is taken into account depends upon the setting of the
FILTER OFF/ON soft key:
 Soft key active: Filter is taken into account
 Soft key not active: Filter is not taken into account
To set the filter:
 Press the FILTER SETTINGS soft key.

To display information:
 Press the INFO soft key.

To display warnings:
 Press the WARNING soft key.

To display errors:
 Press the ERRORS soft key.

To display system errors:


 Press the SYSTEM ERRORS soft key.

To set the client and/or date and time:


Call the "Filter functions" dialog box:
 Press the FURTHER FILTER FUNCTIONS soft key.

 Enter the client and/or date and time.


 Conclude with OK.

To display the log file under consideration of the new filter settings
(prerequisite: the FILTER OFF/ON soft key is on):
 Press the UPDATE soft key

January 2015 7.1 Display and operation 1928


Keystroke log file The control saves the run key and mouse events in the "keylog.txt" keystroke
(keylog.txt) log file (see figure).
To call the keystroke log file from within the error system:
 Press the LOG FILES soft key

 Press the KEYSTROKE LOG soft key

Moving within the log file:


To move to the oldest entry:
 Press the BEGINNING soft key
To move to the most recent entry:
 Press the END soft key
To view other log file entries:
 Navigate with the cursor keys (arrow up, arrow down, page down (PG DN),
page up (PG UP)
Finding a log file entry:
To call the "Find" dialog box:
 Press the FIND soft key

1929 HEIDENHAIN Technical Manual TNC 640


 Enter the search string
 Define the search direction

Current and The keystroke log file uses two files, the current file and the previous file:
previous keystroke
If the current file is full, the control switches the files. The current file is
log file
converted to the previous file and the previous file to the current file. The
contents of the previous file are deleted before new entries are made.
To switch between the current and the previous error log file:
 Press the PREVIOUS FILE soft key

 Press the CURRENT FILE soft key

January 2015 7.1 Display and operation 1930


Log The accumulated keystrokes are now stored simultaneously with the control
events in the log and are displayed in table view (see figure).
In order to be able to track machine operation or machine conditions
systematically, detailed additional information is entered and stored
simultaneously with all important log entries, such as keystrokes, errors,
system errors or warnings.
At least 4 weeks of control operation can be recorded with the log. The data
is saved on the SYS partition and therefore cannot be changed by the user or
OEM.
The log can be read with the programs TeleService or TNCremo and is part of
the service files.

To call the log from within the error system:


 Press the ERR key.
 Press the LOG FILES soft key.

 Press the LOG soft key.

Moving within the log:


To move to the oldest entry:
 Press the BEGINNING soft key
To move to the most recent entry:
 Press the END soft key

1931 HEIDENHAIN Technical Manual TNC 640


To view other log file entries:
 Navigate in vertical direction by simply using the navigation keys
To find a log entry:
To call the "Find" dialog box:
 Press the FIND soft key

 Enter the search string


 Define the search direction

Filter Use a filter to limit the log file display to the following error groups:
 Information
 Warning
 Errors
 System errors
In addition, you can select the following information:
 Date and time from which you want the log file contents to be displayed.
 Clients whose errors and error information are to be considered in the log
file display.
Whether the filter is taken into account depends upon the setting of the
FILTER OFF/ON soft key:
 Soft key active: Filter is taken into account
 Soft key not active: Filter is not taken into account
Setting the filter
 Press the FILTER SETTINGS soft key.

To display information:
 Press the INFO soft key.

To display warnings:
 Press the WARNING soft key.

To display errors:
 Press the ERRORS soft key.

To display system errors:


 Press the SYSTEM ERRORS soft key.

January 2015 7.1 Display and operation 1932


To set the client and/or date and time:
Call the "Filter functions" dialog box:
 Press the FURTHER FILTER FUNCTIONS soft key.

 Enter the client and/or date and time.


 Conclude with OK.

To display the log file under consideration of the new filter settings
(prerequisite: The FILTER OFF/ON soft key is set to ON):
 Press the UPDATE soft key

1933 HEIDENHAIN Technical Manual TNC 640


OEM log

Note

Writing to OEM logs must only take place in worthwhile intervals, since
under circumstances the processing time could be affected negatively, and
the hard disk written to unnecessarily.

Module 9277 Write data into the OEM log


With Module 9277 the PLC can write data into a specific OEM log. A
maximum of 8 OEM logs can be used simultaneously. The module can be
called from a cyclic PLC program or from a spawn job or submit job. The string
for the log entry may contain two wildcards (data1 and data2). Only wildcards
that occur are replaced. The output format is controlled through the entry %d
for integers or the entry %f for floating point numbers with three decimal
places. Alternatively, you can define the number of decimal places with %.1f
to %.6f.
Example of a string for the log entry:
S“data1: %.2f data2: %d“
If the maximum log size of 1 MB is exceeded, the log is copied to
<name>.LOG.OLD and a new log with the same name is created. Once the
logs have been called, they remain open until the control is shut down.
Constraints:
 If bit 2 (close file) of the <Switch for additional entries> is set, the
programmed data of the other module parameters (taking bit 0 and bit 1 into
account) are written to the file before closing it.
 Programming an empty string inserts a blank line into the corresponding file.
Call:
PS B/W/D/K/S<Path with file name (without .LOG extension)>
PS B/W/D/K/S<String with placeholder for log entry>
PS B/W/D/K <Value for data1>
PS B/W/D/K <Value for data2>
PS B/W/D/K <Switch for additional entries>
Bit 0 = 0/1: Entry without/with time stamp
Bit 1 = 0/1: Entry without/with PLC cycle counter
Bit 2 = 1: The file "Drive:Filename.LOG" will be closed
CM 9277

January 2015 7.1 Display and operation 1934


Error code:

Marker Value Meaning


NN_GenApiModule 0 Data written into OEM log
Error (M4203) 1 Error code in NN_GenApiModuleErrorCode
(W1022)
NN_GenApiModule 2 Invalid string number or invalid string
ErrorCode (W1022) 47 PLC log data could not be written. The
message is no longer to be sent

1935 HEIDENHAIN Technical Manual TNC 640


Saving log files Data relevant for service purposes can be saved in a .zip file. Creating a service
(service files) file is generally recommended should an error occur with the TNC 640. This
file contains useful information, especially for the HEIDENHAIN Service
department during troubleshooting.
The following data (and other information) is saved in the service file:
 Error log file
 Keystroke log file
 Log files of the IPOs and the PLC
 Information on hardware setup and firmware versions
 Machine parameters
 Information and log files of the operating system (can be partially activated
via HE Logging settings)
 Contents of PLC memory
 Error outputs and configuration files of the PLC compiler
 Current Feature Content Level (FCL) and active software options, including
the option designations through the file PLC:\service\SIK.INFO
 Selected NC programs in the Manual Operation, Programming and Program
Test operating modes
 Selected files (*.H/*.I/*.T/*.TCH/*.D) of all operating modes
 Active NC macros specified in the configuration
 Screendump of the momentary control screen when pressing the SAVE
SERVICE FILES soft key (scrdumpError.png)
The control automatically packs the data into a *.ZIP file. You can choose any
name for the ZIP file. The TNC 640 proposes the standard name
SERVICE[number].ZIP. With any other number, as well, the TNC 640
automatically appends a serial number to the file name.
Path: TNC:\[name][number].zip
To save log files:
 Call the error window by pressing the ERR key.

 Press the LOG FILES soft key

 Press the SAVE SERVICE FILES soft key

 Enter a file name for the service file


An additional information text is displayed. This indicates that the service file
also contains NC data (including NC programs) from you or your customers.
You and your customers must be aware of this when you give the service
file to third parties. The informational text must be acknowledged with the
OK button or the ENTER key.
When creating the service file via telemaintenance, the informational text
will not be displayed. You and your customers must be aware that
telemaintenance enables third parties to access your data anyway.
 The control automatically creates the *.ZIP file TNC:\[name][1].zip
If multiple service *.ZIP files exist on the control, the files are numbered in
ascending order. The file with the number 1 is always the file just generated.

January 2015 7.1 Display and operation 1936


Note

 HEIDENHAIN recommends that you encrypt your passwords in order to


protect them in *.CFG files when a service file is generated.
 Before the service files are saved, it is checked whether sufficient
available memory exists for the service files (20 MB). If this is not the
case, a corresponding error message is displayed and the service files are
not generated.
 Files saved on the encrypted PLC partition PLCE: cannot be written to the
service file.

You define new passwords with the configuration object


CfgChangePassword, See "Changing HEIDENHAIN code numbers" on page
1887. This function enables you to replace existing HEIDENHAIN code
numbers.
Proceed as follows to encrypt the passwords:
 Open the configuration editor.
 Move the cursor to the parameter System/Keycode/CfgChangePassword/
[key name = replaced HEIDENHAIN code number]
 Open the MP_replaceWith parameter
After you have entered the new password in the dialog window you can
encode it. An encoded password cannot be decoded in the *.CFG files of the
machine configuration.
 Press the ENCODE PASSWORD soft key to encode the entered password.

Storing OEM files in With the control file PLC:\oemservicefiles.sys, you can include your own
service files OEM-specific files in the service files.
Control files have the following syntax:
 FOLDER <folder> [<fmask>][-a=<n><u>][-s=<n><u>][-b]
Saving all files of a directory. The effect of the command can be influenced
by various parameters. The individual parameters must be entered in the
described sequence. If more than one criterion is specified, all of the criteria
must apply for the file to be saved.

Event Function

<folder> Directory that is to be searched for files to be saved. Only


the specified directory is searched for files, and not the
subdirectories.

[<fmask>] Optional parameter as a selection criterion for the file


name.
The wild cards * can be used for any number of
characters, and the character ? can be used for exactly
one character.
Example: *.TXT, PGM12?.H
If no parameter is entered, all files of the directory are
saved.

1937 HEIDENHAIN Technical Manual TNC 640


Event Function

[-a=<n><u>] Optional parameter for specifying the age of the files to be


saved.
Files that are older than the specified period of time will
not be saved.
<n> for the time period:
 Input of a number
<u> for the unit of time:
 s = seconds
 m = minutes
 h = hours
 d = days
Examples: -a=30s, -a=7d, -a=24h

[-s=<n><u>] Optional parameter for specifying the size of the files to


be saved.
Files exceeding the specified size will not be saved. The
parameter is to prevent that an NC program with 1 GB is
saved, for example.
<n> for the size:
 Input of a number
<u> for the unit of size:
 B = byte
 k = kilobyte
 m = megabyte
Examples: -s=100k, -s=1m

[-b] Binary files are not converted to ASCII files. All binary files
are saved in binary format.

 FILE <fname> [-a=<n><u>][-s=<n><u>][-b]


Saving an individual file. You can use the same parameters that are used for
FOLDER.

Event Function

<filename> Complete path and name of the file to be saved.

January 2015 7.1 Display and operation 1938


 INCLUDE <file>
When a file is specified, it is evaluated as another control file. To prevent
double designations, INCLUDE statements can be nested a maximum of
three times.

Event Function

<file> Complete path and name of the additional control file.

1939 HEIDENHAIN Technical Manual TNC 640


PLC error messages

Settings in the configuration editor MP number


System
Paths
CfgPlcPath
errorTable 102303
errorText 102304
System
PLC
CfgPlcOemError
notifyInfo 103301
notifyWarning 103302
notifyError 103303

PLC error messages are defined in the PET table (PLC Error Table). If the PLC
detects an error, it is transferred to the error system by Module 9084, Module
9085 or by activating a marker defined in the PET table. The error system
ensures that the error is displayed and processed. The PLC error messages
are now displayed with the prefix PLC followed by the line number from the
PET table (e.g. PLC00239).
With Module 9086 you can delete PLC error messages, and with Module 9087
you can interrogate the current status of the error message.

PET table (PLC error  Enter the path and file name of the PET table in MP_errorTable.
table)
 Enter the file name of the text file for PLC error messages in MP_errorText.

Note

A *.PET table is absolutely mandatory, since without it the PLC program


cannot be compiled or activated.
Use the program "PLC-Text" to enter data in the PET table.
If a *.PET table contains more than 4999 error messages, the excessive
messages are ignored and the error message PET table: Too many lines
appears.

MP_errorTable
PLC error message table
Available from NCK software version: 597110-01.
Format: String
Input: Path and file name of the PET table, for example:
%OEM%\table\
Default: –
Access: LEVEL2
Reaction: NOTHING

January 2015 7.1 Display and operation 1940


Message type of In the MTYPE column of the PET table you specify the message type for the PLC
PLC error messages error message. The control can then set a marker depending on the message
type of a pending PLC error message. You can use this function, for example,
to switch LEDs of different colors on or off on the machine, depending on the
message type:

Entry in the Message type Parameter for configuring the


MTYPE column marker
of the PET table
E Error MP_notifyError
W Warning MP_notifyWarning
I Info MP_notifyInfo

1941 HEIDENHAIN Technical Manual TNC 640


MP_notifyInfo
Symbolic name or the number of a marker
Available from NCK software version: 597110-03.
Format: String
Input: Max. 260 characters
This marker is set if there is a message pending from the PLC.
Here it is a PLC error message, for which the value I is entered
in the MTYPE column of the PET table.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_notifyWarning
Symbolic name or the number of a marker
Available from NCK software version: 597110-03.
Format: String
Input: Max. 260 characters
This marker is set if there is a message pending from the PLC.
Here it is a PLC error message, for which the value W is entered
in the MTYPE column of the PET table.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_notifyError
Symbolic name or the number of a marker
Available from NCK software version: 597110-03.
Format: String
Input: Max. 260 characters
This marker is set if there is an error pending from the PLC.
Here, error is a PLC error message for which the value E is
entered in the MTYPE column of the PET table. If the MTYPE
column does not appear in the PET table, all PLC error
messages of the E type are evaluated for errors.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

Error text file Error texts are defined directly in the PET table (max. 32 characters; not
language-sensitive) or in the error text file. In the error text file, you define the
error text to be displayed as well as the information on the cause of error and
corrective action.
Error text files are language-sensitive. The path for the error text file fixed:
%OEM%\plc\language\en (or another language abbreviation).
In MP_System/DisplaySettings/CfgDisplayLanguage/plcErrorLanguage,
you define the language to be used.
You define the name of the error text files in MP_errorText.

January 2015 7.1 Display and operation 1942


MP_errorText
Text file for PLC error messages
Available from NCK software version: 597110-01.
Format: String
Input: Example: PLCErrorText.csv
The path %OEM%\plc\language\ is permanently defined. The last
subdirectory is the language abbreviation for the respective
conversational language, e.g. en for English.
Default: –
Access: LEVEL2
Reaction: NOTHING

Structure of the PET The PLC error message table (*.PET) consists of the following columns, to
table which you can assign special attributes:
 NR
Line number [0 to 4999] in the table. The modules select the PLC error
message by assigning the line number.
 ERROR
The error texts can be specified in the following manners:
• Direct input of the error text (string max. 32 characters)
• Line number of the PLC error text file (# <line no.>) defined in
MP_errorText.
 MARKER
The PLC error message can be activated without module call by setting the
marker defined here. The marker is also set if the error message was
activated through Module 9085. Enter the symbolic name (string, max. 24
characters) of the marker to be set.
Entry 0: No error marker
 Error class: The error class is defined in the following columns (See "Error
status" on page 1921). If none of these error classes is set in the PET table,
NN_ChnErrorWarning is set.
• RESET
0: No NC reset upon activation of the error message (no system error).
1: NC reset upon activation of the error message (system error). The
PLC program stops.
• NC_STOP
0: No NC stop upon activation of the error message
1: NC stop upon activation of the error message (NN_ChnErrorNcStop
is set).
• NC_CANCEL
0: No NC stop with subsequent INTERNAL STOP upon activation of the
error message
1: NC stop with subsequent INTERNAL STOP upon activation of the
error message (NN_ChnErrorCancel is set)
• F_STOP
0: Feed-rate enable is not influenced
1: Feed-rate enable is reset upon activation of the error message
(NN_ChnErrorFStop is set)
• EMER_STOP
0: No EMERGENCY STOP upon activation of the error message
1: EMERGENCY STOP upon activation of the error message
(NN_ChnErrorEmergencyStop is set)

1943 HEIDENHAIN Technical Manual TNC 640


• REACT
This attribute results in an NC stop at block end if the error marker is set
at this time:
0: No NC stop at block end upon activation of error message
1: NC stop or INTERNAL STOP at block end upon activation of the error
message (NN_ChnErrorReact is set).

Note

With the REACT attribute, note the following:


 Cycles are executed completely before an NC stop is triggered.
 An NC stop is triggered only if the error marker is (still) set at the end of
the block or the end of the cycle. Depending on system run times, the
NC stop might be triggered anyway.

• NC_LIFTOFF
0: No lift-off
1: Reaction: Immediate NC stop, lift-off and, after standstill, emergency
stop including activation of the error message (NN_ChnErrorLiftOff is
set)
• AE
The PLC module 9409 allows you to activate an alternative error
reaction provided that it is available in the PET table. For this purpose,
the AE column (alternative error reaction E/C/S/F) in the PET table is
evaluated. However, the error reactions that are active at the time an
error message occurs always remain effective. This means that error
messages that were active before the module 9409 was called, but
have not been displayed yet, will trigger the original error reactions. The
AE column accepts the following entries: E = EMER.STOP, C = NC-
CANCEL, S = NC-STOP, F = F-STOP, N = No reaction, X = Error is
ignored
• SF
0: No service file is generated if an error is reported.
1: A service file is generated if an error is reported.
• PLC
Here, it is possible to save a bit pattern which can be read out by the
PLC program. The hexadecimal input range in the PLC column is $0 to
$FFFFFFFF. The PET column is read out with Module 9393.
 CE
0: Error message can be deleted by the user.
1: Error message cannot be deleted by the user.
 PRIO
The PRIO column is only evaluated if multiple errors are triggered
simultaneously in a particular cycle. A priority of 0 to 2 can be entered for the
error message, with priority 0 being the highest priority.
Only one error per cycle is sent to the event server (error system). If the PLC
triggers several errors at a time, the error with the highest priority is output
in the next cycle. If there are several errors with the same priority, they are
output in the order of occurrence.
Hierarchies or hiding of subsequent errors must be realized in the PLC
program.

January 2015 7.1 Display and operation 1944


 MTYPE
Message type of the PLC error message
E: Error
W: Warning
I: Information
 WARN_LVL: Not evaluated.
 ONL_NAME: Name of a help file (*.CHM), See "Enhanced error notification" on
page 1963.
 ONL_NR: Help number within this help file (*.CHM), See "Enhanced error
notification" on page 1963.

Note

An error can be assigned multiple error classes. The TNC, however, only
triggers the most significant one of the error reactions that have been set.

Structure of the In the error text file, there are four columns with the following meanings:
error text file
 Reference number: This reference is used in the PET table ("Error" column).
 Error text: Displayed error text.
 Cause of error: Text that the error system displays under "Cause" after you
have pressed the Info soft key.
 Corrective action: Text that the error system displays under "Action" after
you have pressed the Info soft key.

1945 HEIDENHAIN Technical Manual TNC 640


Module 9084 Display PLC error messages with additional data
The module displays PLC error messages with additional data. You can insert
placeholders (%s, %d, %f) at any position of the error texts. The placeholders
are assigned the data from the module at run time. Only those placeholders
that are defined in the PLC error message will be replaced. %s is replaced by
the string or the string content. The first occurrence of %d or %f in the PLC
error message is replaced by the content of variable 1, and the second
occurrence of %d or %f is replaced by the content of variable 2. %d is an
integer, %f is a floating point number with three decimal places. Alternatively,
you can define the number of decimal places with %.1f to %.6f.
If the module is called several times with the same line number of the *.PET
table, the error message is entered only once in the queue. A maximum of 32
PLC error messages can be entered in the queue.
If an error marker is assigned in the PET table, it is set.
If the *.PET table or the line number is not found, the error message PLC ERROR
<line number> appears.
Call:
PS B/W/D/K <Line number in the *.PET table>
0 to 4999: Line number
PS B/W/D/K/S<Data for %s>
PS B/W/D/K <Data for %d or %f; variable 1>
PS B/W/D/K <Data for %d or %f; variable 2>
CM 9084
Error code:

Marker Value Meaning


NN_GenApiModule 0 PLC error message with additional data
Error displayed
1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Line number missing
ErrorCode 11 Invalid string in <data for %s>
23 Overflow of PLC error message queue

January 2015 7.1 Display and operation 1946


Module 9085 Display PLC error message
The module transfers PLC error messages to the error system. The error
message texts come directly from the compiled error table (.PET) or from the
selected text file for PLC error messages. PLC error messages (except reset
errors) can be deleted by Module 9086 or by the user. However, deletion can
be disabled in the error table ("CE" column).
Up to 32 error messages can be placed in the queue.
If an error marker is assigned to the error, it is set.
System error: Is displayed without entry in the queue.
Error number –1: System error message EMERGENCY STOP PLC is displayed. This
error message also occurs if no *.PET table was defined.
Error number not equal to –1 and no *.PET table selected:
PLC system error message: ERROR TABLE MISSING
Call:
PS B/W/D/K <Line number in the *.PET table>
0 to 4999: Line number
–1: System error message EMERGENCY STOP PLC
CM 9085
Error code:

Marker Value Meaning


NN_GenApiModule 0 Error message displayed or in queue
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Line number missing
ErrorCode 8 Incorrect operating mode, compatibility error
marker set
23 Overflow of PLC error message queue, or too
many error messages from string memory

1947 HEIDENHAIN Technical Manual TNC 640


Module 9086 Clear PLC error message
Use this module to erase all set PLC error messages or a specific error
message. System errors cannot be deleted.
Call:
PS B/W/D/K <Line number in the *.PET table>
0 to 4999: Line number
–1: Clear all PLC error messages
CM 9086
Error code:

Marker Value Meaning


NN_GenApiModule 0 Error message displayed or in queue
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Line number missing
ErrorCode 8 Incorrect operating mode, compatibility error
marker set

January 2015 7.1 Display and operation 1948


Module 9087 Status of PLC error message
The module interrogates the status of a specific PLC error message, or the
PLC error status in general. In addition, the number of the error message
active on the screen and the total number of PLC error messages in the error
list can be queried.

Call:
PS B/W/D/K <Line number in the *.PET table, status code>
0 to 4999: Line number
–1: PLC error message, general
–2: Number of the active PLC error message
–3: Number of error messages in the *.PET table
CM 9087
PL B/W/D <Status/error code>
For code 0 to 4999:
0: No error message with the number, or message cleared
–1: Line number does not exist
Bit 0 – PLC error message is displayed
Bit 1 – PLC error message in queue

For code –1:


0: No PLC error message
2: PLC error message in queue

For code –2:


≥ 0: Number of the displayed error
–1: No error in the *.PET table
For code –3:
≥ 0: Number of errors in the *.PET table
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status information was read
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid line number of status code
ErrorCode

1949 HEIDENHAIN Technical Manual TNC 640


Module 9393 Read PLC column from PET table
In the PLC column of the PET table, an arbitrary value may be saved for each
error number. This value can be read out with module 9393. The hexadecimal
input range in the PLC column is $0 to $FFFFFFFF.
Call:
PS B/W/D/K <Line number in the PET-table>
Error code
PS B/W/D/K <Mode>
0: PLC column
CM 9393
PL B/W/D <Value>
Mode 0: Value in the PLC column, in the event of an error: 0
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error, column was read
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter <Line number in the
ErrorCode PET table>
2 Invalid value for <Mode> parameter

January 2015 7.1 Display and operation 1950


Entering data in log The error log can be written to by the PLC or from an NC program.
files
To write data from an NC program to the log:
 Use the FN38: SEND function in the NC program. It is available after entry of
the code number 555343 (Q key, DIVERSE FUNCTION soft key,
FN38 SEND soft key)
Example for programming a block with FN38: SEND:
...
FN38: SEND /"Q-Parameter Q1: %f Q2: %f" /+Q1 /+Q2
...
Log file entry:
Event: 160-00b9 Class: 3 Client: Nc/CH_NC/Geo.KanalObjThread
Date: <date> Time: <time of day>
Text: Q parameter Q1: <value Q1> Q2: <value Q2>

To write data from the PLC to the error log file:


 Use Module 9275 to write ASCII data into the error log file
 Use Module 9276 to write the contents of operands into the error log file

Note

Do not use Modules 9275 and 9276 in the PLC program as shipped.
Instead, use them only for debugging. Otherwise the processing times
could be increased and the hard disk could be written to unnecessarily.

1951 HEIDENHAIN Technical Manual TNC 640


Module 9275 Write ASCII data into the log
The module writes a character string from a PLC string or an immediate string
into the error log file. The entry can be given a special identifier for fast finding
or later editing.
Constraints:
 A buffer of approx. 210 bytes is available for the data to be written (including
the entry identifier).
 The module is executable only in submit or spawn jobs.
 Enter references to dialog texts as <SUB>D<number or > #D<number>
(e.g. "#D17")
 Enter references to error texts as <SUB>E<number> or #E<number> (e.g
"#E199")
 Enter individual special characters as <SUB>A<Unicode> or #A<Unicode>
(e.g. "#A26" for <SUB>)
 There is no limit as to how many numerals can be entered for referencing a
dialog text, an error text or an individual special character. The reference
ends with the first character which is not a numeral.
 If the source string contains a reference that starts with the character '#' and
which is syntactically incorrect or cannot be resolved (dialog text or error
text not defined), the corresponding characters from the source string will
be copied to the target string and no error message is issued—in this case,
the control assumes that this character string belongs to the text to be
copied.
If the reference starts with the <SUB> control character, a syntactically
incorrect or unresolvable reference triggers in an error, as this character
string is no printable text.
Call:
PS B/W/D/K/S<Log entry>
–1: No entry
PS B/W/D/K/S<Log identifier>
–1: No entry
PS B/W/D/K <Priority>
0: Information
1: Warning
2: Error
CM 9275
Error code:

Marker Value Meaning


NN_GenApiModule 0 Entry was written
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter <Priority>
ErrorCode 2 Invalid string number or invalid immediate string
12 No string end identifier
20 Call not in a submit/spawn job
47 The string could not be written to the log

January 2015 7.1 Display and operation 1952


Module 9276 Write operand contents into the log
The module writes the contents of PLC operands into the error log file. The
entry can be given a special identifier for fast finding or later editing.
Constraints:
 A buffer of approx. 210 bytes is available for the data to be written (including
the input identifier)
 When the buffer size is exceeded, an entry is still generated in the log, but
the excessive data is lost. An error message is also generated in this case
 The M/I/O/C/T operands are input in binary form (e.g. 110101)
 The B/W/D operands are saved in hexadecimal form
 The module is executable only in submit or spawn jobs
Call:
PS B/W/D/K <Identifier for operand name>
0: M (marker)
1: I (input)
2: O (output)
3: C (counter)
4: T (timer)
5: B (byte)
6: W (word)
7: D (double word)
PS B/W/D/K <Address of the first operand>
PS B/W/D/K <Number of operands>
PS B/W/D/K/S<Log identifier>
–1: No entry
PS B/W/D/K <Priority>
0: Information
1: Warning
2: Error
CM 9276
Error code:

Marker Value Meaning


NN_GenApiModule 0 Entry was written
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter <Priority>
ErrorCode 2 Invalid identifier for operand name
3 Invalid first operand address
4 Sum of first operand address and number of
operands invalid
5 Address is not a word/double-word address
20 Call not in a submit/spawn job
36 Entry in the log was truncated after 210
characters
47 The PLC data could not be written to the log

1953 HEIDENHAIN Technical Manual TNC 640


Suppressing the
"Key non-
functional" Settings in the configuration editor MP number
message
System
CfgConfigSettings
suppressUserMsg 106502

The parameter MP_suppressUserMsg is used to suppress the green "Key


non-functional" warning message. This warning is not recorded in the error log
and is always issued when a key is pressed on the control that is not assigned
to a function in the current operating situation.

MP_suppressUserMsg
Do not display the Key non-functional error message
Available from NCK software version: 597 110-04.
Format: Selection menu
Options: TRUE
The control does not output the "Key non-functional" error
message.
FALSE
The control displays all error messages.
Default: No value, parameter optional (= FALSE)
Access: LEVEL3
Reaction: NOTHING

January 2015 7.1 Display and operation 1954


7.1.19 PLC pop-up window
The PLC pop-up (i.e. superimposed) window is shown in the following
operating modes:
 Manual Operation
 Positioning with Manual Data Input
 Program Run, Single Block
 Program Run, Full Sequence
 Activate the pop-up window with Module 9217.
 Activate the pop-up window for tool selection with Module 9216, see page
2217.
If you transfer file names without paths, the TNC 640 looks for the file in the
language-specific directory PLC:\LANGUAGE\<language>:
 With MP_helpLanguage (101304), select the active language (file).
When the PLC pop-up window is called, other pop-up windows (such as the
help window) are moved to the background and become active again after the
PLC pop-up window has been closed. The PLC pop-up window can be
displaced to the background by another pop-up window.
The module does not return until the pop-up window is closed. It must be
called in a spawn job, not in a submit job, because otherwise the subsequent
submit jobs will not be run until the pop-up window is closed.
A pop-up window called with Module 9217 can be ended with Module 9261.

1955 HEIDENHAIN Technical Manual TNC 640


Module 9217 Display pop-up window for messages
Module 9217 can be used in the Machine operating modes to display a pop-
up window with the text of a file (max. 16 KB) and various soft-key rows. The
pressed key or soft key is reported. Starting at a certain number of lines (up to
500 lines possible), a scroll bar is displayed automatically. Use the arrow keys
or the PgUp and PgDn keys to scroll through the pop-up window. The
keyboard is assigned to the pop-up window. The width of the window is
determined by the longest line.
If the text file is not located in the directory for the selected language, the
module will attempt to open the file in the English language directory.
Module 9217 always encodes text files as UTF-8. This enables the use of
Asian languages. No changes result for existing plain ASCII files. Any existing
files with ISO/IEC 8859-1 encoding must be converted to UTF-8.
A displayed window can be closed via Module 9261 (sending of events)
through event $010000.
Call:
PS S <Window title>
PS S <File with message text>
PS B/W/D/K <Mode>
0: No soft-key row; clear window with CE
1: Soft-key row with OK soft key
2: Soft-key row with YES and NO soft keys
3: Soft-key row with YES, NO and END soft keys
CM 9217
PL B/W/D <Pressed key or soft key>
–1: Error
0: CE key
1: OK soft key
2: YES soft key
3: NO soft key
4: END soft key
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error, pop-up window was opened
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid identifier for soft key row
ErrorCode 6 No connection to display server
11 Invalid string for title or file name
12 Invalid path for text file
20 Call not in a submit/spawn job
28 Pop-up window already active
30 Window closed by FN 16 function
36 Specified text file was not found

January 2015 7.1 Display and operation 1956


7.1.20 TNCguide—Context-sensitive help system (user documentation)
The TNCguide help system is based on the familiar Windows format for help,
CHM. The CHM format was introduced by Microsoft in 1997 together with the
HTML help system, and is now used by many Windows programs. It is a
collection of individual HTML files that are collected in a single compressed
file.
Mozilla Firefox is used as the browser on the single-processor MC. The dual-
processor controls and the programming station use Internet Explorer or the
standard browser configured for your PC.
In principle, the control with TNCguide is able to open and display any CHM
files, including those prepared by the OEM. HEIDENHAIN provides the
following documentation in the form of CHM files:
 Conversational Programming User’s Manual
 User's Manual for Cycle Programming
 smarT.NC Pilot (in preparation)
 Collection of all NC error messages
The User’s Manual for the programming station is also supplied with the
programming station.
The individual CHM files can be downloaded as ZIP archive from the
HEIDENHAIN homepage on the Internet:
"Services and Documentation" > "Software" > "TNCguide help system"
Context-sensitive entry points were defined in the above CHM
documentation. After the HELP key is pressed, the control displays the
relevant place within the documentation. If no context-sensitive entry point is
available, the control opens the parent main.chm book file, in which all CHM
files in the respective (language dependent) help directory are shown. The
user navigates to the desired entry with the mouse or the arrow keys.
He can also jump to an entry point in TNCguide by mouse click:
 Click the help symbol that is shown at the right of the screen over the soft-
key row.
 The mouse pointer changes into a question mark.
 Click the soft key
 The control starts the help system and—if an entry point is defined for the
soft key—shows the help text pertaining to the soft key’s function. If no
context-sensitive entry point is available, the control opens the parent book
file main.chm, as described above.

1957 HEIDENHAIN Technical Manual TNC 640


Basic conditions for So that CHM files created by OEMs can be shown in the main.chm book file,
the OEM the conditions listed below must be followed:
 The OEMx.CHM files must be stored in the TNC:\tncguide\de directory, or
in TNC:\tncguide\en, etc. When the dialog language is switched
(CfgDisplayLanguage/helpLanguage), the control searches the
corresponding language subdirectory when the help system is called.
HEIDENHAIN recommends placing an OEMx.CHM file in English in each
language subdirectory if you do not translate your documentation into every
language. This ensures that online help is available for all topics, regardless
of the language settings on the control. If no OEMx.CHM file exists in the
language subdirectory, no OEM-specific help is shown when the online help
is called.
 HEIDENHAIN has already defined the names for the CHM files created by
the OEM, so that these files can be displayed as books (if they exist) within
the parent main.chm book file:

Name of CHM file Help-number to


range from

OEM1.chm 10.000.000 10.999.999

OEM2.chm 11.000.000 11.999.999

OEM3.chm 12.000.000 12.999.999

OEM4.chm 13.000.000 13.999.999

OEM5.chm 14.000.000 14.999.999

OEM6.chm 15.000.000 15.999.999

OEM7.chm 16.000.000 16.999.999

OEM8.chm 17.000.000 17.999.999

OEM9.chm 18.000.000 18.999.999

OEM10.chm 19.000.000 19.999.999

 The help-number range shows the context-sensitive entry points that are
permanently defined for each file in order to simplify entry via the parent
main.chm book file.
 The following links contain useful information about HTML help as well as
software for downloading:
http://msdn.microsoft.com/library/en-us/htmlhelp/html/vsconHH1Start.asp
http://www.helpware.net/
 HEIDENHAIN recommends that the display of the HTML pages should be
tested with Mozilla Firefox, series 1.0.x. This is used on the control. The
view differs somewhat from the view in Internet Explorer, especially
regarding the page layout. However, this does not replace a thorough test
of the CHM file on the control.

January 2015 7.1 Display and operation 1958


Using PLC modules to call CHM files created by the OEM:
 PLC Module 9391 is available, with which a PLC error message is displayed,
and in addition an offset is added to the value of the error number (= ONL
Number) in the .PET table in order to generate the actual help number. This
way a group error number can be defined for an (OEM) device in the .PET
table, and the error number (used as an offset) supplied by the device in
case of error then leads to the appropriate help text. This requires an OEM-
specific *.CHM file, which must be indicated in the .PET table (= ONL
Name).
 Additionally, with PLC Module 9390, a help window can be opened directly
by the PLC.
Every possible way of calling your OEM help file offers you the possibility of
showing the entire directory (including HEIDENHAIN help files) in the directory
tree, or just the directory of your OEM help file. This selection is made when
calling the help file. If you enter main.chm as the help file in the call (via PLC
module, *.PET file, soft key or NC error), then the entire directory is shown. If
you enter your OEM help file OEMx.CHM as help file in the call, then only the
directory of your help file is shown.

Files and structure All online help available on a control can be called separately as well as within
of the help system the online help system. In order for the call within the entire system to
function, the conditions described below must be followed:
The help system is structured as follows:
 main.chm – Welcome page of the help system
• jh1.chm
• jh2.chm
• ...
• oem1.chm
• oem2.chm
• oem3.chm
• ...
The HTML pages of the individual online help topics exist completely
independently of each other. Special entries combine the tables of contents
and collate the index entries (see below).

1959 HEIDENHAIN Technical Manual TNC 640


Table of contents
The table of contents of main.chm contains "merge" objects:
<OBJECT type="text/sitemap">
<param name="Merge" value="oem1.chm::/merged.hhc">
</OBJECT>
HEIDENHAIN has specified here the name of the CHM file and the file name
merged.hhc of the table of contents contained therein.
When the welcome page of the help system (main.chm) is called,
all existing help files linked with merge commands are included. Each table of
contents is only displayed if it exists in a file named merged.hhc. This is why
it is essential that you include the directory structure of your help as
merged.hhc when you generate your OEMx.CHM files.
The first level of this table of contents should have exactly one entry: the title
of the help file. This title then appears as a "book" in the entire table of
contents, and can be opened by the user in order to show the subordinate
headings.
Along with the actual HTML pages, the following files must be included when
generating the OEMx.CHM files:
 *.hhc file
In this file you describe the structure and format of your help system. If you
call your help file via main.chm, then this file must be named merged.hhc. If
your help file is to be called directly, without main.chm, then the directory
tree in the *.hhc file that you indicated as content file when you created the
CHM file is used.
 *.hhk file
In this file you list all entries that are to be shown in the index later, and
create the links to the corresponding HTML pages. At least one entry is
necessary here in order for your help file to be displayed.
 *.hhp file
This file is the project file that is necessary for generating an OEMx.CHM
file.
 *.h file (only necessary for context-sensitive help)
In this file you use the #define command to establish connections between
error numbers, from the respectively valid ranges of error numbers, and any
variables.
Example:
#define IDH_OEM1_CHAP1 10000000
#define IDH_OEM1_Page1_1 10000100
 *.txt file (only necessary for context-sensitive help)
In this file you establish the connection between the variables and the
corresponding HTML pages, which are then called.
Example:
IDH_OEM1_CHAP1=chapter1.html
IDH_OEM1_Page1_1=page11.html

January 2015 7.1 Display and operation 1960


Index

Note

"Merging" of the indexes only functions if each file involved contains at least
one index entry, meaning at least one index entry is also necessary for the
OEM help file. In addition, the entry "Binary Index=Yes" must be set in the
project file (*.hhp).

The project file of main.chm contains the following entries:


 [MERGE FILES]
• jh1.chm
• jh2.chm
• ...
• oem1.chm
• oem2.chm
• oem3.chm
• ...
This collates and displays the index entries of all present and named help files
when the index of main.chm is called.

Context-sensitive In a context-sensitive call of the OEM help, the index display starts from the
call OEM help, and here the index entries can only be collated if all other help files
*except* the current OEM file itself are entered in the project file of the OEM
help.
HEIDENHAIN makes a complete list of the file names available.
Summary for OEM help
 Project file: Binary Index=Yes
 Project file: [MERGE FILES] with current list *except* its own file name!
 Table of contents: "merged.hhc" – Title of the help, can be opened as a
"book."
 Index: At least one index entry.

1961 HEIDENHAIN Technical Manual TNC 640


Designing soft keys In order to establish context sensitivity in combination with soft keys, the
for context- additional HELPID and HELPFILE soft keys must be entered in the
sensitive help descriptions of the soft keys. Use HELPID to assign to a soft key an ID (= error
number) from the respectively valid range of error numbers. With the
HELPFILE attribute you indicate in which *.chm file the error number can be
found (e.g. OEM1.chm) or via which file the error number is to be searched for
(e.g. main.chm). The assigned error number, in combination with the *.txt and
*.h files, is used to call the appropriate HTML page when the help is called.
If you enter main.chm as the HELPFILE, the entire directory structure with the
HEIDENHAIN help files is shown. If you enter only one file (e.g. OEM1.CHM),
then only the directory of this file is shown. The OEMx.CHM files must be
stored in the TNC:\tncguide\de directory, or in TNC:\tncguide\en, etc. When
the dialog language is switched (with MP7230), the iTNC searches the
corresponding language subdirectory when the help system is called.
You can enter HELPFILE for each soft key, or once for all soft keys.
Example:
PLC SOFTKEY Project File - Version 1.0
; Path for the soft-key help file
HELPFILE 'TNC:\tncguide\de\oem1.chm'
...
; here the assignment of a HELPID to the soft keys
;without indication of a *.chm file. This automatically links to
; the help file indicated above.
ACTION Action2_Softkey HELPID:10000000

PULSE Pulse1_Softkey HELPID:10000100


BLANK
ENDSKMENU
or:
PLC SOFTKEY Project File - Version 1.0
...
; here the assignment of a HELPID and a HELPFILE to
; the soft keys. This automatically links to the
; indicated help file.
ACTION Action2_Softkey HELPID:10000000
HELPFILE:TNC:\tncguide\de\oem1.chm

PULSE Pulse1_Softkey HELPID:10000100


HELPFILE:TNC:\tncguide\de\eoem1.chm
BLANK
ENDSKMENU

January 2015 7.1 Display and operation 1962


Enhanced error  PLC error messages
notification For each entry (i.e. error message) in the PET file, the machine manufacturer
can enter the name of a help file (*.CHM) and a help number within this
*.CHM file. This is done with the two new columns in the PET table,
ONL Name and ONL Number. The called help files must—as mentioned
earlier—be present and language-sensitive in the TNC:\tncguide\de,
TNC:\tncguide\en, etc. directories. When a PLC error message is current
and the user then presses the ERR key and the HEIDENHAIN TNCguide soft
key, the appropriate chapter from this file is shown (context-sensitive call).
If a help number but no *.CHM file is indicated, the main.chm file is
automatically shown. If the OEM has adhered to the permanently defined
help-number ranges for the respective files (see above for the help-number
ranges), then the correct, context-sensitive help page is shown in this case
as well.

Including an Once you have created a valid *.chm file, proceed as follows in order to display
OEM-specific online your own OEM-specific help file in the HEIDENHAIN TNCguide:
help file
 You may need to rename your *.chm file. You must use one of the names
reserved by HEIDENHAIN for OEM help files.
e.g. OEM1.CHM
 Use TNCremo to transfer the help file to the control.
 Store your help file in the appropriate language directory: TNC:\tncguide\de,
TNC:\tncguide\en, etc. If you have created only an English help file,
HEIDENHAIN recommends placing it in the other language directories as
well.
 Press the HELP key to call the TNCguide. Your help file should now
automatically be included in the TNCguide directory tree.

National languages CHM files will not be available for all possible NC dialog languages at the time
the new NC software levels are released. However, HEIDENHAIN offers at
least the CHM files in English and German as a download over the FileBase.
The CHM files in other languages will be made available for free downloading
(also, of course for unregistered users) from our FileBase. The user then
simply downloads the appropriate file(s) for the respective language(s), and
stores them in the directory provided on the user partition: TNC:\tncguide\de
or the appropriate language subdirectory.
A readme.a file is located in the respective language directories on the control
under TNC:\tncguide\. This file describes the procedure for loading the CHM
files from HEIDENHAIN FileBase.
The following link leads directly to the CHM files on the FileBase:
http://filebase.heidenhain.de/public/
?open[]=179&open[]=92&open[]=177&open[]=178#GROUP179

1963 HEIDENHAIN Technical Manual TNC 640


Online help files As of TNCremo version 2.5 (released in November 2006), special functions,
and TNCremo optimized for online help files are available:
 Transfer of *.chm files:
Online help files are binary files. If TNCremo is updated at least to
version 2.5, the file extension .chm is automatically added to the list of
binary file types. Otherwise the list of binary file types must be amended
manually under Extras > Configuration on the Mode tab in order to transfer
them correctly.
 Performing a backup of the TNC via TNCremo:
Online help files are automatically untagged during creation of the scan list
used for the backup. This also applies to CHM files that the machine
manufacturer has saved on the control.
Reason:
The *.chm files saved on the control require a large amount of memory, and
do not need to be backed up, since they are freely available from the
HEIDENHAIN homepage.
Please note that only online help files from HEIDENHAIN are available here.
This setting can be applied to other file types as well in TNCbackup under
Edit > Settings, if necessary.

PLC modules Module 9390 Open the online help window with the control's browser
With Module 9390 you open an online help window with the control’s
browser. The module can be called from a cyclic PLC program or from a spawn
job or submit job. The extension .CHM can be given in the call, but is not
necessary.
Constraints:
 The "*.chm" help file must be in the TNC:\tncguide\de or TNC:\tncguide\en
etc. according to language.
 If an empty string is given as file name, the main.chm file is used. Depending
on the link in main.chm the context number then branches to the OEMx.CHM
specified there.
 If 0 was given as the help number, or if the given number could not be found
in the help system, the start page of the given help file is opened.
 If the help system could not be started (e.g. the .CHM file is missing), an NC
error message with a reference to this PLC module is generated.
Call:
PS SXX <File name>
from string number S0/S1... or S "file" or S""
PS B/W/D/K <ID of the HTML page to be opened from the respectively
valid help-number range>
CM 9390
Error code:

Marker Value Meaning


M4203 or 0 No error
NN_GenApiModule 1 Error code in NN_GenApiModuleError
Error
W1022 or 2 Parameter invalid or does not exist
NN_GenApiModule 47 Message could not be transmitted, thus
ErrorCode the help system could not be started

January 2015 7.1 Display and operation 1964


Module 9391 Display an error message with additional offset
With Module 9391 you can display with an additional offset a PLC error
message from the .PET table. Module 9391 corresponds in behavior to
Module 9085. The module can be called from a cyclic PLC program or from a
spawn job or submit job.
An offset is added to the value for the help number in the .PET file in order to
generate the actual help number. This way a group error number can be
defined for an (OEM) device in the .PET table. The error number (used as an
offset) supplied by the device in case of error then leads to the appropriate
help text.
Two new columns were added to the .PET table for this. In the column ONL-
Name you enter the file name of the help file that is to be called additionally in
connection with an offset. In the ONL-Number column you enter the ID (=help
number) of the HTML page in the help file to be opened. The offset is added
to this ID (=help number) during the module call, and is given by the module.
This makes it possible to refer to specific HTML pages in addition to the more
general PLC error message.
Constraints:
 The .CHM help file must be stored language-sensitive in the
TNC:\tncguide\de directory, or in TNC:\tncguide\en etc.
 An OEM-specific OEMx.CHM file is necessary.
 If no OEMx.CHM file is indicated, the online help is not called. All other
reactions that are saved for this error in the .PET table are performed.
Call:
PS B/W/D/K <Line number in the .PET error table>
PS B/W/D/K <Offset to be added to the help number in the .PET error
table>
CM 9391
Error code:

Marker Value Meaning


M4203 or 0 No error
NN_GenApiModule 1 Error code in NN_GenApiModuleError
Error
W1022 or 1 Invalid line number in the .PET file
NN_GenApiModule 2 Parameter invalid or does not exist
ErrorCode

1965 HEIDENHAIN Technical Manual TNC 640


Module 9392 Display PLC error messages
With Module 9392, you can display a PLC error message with an additional
help offset and further parameters. The error message must be defined in the
.PET table.
The behavior of the module corresponds to the behavior of PLC Module 9084
used in conjunction with Module 9391.
The wild cards %s, %d and %f can be defined at the appropriate places in the
error texts. The individual module parameters are assigned to the wild cards
(as described in the module interface), and are entered in the error texts at run
time. Only the wild cards that occur in an error text are replaced. To display
decimal places, the wild cards %.1f ... %.6f are possible. If %f is entered,
three decimal places are used.
The module can be called from a cyclic PLC program or from a spawn or
submit job.
An offset is added to the value for the help number in the .PET file in order to
generate the actual help number. This way a group error number can be
defined for an (OEM) device in the .PET table. The error number (used as an
offset) supplied by the device in case of error then leads to the appropriate
help text.
Condition:
 The .CHM help file must be stored separately for each language in the
corresponding directory, i.e. in TNC:\tncguide\de for German,
TNC:\tncguide\en for English, etc.
 An OEM-specific OEMx.CHM file is necessary.
 If no OEMx.CHM file is indicated, the online help is not called. All other
reactions that are saved for this error in the .PET table are performed.
Call:
PS K/B/W/D <Line number in the .PET error table>>
PS K/B/W/D <Additional text from S0 ... S99 or constant string>
PS K/B/W/D <Variable 1>
PS K/B/W/D <Variable 2>
PS K/B/W/D <Offset to be added to the help number in the .PET error
table>
CM 9392

January 2015 7.1 Display and operation 1966


Error code:

Marker Value Meaning


M4203 or 0 No error
NN_GenApiModule 1 Error code in NN_GenApiModuleErrorCode
Error (W1022)
W1022 or 1 Transferred parameter outside of value
NN_GenApiModule range or error number is not in .PET table
ErrorCode 2 Invalid parameter
3 String address outside of value range
8 Incorrect operating mode, compatibility
error marker set
3 Overflow of PLC error message queue

Example:
PS K10 ; Error 10 from .PET
PS S"ERROR-ERROR" ; %s
PS K9000 ; %d
PS W100 ; %.1f
PS K2 ; Offset for the help number in .PET
CM 9392
Assumption: Text in .PET "%s error in module %d, W100 = %.1f" and
W100 = 1234
Therefore, the following output text results:
"ERROR-ERROR error in module 9000, W100 = 123.4"

1967 HEIDENHAIN Technical Manual TNC 640


7.1.21 Table editor

Starting the table  Select the Programming operating mode and press the PGM MGT key to
editor start the file manager.
 Select a file of the "Table" type, e.g. *.t, *.tch, *.pr, *.tp
 Press the ENT key
 The TNC 640 opens the table editor:
Alternative:
 Select tool, pocket or touch-probe table by soft key

If a touchpad, mouse or other pointing device is connected to the TNC 640,


you can adjust the width of each column by drag and drop in the column
header. By clicking a column header, you can sort the table contents according
to that column in ascending or descending alphabetical order. If no pointing
device is connected, you can sort the column contents by pressing the SORT
soft key.
You can adjust the table view via configurable table filters and, for example,
only display a specific selection of columns. To enable a table filter, press the
TABLE FILTER soft key and then the soft key for the desired filter. For a
description of how to define your own table filters, see "Configuring table
filters" on page 2453.
 By pressing the "Select split screen layout" key, you can
select various views for the table editor:

January 2015 7.1 Display and operation 1968


Soft key Function
Show table editor in list view

Show table editor in form view

Exporting table text In the table editor you can mark any table lines and export them in a new file.
Proceed as follows:
 Select the table in the file manager and press ENT. The control opens the
table editor
 Place the cursor on the desired table line
 Press the MORE FUNCTIONS soft key.
 Press the MARK soft key
 Repeat the process until all desired table lines have been entered
 Press the SAVE AS soft key
 Enter the file name for the new table
 Press the OK soft key

Importing a table With the file manager you can import the files of another table in an existing
table. You can use this function, for example, when you want to import a file
generated from a tool presetter into the tool table.
Constraints for the import:
 All columns of the table to be imported must exist in the target table. The
TNC 640 issues an error message if a column of the table to be imported is
missing in the target table.
 When merging the column values of the two tables, the column value of the
target table is always overwritten by the column value of the import table.
 A column value of the target table is not overwritten if the table to be
imported does not contain this column.
Proceed as follows to import the data of a table to another table:
 Select the Programming mode and then press the PGM MGT key to open the
file manager
 Use the cursor to select the table to be imported
 Press the COPY soft key
 Enter existing file name of the target table
 Press the OK soft key
 The TNC 640 shows the dialog prompt Overwrite existing files?.
Press the REPLACE FIELDS soft key to start the import process.

1969 HEIDENHAIN Technical Manual TNC 640


Importing the tool With the file manager, you can convert a tool table of the iTNC 530 to the table
table of the format of the TNC 640. The TNC 640 converts the contents of the imported
iTNC 530 tool table to a valid format and saves the changes to the selected file.
Proceed as follows to convert a tool table of the iTNC 530:
 Save the tool table of the iTNC 530 to the TNC:\table directory
 Select the Programming mode of operation
 Press the PGM MGT soft key to call the file manager
 Move the cursor to the tool table you want to import
 Press the MORE FUNCTIONS soft key
 Select the IMPORT TABLE soft key: The TNC 640 requests confirmation of
whether you really want to overwrite the selected tool table
 Press the CANCEL soft key if you do not want to overwrite the file, or
 Press the ADAPT FMT soft key to overwrite the file
 Open the table and check its contents

Note

The following characters are permitted in the NAME column of the tool table:
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789#$&-._
The TNC 640 changes a comma in the tool name to a period during import.
The TNC 640 overwrites the selected tool table when running the
IMPORT TABLE function. The TNC 640 also creates a backup file with the
extension *.t.bak. To avoid losing data, be sure to make a backup copy of
your original table before importing it.

January 2015 7.1 Display and operation 1970


Machine
parameters
Settings in the configuration editor MP number
System
DisplaySettings
CfgTable
tableView 101701
enableNotify 101702
dispCompCol 101703

With the configuration object CfgTable, you define the basic settings of the
table editor.
The parameter MP_tableView shows the table view last selected by the
machine operator. You can use MP_tableView to enter a default view for the
table editor.

MP_tableView
Selection of various table views
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: UNDEF
Reserved
TABLIST
List
TABLISTPICT
List and graphics
TABFORM
Fillable form
TABFORMPICT
Fillable form and graphics
TABFORMEXT
Fillable form and text
TABLEPROP
Reserved
TABLESELECT
Reserved
Default: TABLIST
Access: LEVEL2
Reaction: NOTHING

1971 HEIDENHAIN Technical Manual TNC 640


While a table is open and being edited in the table editor, it can also be
modified by external applications via the SQL server at the same time. With
the MP_enableNotify parameter you specify whether external changes to a
table should be immediately displayed.

MP_enableNotify
Switch for table change notification
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: TRUE
External changes to the table via SQL server are immediately
displayed on screen.
FALSE
External changes to the table are displayed on screen the next
time the table is opened.
Default: FALSE
Access: LEVEL2
Reaction: NOTHING
With the MP_dispComplCol parameter you specify that a table column
should be shown at the right edge of the screen during positioning. You can
choose whether you want to display the table column as far as it still fits on
screen or hide the entire column.

MP_dispComplCol
Display mode of a column at the right edge of the screen
Available from NCK software version: 597 110-01.
Format: Selection menu
Options: TRUE
Column is displayed, but its right margin is truncated.
FALSE
Incomplete column is hidden completely.
Default: FALSE
Access: LEVEL2
Reaction: NOTHING

January 2015 7.1 Display and operation 1972


Editing table You can edit the properties of a table or a table type through the Edit table
characteristics characteristics dialog window.
 Call the program management in the Programming mode of operation to
select the table.
 Press the MOD key
 Enter the code number 555343 and confirm with ENT.
 Switch to the third level of the soft-key row and press the MORE FUNCTIONS
soft key.
 Press the EDIT FORMAT soft key; the TNC 640 displays the Edit table
characteristics dialog window.

The displayed table data is read directly from the control’s SQL server. The
PLC enables you to manipulate the table data of the SQL server. In this way
the displayed data can deviate from the characteristics defined by the machine
configuration.
A distinction is made between globally and locally effective settings:
 Inserting and hiding columns as well as the FULL ACCESS and
REDUCED ACCESS settings applies locally for the currently opened table
file.
 All other column settings are effective globally; they are copied to the
configuration data and assigned to the corresponding table type.
For more information on working with tables, please refer to the PLC chapter
under "Tables" on page 2429.

1973 HEIDENHAIN Technical Manual TNC 640


7.1.22 Machine datum

Settings in the configuration editor MP number


Axes
PhysicalAxis
[Key name of the axis]
CfgMachDatumExtra
distFromMachDatum 300501

The machine is built with a fixed machine datum. All referenced displays and
positioning blocks refer to this machine datum.
In the Manual Operation and Electronic Handwheel operating modes you can
define a workpiece datum with the "datum setting" function.
NC programming blocks are entered with respect to this defined datum.
Other datums:
 If the user programs M91 in an NC program, the NC programming block
refers to the machine datum.
 In MP_refPosition, enter the distance between the machine datum and the
scale reference point, See "MP_refPosition" on page 1284.

 All NC programming blocks are referenced to the machine datum.


 NC programming block values are defined with respect to fixed positions of
the machine if the user programs M92 in the NC program.
 In MP_distFromMachDatum, enter the distance between the machine
datum and the machine-referenced position.

Note

M91 and M92 are active only in the block in which they are programmed.

MP_distFromMachDatum
Datum for positioning blocks with M92
Available from NCK software version: 597110-01.
Format: Number
Input: Distance in [mm] or [°] with up to 9 decimal places
Values with respect to the machine datum
Default: 0
Access: LEVEL3
Reaction: RUN

January 2015 7.1 Display and operation 1974


RM

RM RM

Workpiece datum Machine datum

Scale reference point RM = Reference mark

Setting the datum The datum can be set either only by the DATUM SETTING soft key or by the
soft key plus the axis keys:
 With MP_presetWithAxisKey, define how the datum should be set.
To change the datum in the OEM cycles:
 Press the MOD key.
 Enter the code number 555 343
 Enter: FN17: ID 507 <Axis>/<New datum>

<Axis> Axis for which the datum is to be set


<New datum> Desired value of the datum

Note

The currently effective datum, but not the corresponding value in the preset
table, is overwritten with FN17: ID 507.

If two axes are being operated paraxially, for example with two alternating
spindle motors, you can specify that the datum being set in one axis with
"Datum setting" should also apply to the other axis.

1975 HEIDENHAIN Technical Manual TNC 640


MP_presetWithAxisKey
Datum setting through axis keys
Format: Selection menu
Options: TRUE:
Datum is set by the SET DATUM soft key and by pressing an
orange axis key.
FALSE:
The datum is set only with the SET DATUM soft key.
Default: TRUE
Access: LEVEL1
Reaction: NOTHING

Datum Datum management via the preset table (see User's Manual)
management with
For machines with multiple traverse ranges, there may be a separate preset
the preset table
table for each traverse range, See "Preset table for traverse range" on page
1115.
FN17: SYSWRITE and FN18: SYSREAD refer to the currently active preset table.
ID 507 Basic transformation
With FN17: SYSWRITE ID 507 or FN18: SYSREAD ID 507 you can read/write the
basic transformation values from/to the preset table. The number indicates the
number of the preset. The index specifies the column to be read (X = 1, Y =
2, Z = 3, SPA = 4, SPB = 5, SPC = 6).
If this function is used to change the active preset, the change will be
transferred to the geometry.
ID 508 Axis offsets from preset table
With FN17: SYSWRITE ID 508 or FN18: SYSREAD ID 508 you can read/write the
axis offsets from/to the preset table. The number indicates the number of the
preset. The index specifies the column to be read ( X_OFFS = 1, Y_OFFS = 2,
Z_OFFS = 3, A_OFFS = 4, B_OFFS = 5, C_OFFS = 6, U_OFFS = 7,
V_OFFS = 8, W_OFFS = 9 ).
If you change the active preset value with this function, the change will be
applied to the geometry.

Note

If you want to process the values of the preset table directly, e.g. in cycles
or the PLC program, some differences compared to the previous
HEIDENHAIN controls (e.g. iTNC 530) need to be taken into account.
Please note:
 TNC 640 (translational axes):
Displacement vector of the machine table system into the workpiece
system.
 iTNC 530
Depending on the machine kinematics, displacement from the machine
datum to the table datum.

January 2015 7.1 Display and operation 1976


Password By entering a password in the LOCKED column, you can write-protect
protection for selected lines of the preset table, e.g.the machine datum. You are free to use
selected lines of the any desired combination of letters and numbers for your password. Write-
preset table protected lines are shown in red. The active line and line 0 are always write-
protected.

Attention

Data may be lost!


Write protection of a password-protected line cannot be reset in case you
forget your password.
Note down the password for write-protected lines.
As a simple alternative to password-protection, use the LOCK / UNLOCK
soft key.

Display filter for the Two different filters can be configured for the preset table display. You can
preset table enable and disable the individual filters separately by using special soft keys
provided in the preset table. To configure the display filters for the preset
table, proceed as follows:
 Configure the table filters in TableSettings/CfgTableFilter. You will find a
separate configuration folder for each of the two key names "1-PRESET" and
"2-PRESET". The folders contain the parameters for configuring the display
filter. In MP_select, you define which columns are to be displayed when the
filter is enabled.

Settings for the


preset table
Settings in the configuration editor MP number
System
DisplaySettings
CfgDisplayData
hidePresetTable 100808
Channels
ChannelSettings
[Key name of the machining channel]
CfgPresetSettings
chkTiltingAxes 204601

During datum setting, the TNC 640 can check whether the rotary axes are in
the basic setting. If the Tilted the working plane function is active, the
control checks whether their rotary axes agree with the defined tilt.
 Use MP_chkTiltingAxes to select the method of inspection of the rotary
axes or to switch it off.

1977 HEIDENHAIN Technical Manual TNC 640


MP_chkTiltingAxes
Check the tilting-axis position during "datum setting"
(compare to iTNC 530: MP7500, bit 5)
Available from NCK software version: 597110-05.
Format: Selection menu
Options: NoCheck
Do not check the tilt situation for agreement.
CheckIfTilted
If plane tilting is active, check the current tilt situation and rotary
axis position for agreement.
CheckAlways
Check rotary-axis position during active plane tilting, and
additionally check for rotary axis position 0 during inactive plane
tilting
Default: CheckAlways, optional parameter
Access: LEVEL3
Reaction: RESET

You can disable datum management via the preset table. Set the machine
parameter MP_hidePresetTable to the value TRUE.

MP_hidePresetTable
Disable the soft-key preset table
Available from NCK software version: 597 110-03.
Format: Selection menu
Options: TRUE
The preset table can be accessed via soft-key
FALSE
Access to the preset table blocked; soft-key grayed out
Default: No value, parameter optional (FALSE)
Access: LEVEL1
Reaction: NOTHING

January 2015 7.1 Display and operation 1978


7.1.23 Cycles

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgGeoCycle
pocketOverlap 201001
posAfterContPocket 201007
displaySpindleErr 201002
displayDepthErr 201003
apprDepCylWall 201004
mStrobeOrient 201005
suppressPlungeErr 201006

HEIDENHAIN contouring controls feature standard fixed cycles (e.g. peck


drilling, tapping, pocket milling), which can be called in the NC program. In
addition to the standard HEIDENHAIN cycles, you can program Original
Equipment Manufacturer (OEM) cycles (see the Cycle Design User's Manual).
You can influence the function of many HEIDENHAIN standard cycles through
machine parameters.
See page 2279 for more information on the touch probe cycles.

Pocket milling Cycles 4 and 5:


 In MP_pocketOverlap, enter the overlap factor for roughing out a
rectangular or circular pocket.

Infeed

1979 HEIDENHAIN Technical Manual TNC 640


Stepover = (MP_pocketOverlap) cutter radius

MP_pocketOverlap
Overlap factor for pocket milling
Available from NCK software version: 597110-01.
Format: Number
Input: 0.001 to 1.414
Default: 1
Access: LEVEL1
Reaction: RUN

Position after  Use MP_posAfterContPocket to set if the machine should move to the
execution of an SL position it had before the cycle was called or if it should only move to
cycle clearance height after execution of an SL cycle.

MP_posAfterContPocket
Traverse after machining the contour pocket
Available from NCK software version: 597110-09.
Format: Selection menu
Options: PosBeforeMachining
Move to the position from which the SL cycle was started.
ToolAxClearanceHeight
Move the tool axis to clearance height.
Default: PosBeforeMachining
Access: LEVEL1
Reaction: RUN

Cylindrical surface With Cycles 27 and 28 you can machine a contour on a cylindrical surface (see
the User’s Manual).
 Define the behavior of Cycle 28 with MP_apprDepCylWall.

MP_apprDepCylWall
Behavior when moving to wall of slot in the cylinder surface
Available from NCK software version: 597110-01.
Format: Selection menu
Options: LineNormal
The slot wall is approached and departed linearly.
CircleTangential
The slot wall is approached and departed tangentially; at the
beginning and end of the slot a rounding arc with a diameter
equal to the slot width is inserted.
Default: CircleTangential
Access: LEVEL1
Reaction: RUN

January 2015 7.1 Display and operation 1980


Error messages Before execution of a fixed cycle, the spindle must be started with M3 or M4.
during cycle call If this is not the case, the error message Spindle ? appears. If you are using
a high speed cutting (HSC) spindle that is started by its own M function (not
M3 or M4):
 Suppress the error message Spindle ? with MP_displaySpindleErr = off
If a positive depth is programmed in machining cycles, the error message
Enter depth as negative appears:
 Suppress the "Enter depth as negative" error message with
MP_displayDepthErr = off

MP_displaySpindleErr
Display the Spindle ? error message if M3/M4 is not active
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Error message is displayed
off
Error message is not displayed
Default: on
Access: LEVEL1
Reaction: RUN

MP_displayDepthErr
Display Enter depth as negative error message
Available from NCK software version: 597110-01.
Format: Selection menu
Options: on
Error message is displayed
off
Error message is not displayed
Default: on
Access: LEVEL1
Reaction: RUN
In Cycle 251 (RECTANGULAR POCKET) and Cycle 252 (CIRCULAR POCKET)
the TNC 640 outputs an error message during helical plunging if the internally
calculated diameter of the helix is smaller than twice the tool diameter. If you
are using a center-cut tool, you can switch off this monitoring function via the
MP_suppressPlungeErr machine parameter.

1981 HEIDENHAIN Technical Manual TNC 640


The parameter is also accessible for the machine operator as a user parameter
with the MOD code number 123.

MP_suppressPlungeErr
Do not show Plunging type is not possible error message
Available from NCK software version: 597110-05.
Format: Selection menu
Options: on
Error message is not displayed.
off
Error message is displayed.
Default: off
Access: LEVEL1
Reaction: RUN

M function for If the spindle orientation is started with an M function, you must activate the
spindle orientation spindle orientation in the PLC. In MP_mStrobeOrient, enter the number of
the M function (e.g., 19) which will trigger the oriented spindle stop during the
machining cycles. If you enter MP_mStrobeOrient = 0 (no oriented spindle
stop), the error message ORIENTATION not permitted appears when a cycle
which uses oriented spindle stop is called. If you enter
MP_mStrobeOrient = –1, spindle orientation is executed by the NC.
For more information on spindle orientation, See "Spindle Oriented spindle
stop (spindle point stop)" on page 1568.

MP_mStrobeOrient
M function for spindle orientation in the fixed cycles
Available from NCK software version: 597110-01.
Format: Number
Input: –1: Spindle orientation directly by NC
0: Function inactive
1 to 999: Number of the M function for spindle orientation by
the PLC
Default: 0
Access: LEVEL1
Reaction: RUN

January 2015 7.1 Display and operation 1982


7.1.24 Diagnostic functions
The TNC 640 features numerous diagnostic functions for information and for
finding errors.
Proceed as follows to call the diagnostic functions:
 Select the Programming mode of operation
 Press the MOD key
 Press the DIAGNOSIS soft key
The TNC 640 opens the Diagnosis menu:

You can select the diagnostic functions either by using the arrow keys in the
left-hand area of the window or - if a pointing device is connected to the TNC
640 (mouse, touchpad, trackpad) - by clicking the functions in the right-hand
area of the window.

1983 HEIDENHAIN Technical Manual TNC 640


The following diagnostic functions are available without entering a code
number:

 Network: IP configuration
Overview of the currently active network settings of the TNC 640.
 HEROS information
Information from the HEIDENHAIN HEROS 5 operating system of the TNC
640.
• Version information on operating system and kernel
• Current CPU and memory usage displayed as text
• Current CPU and memory usage displayed as graphics
The colors in the memory usage graphics match those used in the text.
This makes it easy to distinguish the different memory areas:
Memory in Use is shown in green in the text and in the moving-bar
diagram.
Buffer Memory is shown in blue in the text and in the moving-bar
diagram.
Cache Memory is shown in yellow in the text and in the moving-bar
diagram.

January 2015 7.1 Display and operation 1984


If you press the DIAGNOSIS soft key after entering the code number 807667 or
95148, you can access additional diagnostic information:

 HEROS information (advanced)


Additional information from the HEIDENHAIN operating system for
diagnostics and for finding errors. In addition to the version information and
the display of CPU and memory usage, you can open the CPU & Memory
Status dialog window by pressing the PerfMon button. There you will find a
graphic display of the current CPU and memory usage as well as a list of the
processes with the highest memory and CPU usage. If you enlarge the
window size, more processes are displayed.
This status window will remain open even if the MOD dialog box is closed.
In this way, you can examine the utilization of the TNC 640 during operation.
Additional functions provided under HEROS information:
• CPU info
Detailed information about the current main computer of the TNC 640.
• Memory info
Detailed information about the current main memory usage.
• Disk info
Detailed information about the current hard disk space usage.
• Shared memory
Reserved for HEIDENHAIN.
• Process list
List of all currently loaded processes in the control.
• Queues
Reserved for HEIDENHAIN.
• Semaphores
Reserved for HEIDENHAIN.
• Timer
Reserved for HEIDENHAIN.
• Thread list
List of all currently running internal threads of the control system.

1985 HEIDENHAIN Technical Manual TNC 640


The following diagnostic functions are available via soft key:

Soft key Soft key Soft key Function


After pressing this soft key, you can test various HSCI and Profibus settings, provided
that you are using one of the two bus systems.
After pressing this soft key, you can test various Profibus settings, provided
that you are using a Profibus system.
After pressing this soft key, you can test various HSCI settings, provided that
you are using an HSCI system.
The DriveDiag diagnosis tool is opened, see page 1987.

January 2015 7.1 Display and operation 1986


DriveDiag The TNC 640 features the diagnosis tool "DriveDiag".
Proceed as follows to start DriveDiag:
 Select the Programming mode of operation
 Press the MOD key
 Press the DIAGNOSIS soft key
 Press the DRIVEDIAG soft key
The structure of the drive system is displayed on the left side of the screen in
a tree structure. Detailed information on the currently selected component is
displayed on the right side of the screen.
To navigate within the tree structure (left side of screen) and the tabs (right
side of screen), use the arrow keys. Use the ENT key to move from the left
side of the screen to the right side of the screen. Use the END key to move
from the right side of the screen back to the left side of the screen. If the
cursor is already located on the left side of the screen, you can exit DriveDiag
with the END key.

1987 HEIDENHAIN Technical Manual TNC 640


To switch back to the screen of the control or to DriveDiag, press the screen
switchover key.

Icon Icon Icon Function


Machine:
Higher-level folder containing all components of the complete machine
 Connection: Internal IP address (127.0.0.1)
Main computer, see page 1988

Supply unit, see page 1994


 Information about ID label and status
Axis (e.g. X, Y, Z, etc.), see page 1996
Higher-level folder containing all axis components

Main computer

Icon Icon Icon Function


Main computer
Version tab:
 Control model: Type of control
 NC software: Installed NC software version
 PLC software: PLC software being used

January 2015 7.1 Display and operation 1988


Icon Icon Icon Function
Main computer
Status tab:
 Status information on various signals, see page 1990
Drive control board x
Version tab:
 Speed controller software: Installed speed-controller software version
 Current-controller software: Installed current-controller software
version
 Hardware code: Additional information for identifying the hardware (only
CC 422)
 Version of additional info: Date and time of installation
 Degree of support: Degree of support for controller software
 SG software available: Information about whether the installed software
supports functional safety
 SG software active: Functional safety is activated/deactivated
Drive control board x
Voltages and currents tab:
 Supply voltage +5 V: Current value of voltage [V]
 DC-link voltage: Current value of voltage [V]
 DC-link current: Current value of current [A]
 DSP computer workstation temp.: momentary temperature value on the
DSP motherboard in [°C]
 Supply voltage +15 V: Current value of voltage [V]
 Supply voltage –15 V: Current value of voltage [V]
 Supply voltage +3.3 V: Current value of voltage [V]
 Auxiliary voltage UL: Current value of voltage [V]
 Auxiliary voltage UH: Current value of voltage [V]
Drive control board x
Status tab:
 Status information on various signals, see page 1992

1989 HEIDENHAIN Technical Manual TNC 640


Meanings of the
signals under "main
computer / status"

Signal Meaning Colors


External enabling signals
Acknowledgment: The NE1 signal (emergency stop input 1,  Gray: No information about the
Control is ready MC) is active if a 0-level is present (low signal available
(–NE1) active). For the iTNC 530 the  Green: Signal is not active, enable
corresponding input is at connector X42/  Red: Signal is active, no enabling
I3 (PLC input), and is looped to the MC as
a hardware line.
External signals from MC
Ref. signal of For more detailed information, refer to  Gray: No information about the
spindle (X30) "Input: Spindle Reference Signal" in the signal available
Technical Manual.  Green: Signal is active
 Red: Signal is not active
Battery of active For more information, see "X112/X113:  Gray: No information about the
TS touch probe Triggering touch probe" on page 413 in signal available
the Technical Manual.  Green: Signal is active, no warning
 Red: Signal is not active, warning
Touch probe For more information, see "X112/X113:  Gray: No information about the
trigger signal on Triggering touch probe" on page 413 in signal available
X112 the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TS touch probe For more information, see "X112/X113:  Gray: No information about the
ready on X112 Triggering touch probe" on page 413 in signal available
the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TT touch probe For more information, see "X112/X113:  Gray: No information about the
ready on X112 Triggering touch probe" on page 413 in signal available
the Technical Manual.  Green: Signal is active
 Red: Signal is not active
Touch probe For more information, see "X112/X113:  Gray: No information about the
trigger signal on Triggering touch probe" on page 413 in signal available
X113 the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TS touch probe For more information, see "X112/X113:  Gray: No information about the
ready on X113 Triggering touch probe" on page 413 in signal available
the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TT touch probe For more information, see "X112/X113:  Gray: No information about the
ready on X113 Triggering touch probe" on page 413 in signal available
the Technical Manual.  Green: Signal is active
 Red: Signal is not active

January 2015 7.1 Display and operation 1990


Signal Meaning Colors
MC internal signals and status
Current The signal is active if the control is in the  Gray: No information about the
controller operating mode for adjusting the current signal available
commissioning controller.  Green: Operating mode for
mode adjusting the current controller is
active
 Red: Operating mode for adjusting
the current controller is not active
Power The signal is active if the Power  Gray: No information about the
interruption interrupted message has been signal available
acknowledged acknowledged with the CE key.  Green: Power interruption was
acknowledged
 Red: Power interruption was not
acknowledged

1991 HEIDENHAIN Technical Manual TNC 640


Meanings of the
signals under "drive
control board /
status"

Signal Meaning Colors


External enabling signals
Drive enable The NE2 signal (emergency stop input 2,  Gray: No information about the
(–NE2) CC) is active if a 0-level is present (low = signal available
active).  Green: Signal is not active, enable
 Red: Signal is active, no enabling
Powerfail The PF signal shows the status of the  Gray: No information available
"effective" powerfail signal for the drive  Green: Enabled, PF is inactive
controller. The signal is the result of (1-level)
gating the PF.PS.DC (DC-link powerfail)  Red: PF is active (0-level): the DC-
and PF.PS.AC (AC fail) signals. The gating link voltage has decreased below
process can be defined in the machine a permissible (inverter-specific)
parameters and in the PLC. level or the phase monitoring
responded; no enabling
X50 Machine On No longer relevant in the current  Gray: No information available
HEIDENHAIN controls.
MC is ready (–WD) This signal shows that the MC is ready for  Gray: No information available
control. This signal is a possible reason  Green: Enabled ME not active
that the power module was switched off (1-level)
via SH1.  Red: Not enabled: WD1 is active
(0-level), the MC's watchdog is
not retriggered. This signal is
relayed to the inverter as SH1
(SH1 also has other signal
sources).
Powerfail (DC) The signal is generated at the inverter,  Gray: No information available
and is led via the supply bus to the drive  Green: Enabled: Powerfail (DC) is
controller. The input at the drive controller inactive (1-level)
is displayed. Depending on the wiring,  Red: Not enabled: Powerfail (DC)
either this signal or Powerfail (AC) is is active (0-level): the DC-link
relayed on the controller PCB to the voltage has decreased below a
powerfail signal. permissible (inverter-specific)
level.
Powerfail (AC) The signal is generated at the inverter,  Gray: No information available
and is led via the supply bus to the drive  Green: Enabled: Powerfail (DC) is
controller. The input at the drive controller inactive (1-level)
is displayed. Depending on the wiring,  Red: Not enabled: Powerfail (AC)
either this signal or Powerfail (DC) is is active (0-level), phase
relayed on the controller PCB to the monitoring responded, at least
powerfail signal. Powerfail (AC) does not one power supply phase failed
exist for all supply units (e.g. not for UV
130).
Internal enabling signals

January 2015 7.1 Display and operation 1992


Signal Meaning Colors
Switch-off This signal causes all axes to be switched  Gray: No information about the
(speed 0) off or locked at 0-level. Thus the drives of signal available
all control boards are switched off or  Green: Enabled: –N0 inactive
locked. (1-level)
 Red: Not enabled: –N0 active (0-
level); all drives are locked
CC controller If no error is present in the drive controller  Gray: No information about the
ready and the controller unit was started, "ready signal available
for control" is reported.  Green: Enabled: CC is ready for
control
 Red: No enabling
Clearable DSP Clearable DSP errors are 2nd class errors  Gray: No information about the
error (such as motor temperature). The CC can signal available
only resume control after the error has  Green: Enabled: There is no
been cleared (by pressing the CE key). (clearable) 2nd class error.
 Red: No enabling: A 2nd class
error is present
Watchdog current This signal is activated by the current  Gray: No information about the
controller controller’s watchdog. It affects SH2 on signal available
the power module via the PWM interface.  Green: Enabled: Current controller
watchdog OK
 Red: No enabling: Current
controller watchdog is active (0-
level). No pulse release from the
current controller via the PWM
interface

1993 HEIDENHAIN Technical Manual TNC 640


Power supply unit

Icon Icon Icon Function


Power supply unit
ID Label tab:
 Plug and Play: Whether the device is plug-and-play capable
 Device: Designation of the device
 Model: Designation of the device type
 Serial number: Serial number of the device
 ID number: HEIDENHAIN ID of the device
Power supply unit
Status tab:
 Status information on various signals, see page 1990

Meanings of the
signals under
"power supply unit
/ status"

Signal Meaning Colors


DC-link voltage Current value of voltage in [V]
DC-link current Current value of current in [A]
Powerfail The PF signal shows the status of the  Gray: No information available
"effective" powerfail signal for the drive  Green: Enabled, PF is inactive
controller. The signal is the result of (1-level)
gating the PF.PS.DC (DC-link powerfail)  Red: PF is active (0-level): the DC-
and PF.PS.AC (AC fail) signals. The gating link voltage has decreased below
process can be defined in the machine a permissible (inverter-specific)
parameters and in the PLC. limit value or the phase monitoring
responded; no enabling
Powerfail (DC) The signal is generated at the inverter,  Gray: No information available
and is led via the supply bus to the drive  Green: Enabled: Powerfail (DC) is
controller. The input at the drive controller inactive (1-level)
is displayed. Depending on the wiring,  Red: Not enabled: Powerfail (DC)
either this signal or Powerfail (AC) is is active (0-level): the DC-link
relayed on the controller PCB to the voltage has decreased below a
powerfail signal. permissible (inverter-specific)
level.

January 2015 7.1 Display and operation 1994


Signal Meaning Colors
Powerfail (AC) The signal is generated at the inverter,  Gray: No information available
and is led via the supply bus to the drive  Green: Enabled: Powerfail (DC) is
controller. The input at the drive controller inactive (1-level)
is displayed. Depending on the wiring,  Red: Not enabled: Powerfail (AC)
either this signal or Powerfail (DC) is is active (0-level), phase
relayed on the controller PCB to the monitoring responded, at least
powerfail signal. Powerfail (AC) does not one power supply phase failed
exist for all supply units (e.g. not for UV
130).

DC-link voltage>> The signal reports the status of the DC-  Gray: No information about the
link voltage: Either it is OK or too high. signal available
This signal also switches off all power  Green: DC-link voltage OK
modules (via the unit bus).  Red: DC-link voltage too high
Possible error causes:
 Missing or faulty braking resistor
 Excessive braking power
Temperature The signal reports the status of the heat  Gray: No information about the
sink temperature in the inverter: Either it signal available
is OK or too high.  Green: Temperature OK
 Red: Temperature too high
DC-link current >> The signal reports the status of the DC-  Gray: No information about the
link current: Either it is OK or too high. signal available
Both the positive and the negative DC-link  Green: DC-link current OK
currents are evaluated.  Red: DC-link current too high
Power supply unit The signal reports the ready status of the  Gray: No information about the
ready supply unit: supply unit ok, main signal available
contactor on, or supply unit not ready.  Green: Supply unit OK, main
contactor on
 Red: Power supply unit not ready
Ground fault The signal reports the status of the  Gray: No information about the
leakage current monitoring: Either it is OK signal available
or too high or there is a ground fault.  Green: Leakage current OK
 Red: Leakage current too high or
ground fault
Reset from CC to Signal –RES.LE. Reset from controller  Gray: No information about the
UV unit to supply module. Resets the error signal available
memory in the supply module.  Green: Reset signal is not active
 Red: Reset signal is active

1995 HEIDENHAIN Technical Manual TNC 640


X, Y, Z, etc. (axis)

Icon Icon Icon Function


X, Y, Z, etc. (axis)
Higher-level folder containing all axis components
Status
Speed Controller tab:
 Status information on various signals, see page 1999
Status
Position Controller tab:
 Status information on various signals, see page 2002
Status
PLC tab:
 Status information on various signals, see page 2003
Motor
ID Label tab:
 Plug and Play: Whether the device is plug-and-play capable
 Device: Designation of the device
 Model: Designation of the device type
 Serial number: Serial number of the device
 ID number: HEIDENHAIN device ID
 Brake present: Whether the motor has a brake
Motor
Motor Data tab:
 Information about motor-specific data from the motor table
Motor
Result tab:
 Information about motor data derived from the motor table or from the
machine parameter file
• Motor constant [Nm/A]: Internal reference value that indicates the
ratio of torque to current (= torque constant).
• Voltage constant: Internal reference value that indicates the ratio of
no-load voltage to rated speed.
• Field angle [°]: Value converted to [°] for the corresponding entry
from the MP file (MP2256.x).

January 2015 7.1 Display and operation 1996


Icon Icon Icon Function
Power module
ID Label tab:
 Plug and Play: Whether the device is plug-and-play capable
 Device: Designation of the device
 Model: Designation of the device type
 Serial number: Serial number of the device
 ID number: HEIDENHAIN device ID
Power module
Status tab:
 Status information on various signals, see page 2005
EnDat rotational speed encoder
Depending on the functions provided by the encoder, the submenus status,
diagnosis and temperature are available.
EnDat 2.2 rotational speed encoder
Depending on the functions provided by the encoder, the submenus status,
diagnosis and temperature are available.
EnDat position encoder
Depending on the functions provided by the encoder, the submenus status,
diagnosis and temperature are available.
EnDat 2.2 position encoder
Depending on the functions provided by the encoder, the submenus status,
diagnosis and temperature are available.
Status
 Status information on various signals, see page 2004.
Diagnosis
The function reserves are evaluated, which provide an exact
overview of the current status of the encoder. The three values
displayed inform the user at a glance of the encoder
performance.
In the yellow range, fault-free operation is no longer guaranteed.
The encoder should be checked. If required, assistance can be
provided by your HEIDENHAIN service agency.
Temperature
The temperature information provided by the temperature
sensors in the encoder and the motor is displayed.

1997 HEIDENHAIN Technical Manual TNC 640


Icon Icon Icon Function
Motor encoder test
(available only after the code number 688379 or 807667 has been entered)
Diagram tab:
After the test has been completed, the result is displayed in a diagram.
Two green lines in the diagram mark the minimum and maximum height of
the speed encoder signals. The red line shows the measured signals.
Motor encoder test
Overview tab:
Begin the test by pressing the START MEASUREMENT button.
 Status information on various signals, see page 2005
The plain text displayed in the lower part of the screen provides additional
information about the test results.
Position encoder test
Diagram tab:
After the test has been completed, the result is displayed in a diagram. Two
green lines in the diagram mark the minimum and maximum height of the
speed encoder signals. The red line shows the measured signals.
Position encoder test
Overview tab:
Begin the test by pressing the START MEASUREMENT button.
 Status information on various signals, see page 2005
The plain text displayed in the lower part of the screen provides additional
information about the test results.
Drive test
(available only after the code number 688379 or 807667 has been entered)
Test tab:
Begin the test by pressing the START MEASUREMENT button.
 Status information on various signals, see page 2006
The plain text displayed in the lower part of the screen provides additional
information about the test results.

January 2015 7.1 Display and operation 1998


Meanings of the
signals under
"Status / Speed
Controller"

Signal Meaning Colors


MC enabling marker The MC can accelerate the switch-off via  Gray: No information about
this marker. the signal available
 Green: Enable
 Red: Not enabled
X150/X151 Drive The signal shows the enabling status for  Gray: No information about
enabling the "X150/X151" switch-off. The signal is the signal available
formed from the status of the inputs  Green: Enable: There is
X150/X151 and the setting in MP2040.x. currently no switch-off via
X150/X151
 Red: No enabling: The drive
is currently switched off or
locked via X150/X151
Drive enabling from This signal is a group signal for all  Gray: No information about
speed controller hardware enabling signals from the the signal available
speed controller.  Green: Enabled
 Red: Not enabled
Drive enabled by This signal is a group signal for all  Gray: No information about
software hardware enabling signals from the the signal available
software.  Green: Enabled
 Red: Not enabled
Internal drive status Gating of all ready signals (external,  Gray: No information about
internal and software) the signal available
 Green: Enabled
 Red: Not enabled

Power module active The signal shows the status of the SH2  Gray: No information about
(–SH2) line to the power module. The CC the signal available
activates/deactivates this line for  Green: Enable: The SH2
switching off the power module. signal is inactive
 Red: No enabling: The SH2
signal is active
Current controller The signal shows the status of the  Gray: No information about
active current controller. The current controller the signal available
is either switched on (in control) or  Green: Enable: Current
switched off. controller is on (in control)
 Red: No enabling: Current
controller is off
Speed controller is The signal shows the status of the speed  Gray: No information about
active controller. The speed controller is either the signal available
switched on (in control) or switched off.  Green: Enable: Speed
controller is on (in control)
 Red: No enabling: Speed
controller is off

1999 HEIDENHAIN Technical Manual TNC 640


Signal Meaning Colors
Rotor position captured This signal gives information about  Gray: No information about
determining the field angle: the signal available
Drive is not oriented:  Green: Field angle has been
determined
 Motor with rotary encoder without Z1
track (incl. linear motors) before the  Yellow: Field angle has
first "Drive on" status been roughly determined
 Non-aligned rotary encoder with EnDat  Dark gray: Field angle has
interface (incl. linear motors), if the field not been determined
angle has not yet been determined
Drive is roughly oriented:
 Motor with rotary encoder without Z1
track (incl. linear motors) after the first
"Drive on" status
 Motor with rotary encoder with Z1 track
after it has been read
Drive is oriented:
 Motor with rotary encoder with Z1 track
after traversing the reference mark
 Aligned rotary encoder with EnDat
interface immediately after switch-on
 Non-aligned rotary encoder with EnDat
interface immediately if the field angle
has already been determined
 Motor with rotary encoder without Z1
track after traversing the reference
mark if the field angle has already been
determined
Switching on speed This signal indicates whether the speed  Gray: No information about
controller encoder has been switched on since the the signal available
last time the Power interrupted  Dark gray: Speed controller
message was active. Status changes are has not been switched on
saved. yet (since power
interruption)
 Green: Speed controller is
currently being switched on
 Yellow: Speed controller
was switched on once (this
does not mean, however,
that the speed controller is
currently on)

January 2015 7.1 Display and operation 2000


Signal Meaning Colors
Switching off speed This signal indicates whether the speed  Gray: No information about
controller encoder has been switched off since the the signal available
last time the Power interrupted  Dark gray: Speed controller
message was active. Status changes are has not been switched off
saved. yet (since power
interruption)
 Green: Speed controller is
currently being switched off
 Yellow: Speed controller
was switched off once (this
does not mean, however,
that the speed controller is
currently off)
Brake released This signal shows the status of the motor  Gray: No information about
brake signal on the PWM bus. This signal the signal available
is led from the power module via a relay  Green: Brake released
to the motor.  Red: Brake engaged
I2t warning This signal shows the current and stored  Gray: No information about
status of the I2t monitoring. the signal available
 Green: No I2t warning up to
now
 Yellow: There has already
(since switch-on) been an
I2t warning, but there is no
current warning
 Orange: There is a current
I2t warning
Torque ripple The signal indicates the status of torque-  Gray: No information about
ripple compensation. the signal available
 Green: Compensation is
active
 Red: Compensation is not
active
Acceleration The signal shows the status of  Gray: No information about
feedforward control acceleration feedforward control the signal available
(MP1392 or 1391.1, depending on the  Green: Feedforward control
selected mode of operation). is active
 Red: Feedforward control is
not active

2001 HEIDENHAIN Technical Manual TNC 640


Meanings of the
signals under "status
/ position controller"

Signal Meaning Colors


Position control loop Corresponds to PLC word W1024 for a  Gray: No information about
closed specific axis. Information about whether the signal available
the position control loop is closed or  Green: Position control loop
open. closed
 Red: Position control loop open
Position-controlled The signal indicates whether the axis is  Gray: No information about
operated with position feedback control the signal available
or speed feedback control.  Green: Axis is operated
with position feedback
control
 Red: Axis is operated with
speed feedback control
Nominal position value The signal indicates whether the nominal  Gray: No information about
filter position value filters are active. the signal available
 Green: Nominal position
value filter is active
 Red: Nominal position value
filter is not active
Position controller The signal indicates whether "eliminate  Gray: No information about
limit following error" is active. the signal available
 Green: Output limit is active
 Red: Output limit is not active
CC monitoring active The signal indicates whether following-  Gray: No information about
error monitoring is active (can be the signal available
deactivated by PLC, W1042).  Green: Following-error
monitoring is active
 Red: Following-error
monitoring is not active
Touch probe is active The signal indicates whether probing is  Gray: No information about
active. the signal available
 Green: Probing is active
 Red: Probing is not active
Reference pulse active The signal indicates whether the MC  Gray: No information about
expects a reference pulse (host the signal available
command).  Green: Expectation of
reference pulse is active
 Red: Expectation of
reference pulse is not active
Velocity feedforward The signal indicates whether the position  Gray: No information about
control controller is working with feedforward the signal available
control or with following error.  Green: Operation with
feedforward control
Acceleration feedforward control can be
switched on/off cyclically by the MC.  Red: Operation with
following error
Corresponds to parameter MP1392 or
MP1391.0 in the MP file, depending on
the current mode of operation.

January 2015 7.1 Display and operation 2002


Meanings of the
signals under
"status/PLC"

Signal Meaning Colors


Axis positioned (PLC) If the axes have reached the positioning  Green: Axis in position
window after a movement, the status is  Yellow: Axis not in position
shown in W1026.
Position control loop Position control loop closed (W1040  Green: Position control loop
closed (PLC) inverted). By setting W1040 in the PLC, closed
the position control loop is opened by the  Yellow: Position control
PLC program. loop open
Axis enabled (PLC) W1024 shows if the position control loop  Green: Axis not enabled
is open or closed, and if the axis has been  Yellow: Axis enabled
enabled.
Axis in motion (PLC) During axis movement, the NC sets the  Green: Axis in motion
bits in W1026.  Yellow: Axis at standstill

2003 HEIDENHAIN Technical Manual TNC 640


Meanings of the
signals under
"EnDat/status"

Signal Meaning Colors


Encoder model Designation of the encoder model
Device name Name of the encoder
Data width Number of bits of position value
Resolution Speed encoder
Number of signal periods per revolution
Linear encoder:
Signal period in nanometers
Value 0:
The encoder is a purely serial encoder.
Distinguishable Information about multiturn encoders. Number of max. distinguishable
revolutions revolutions.
Resolution of abs. track Speed encoder
Number of measuring steps per revolution
Linear encoder:
Number of measuring steps per nanometer
Serial number Serial number of encoder
Absolute value Current absolute value
EnDat 2.2 Information about whether the encoder is EnDat 2.2-compatible.
Alarms Evaluation of different types of error  Green: No error
information from the encoder.  Red: Encoder reports an
If the encoder reports an encoder error, error
fault-free encoder function is no longer
guaranteed. The encoder must be
checked and replaced if necessary. If
required, assistance can be provided by
your HEIDENHAIN service agency.
Warnings Evaluation of various encoder status  Green: No warning
information.  Yellow: Encoder issues a
If the encoder issues a warning, it means warning
that the encoder still functions properly,
but one of the functions is operating at its
limits. The encoder must be checked and
replaced if necessary. If required,
assistance can be provided by your
HEIDENHAIN service agency.

January 2015 7.1 Display and operation 2004


Meanings of the
signals under
"power module /
status"

Signal Meaning Colors


Power module ready (LT- The power module is ready:  Gray: No information about
RDY) the signal available
 Safety relay is on
 Green: Power module is
 Main contactor is on ready
 SH1 (MC) is "High"  Red: Power module reports
 No error from the power module "not ready"
Power module switch-off The signal shows that the IGBT in the  Gray: No information about
(IGBT) power module has been switched off. the signal available
 Green: No power module
switch-off (IGBT)
 Red: Power module switch-
off (IGBT)
Power module The signal reports the status of the heat  Gray: No information about
temperature sink temperature in the power module: the signal available
Either it is OK or too high.  Green: Temperature of
power module OK
 Red: Temperature of power
module too high

Meanings of the
signals under
"speed controller / Information Meaning Colors
overview" Direction Results of the test for the  Green: Direction of
(only available in direction of rotation. counting and rotation
motor encoder are the same (OK)
test)  Red: Direction of
counting and rotation
differ (error)
Amplitude Result of the test of the  Green: Signal
speed encoders' signals amplitude within the
tolerance (OK)
 Red: Signal amplitude
outside the tolerance
(error)

2005 HEIDENHAIN Technical Manual TNC 640


Automated testing
of drives
Information Meaning Colors
Phase 1, Phase 2, Status of the phases in the  Green: Phase is OK
Phase 3 motor and the supply line  Red: Phase error
Leakage current Information on a short circuit  Green: No ground fault
to ground in the motor, the  Red: Ground fault
power module or in the detected
supply line
Power module Status of the power module  Green: Power module
is OK
 Red: Power module
error
Supply unit Status of the power supply  Green: Power supply
unit unit OK
 Red: Power supply unit
error
Connection Status of the connection  Green: Connection is
control ↔ power module OK
 Red: Connection error

January 2015 7.1 Display and operation 2006


7.1.25 Bus Diagnosis
The TNC 640 provides diagnostic functions for the following bus systems:
 HSCI
 PROFIBUS
 PROFINET
 INTERNAL-IO
For this purpose, Bus Diagnosis associates the necessary hardware data from
the MC with the iocp file data from IOconfig and displays it transparently in the
line structure from project planning. The data from Bus Diagnosis are read-
only, modifications must be made in IOconfig.
You can access the functions as follows:
 Press the MOD key
 Press the DIAGNOSIS soft key
 Press the BUS DIAGNOSIS soft key

Example screen:

Bus Diagnosis allows you to display the structure of the selected system and
the details of all components connected to the system.
The HSCI, PROFIBUS, PROFINET and INTERNAL-IO tabs above the tree structure
are only available if the respective bus systems are connected to the control.
You can use the arrow keys to switch between the tabs for the connected bus
systems.
INTERNAL-IO presents a special feature: Both the components connected via
the SPI bus (CMA-H) and the components whose signals are not routed on a
bus (individually wired using connectors, PL 51x) will be displayed.

2007 HEIDENHAIN Technical Manual TNC 640


The control displays the actually connected hardware which has been
detected (actual configuration). Thanks to the iocp file from IOconfig, the
hardware configuration from project planning (nominal configuration) is also
known. Bus Diagnosis performs a comparison and shows where the actual
configuration deviates from the nominal configuration.
At positions on the bus where a deviation was detected, Bus Diagnosis
additionally displays the actually configured hardware (IOC:) following the
connected hardware that was detected (example: /IOC: TE 745). This
provides you with a direct comparison of the actual configuration and the
nominal configuration in order to support you in finding errors. Components
missing from the actual configuration (e.g. due to a fault on the bus) are
identified by a corresponding symbol.

Soft keys in The following soft keys are available in the main menu of Bus Diagnosis:
Bus Diagnosis
Soft key Function
Switch between the bus systems in the tree structure

Expand/collapse the tree structure of the selected device

Search for a term. Enter the search term into the text box that
opens, the search results are marked in blue in the tree structure.
Expand/collapse all subfolders in the tree structure.

Exit Bus Diagnosis

Navigation with the arrow keys of the operating panel:


 ↓, ↑ Select component
 → (or + key) Open component; the connected modules or terminals (pins)
are displayed
 ← (or – key) Close component

January 2015 7.1 Display and operation 2008


Tree structure pane The tree structure pane shows the connected bus devices. For diagnostic
purposes, the status of the connected field bus devices can be checked down
to the terminal (pin).
OK No error

Error (further information in the text window)

Warning (further information in the text window)

Undefined state (further information in the text window)

The representation in the tree structure view is similar for all buses.
Depending on the bus system, the symbols have different details, but they are
identified by the names from IOconfig.
Compared to IOconfig, the depth of display is reduced by one level: Bus
Diagnosis only supports the Master/Slave – Module – Pin representation.

Properties pane In the properties pane, the following information on the selected component
is available:

Field Meaning Level


Name Symbolic name of the device  Master
 Slave
 Module
 Submodule
 Pin
Comment Information on the selected device from the  Master
.iocp file, if available  Slave
 Module
 Submodule
 Pin
I/O block STD. Default option, preset for each element  Master
 Slave
 Module
Bus address Bus address in the chain  Module
 Submodule
Slot Input or output slot  Pin
Pin Input or output pin  Pin
Operand Linking of the input or output as a PLC operand  Pin
Order no. Order number  Pin
Plan page Reference to the page in the electric diagram  Pin
Pin name Pin name  Pin

2009 HEIDENHAIN Technical Manual TNC 640


The information listed here directly reflects the contents of the iocp file from
project planning.

Status area The status area provides information on the selected components, if available.
Part of this information, which can be added to the project planning, is
proprietary and taken from the HDD/GSD files for PROFIBUS and PROFINET.
The following fields are available:

Field Meaning
Value Operand value of the terminal (pin) in decimal code and HEX
code.
Text Error texts if an error occurs, otherwise blank. The texts
displayed are error-specific texts from the HDD/GSD file or the
error information configured in IOconfig.

Special feature with HSCI components:


 Display of S status (31 bits) in HEX code. Below the S status, its meaning is
displayed in plain text (abbreviated).
You can use the following tables to look up the meaning of the individual S
status bits. To do this, you need to convert the displayed HEX code to a binary
number. Example:

January 2015 7.1 Display and operation 2010


S status bit Signal Meaning
0 –ES.A Emergency stop channel A (SS1)
1 –ES.B Emergency stop channel B (SS1)
2 –ES.A.HW Emergency stop channel A handwheel
(SS1); no function with controls without
functional safety (FS)
3 –ES.B.HW Emergency stop channel B handwheel
(SS1); no function with controls without
functional safety (FS)
4 –STO.A.MC.WD Watchdog of MC software, switch-off of
inverters, A channel (SS1F, with functional
safety (FS): switch-off of FS outputs)
5 –STOS.A.MC Spindle is switched off by the MC,
A channel, STOS.A.G is initiated
(CC: spindle switch-off); no function in
controls without functional safety (FS)
6 –STO.B.CC.WD Watchdog of CC software, switch-off of
inverters, B channel (SS1F)
7 –SMC.A.WD "Fast" watchdog of MC software (SS1);
alarm on CC, which initiates the
deceleration of the axes
8 –SPL.WD With FS: Multi-channel watchdog of SPL
firmware (A/B channel); serious error of PL
(SS1F)
Without FS: Single-channel watchdog of
PL firmware.
9 –SMOP.WD With FS: Multi-channel watchdog of
SMOP firmware (A/B channel); serious
error of MOP machine operating panel
(SS1F).
Without FS: Single-channel watchdog of
MOP firmware (machine operating panel)
10 –PF.PS.AC Power supply of inverter too low
(parameterized LIFT OFF function in some
cases).
11 –PF.PS.DC DC-link voltage UZ too low
(CC: SS1)
12 –PF.BOARD Error in the supply voltage of the
respective module (SS1F)
13 –N0 Internal S status bit
(CC: SS1)
14 –REQ.SS2 Alarm (SS2)
15 – Reserved

2011 HEIDENHAIN Technical Manual TNC 640


The following additional status bits are available for an external PL:

S status bit Signal Meaning


16 –SPL.A.WD SPL watchdog, channel A
17 –SPL.B.WD Only in controls with functional safety (FS):
SPL watchdog, channel B
18 PGOOD.NC Voltage monitoring of NC reports a fault
19 PGOOD.PLC Voltage monitoring of PLC reports an error
20 –INT Internal interrupt
21..31 1 Reserved

The following additional status bits are available for an external MB machine
operating panel:

S status bit Signal Meaning


16 –SMOP.A.WD SMOP watchdog, channel A
17 –SMOP.B.WD Only in controls with functional safety:
SMOP watchdog, channel B
18 PGOOD.A Voltage monitoring of channel A reports a
fault
19 PGOOD.B Voltage monitoring of channel B reports a
fault
20 1 Reserved
21..31 1 Reserved

7.1.26 HwViewer
The TNC 640 automatically starts HwViewer at system startup if:
 The hardware has changed since the last startup
 PROFINET is being commissioned (assigning of addresses to the field bus
devices)
PROFINET only
HwViewer is started automatically if:
 The bus master has been detected in the MC and
 The .iocp file is available and
 No communication could be established with a configured terminal device
(device not found or network name not assigned) or
 The module/submodule setup of a terminal device does not match the
configuration

January 2015 7.1 Display and operation 2012


Hardware setup When the TNC control is switched on and detects the above situation, the
deviation window shown below appears. It contains the associated error messages.

The following soft keys are available:

Soft key Function


Use this soft key to switch the TNC control off

PROFINET only: Use this soft key to re-initialize the hardware


configuration. A re-initialization is mandatory after bus error has
been fixed. For all other bus systems, this soft key reads ACCEPT.
Use this soft key to change to Programming station mode

Use this soft key to change to the HwViewer diagnostics menu

2013 HEIDENHAIN Technical Manual TNC 640


HwViewer main After selection of the DIAGNOSIS soft key from the previous menu, the
screen HwViewer program starts.
The screen contents varies depending on the underlying situation:
 For PROFINET: Actual configuration, nominal configuration
 For all other bus systems: Last accepted configuration, current configuration

The screen is subdivided into the following areas:

Area Function
Display area This area shows a comparison of the ACTUAL and the
NOMINAL configuration
Message area This area shows the status messages
Soft key area This area shows function-specific soft keys

January 2015 7.1 Display and operation 2014


To display detail information on a field bus device listed in the display area,
expand its folder structure:

Display area contents can be marked as follows:

Color Function Description


Blue Cursor Use the cursor to navigate through the
individual bus devices. If a bus device already
contains an error or note marking, a black or
white border around it indicates the presence of
the cursor
Red Error An error occurred on this bus device. Expand
the directory structure of the bus device to
locate the error
Orange Note A note (info text) is available for the bus device.
Expand the directory structure to view the
detailed information of the message
Yellow Note While the bus device is available in the network,
but does not exist in the current iocp file.

The color markings to the left of the display area are for orientation purposes
in the list. The black frame identifies the currently visible section including all
subdirectories. The blue marking shows the cursor position at the displayed
level, the red and orange markings show the errors and notes at the displayed
levels.

2015 HEIDENHAIN Technical Manual TNC 640


The following commands are available in the soft key area

Soft key Function


Us this soft key to change between the different views in the
display area: ACTUAL and NOMINAL display, ACTUAL display,
NOMINAL display
Use these soft keys to scroll through the display area.

If the message area does not accommodate all parts of a


message, you can use this soft key to set the focus to the
message area and make the message text scrollable
PROFINET only: Use this soft key to configure the bus properties
(IP address, subnet mask, gateway) of each bus device.
Use this soft key to exit HwViewer. You are taken back to the
hardware setup deviation screen.

Note

The selected view remains active for all HwViewer screens! For most
menu items, however, the ACTUAL configuration / NOMINAL
configuration comparison view is most useful.

January 2015 7.1 Display and operation 2016


7.1.27 Window manager (XFCE)
The XFCE Window Manager is the graphic user interface of the HEIDENHAIN
HEROS 5 operating system.
XFCE provides the following functions:
 Taskbar for switching between various applications (user interfaces).
 Additional desktops on which the machine tool builder's applications can be
run.
 Controlling the focus between NC-software applications and those of the
machine tool builder.
 The size and position of pop-up windows can be changed. It is also possible
to close, minimize and restore the pop-up windows.

Taskbar There are the following ways to access the taskbar:


 Press the left HEIDENHAIN button on the keyboard
 Move the mouse pointer to the bottom of the screen

The XFCE configuration menu provides an integrated online help. Press the
Help button to display a detailed description of the possible settings.

2017 HEIDENHAIN Technical Manual TNC 640


XFCE settings To make advanced settings in XFCE, select WindowManagerConfig from the
"Settings" menu. To configure this area, you must enter the OEM password.
The following configuration options are available:
 reset: Reset window manager config to default values
 modify: Modify window manager settings
Use reset to restore the factory default settings. This action is confirmed by
a message at the bottom of the screen. Use modify to edit the settings shown
below:

Press the Help button to display a detailed description of the possible settings.

Display In the "Display" area, you can set all monitor-related options. These include:
 Resolution
 Refresh rate
 Rotation
 Mirroring
There is a special feature for the current main computers to be integrated in
the operator panel of the TNC control: Here, you can additionally set the
brightness of the display. For external monitors (BF 7xx), this is not possible.

January 2015 7.1 Display and operation 2018


7.1.28 Remote Desktop Manager (Option #133)
Software option #133 enables you to display external computer units on the
TNC screen that are connected via Ethernet and to operate them over the
TNC. You can also start programs specifically under HEROS or display web
pages of an external server.
HEIDENHAIN offers you the IPC 6641 as a Windows computer. With the
IPC 6641 Windows computer, you can start and operate Windows-based
applications directly from the TNC, see page 2765.
Configure the Remote Desktop Manager as follows, after enabling software
option #133:
 Make the taskbar at the bottom of the screen visible by moving the mouse
pointer over it
 Press the green HEIDENHAIN button to open the JH menu.
 Select the Remote Desktop Manager menu item.

Menu item Function

Add Connection Configure a new connection

Delete Connection Delete a connection

Edit Connection Edit a connection

End Exit the Remote Desktop Manager

The Remote Desktop Manager allows you to create and configure


connections for individual external applications or computers (e.g web-based
or VNC). You can also define for each connection whether it is to be
established right away when the control is booting, and on which control
desktop it is to be displayed. Five basic connection types are available for the
configuration of individual connections.

2019 HEIDENHAIN Technical Manual TNC 640


The following connection types are available in the Add Connection menu
item. You can configure individual connections of the types listed there. The
programs listed below are preinstalled on the control for the individual
connection types:
 Windows Terminal Service (RDP)
Displays the desktop of a remote Windows computer on the control.
Program: Rdesktop Client 1.7.0
 Windows Terminal Service (RemoteFX)
Displays the desktop of a remote Windows computer on the control.
Compared to RDP, desktop switching is faster and more reliable with
RemoteFX. HEIDENHAIN therefore recommends selection of the
RemoteFX connection type.
Program: FreeRDP
 VNC
Connection to an external computer (e.g. IPC 6641). Displays the desktop of
a remote Windows or Unix computer on the control.
Program: Realvnc VNCViewer 4.1.3
 Switch-off/restart of a computer
Remote-controlled switch-off or reboot of a remote Windows© or Unix
computer.
Program: net from Samba 3.3.1
 Web
Connection to an external HTTP server. Opens the Firefox browser. Shows
the websites of remote computers by indicating the URL (e.g. including web
interface for remote control of devices).
Program: Firefox 3.6.19
 SSH (Secure Shell)
Connection to an external Unix computer where an SSH server runs. Used
to get a console (operating window) or to have console commands
executed.
 XDMCP
Connection to an external Unix computer via X session.
Program: Xnest from X.Org XServer 1.9.2
 User-defined connection
User-defined applications or programs not to be started using the NC
software, but under HEROS 5.
Note: RDP and Net Shutdown are embedded programs of the Windows-
Distribution (at least available since Windows XP).
The versions of these programs may change with future software releases,
when newer versions of the respective program packages are available. The
versions listed here are therefore meant as minimum requirements, i.e.
"version xxx or higher".
When using the Remote Desktop Manager software option, please note the
following:
 HEIDENHAIN only guarantees working connections between HEROS 5 and
the IPC 6641 (using the VNC, RDP, RemoteFX and Net Shutdown
protocols).
 HEIDENHAIN cannot guarantee the correct function of any other
combinations or connections to external devices.
 If changes to preinstalled programs or data make service visits from
HEIDENHAIN necessary, the service costs will be invoiced.
 To avoid loss of data or damage to an externally connected system, you
should configure this computer to be shut down automatically when the
TNC is shut down.

January 2015 7.1 Display and operation 2020


General Once a connection has been configured, it is shown as an icon in the Remote
information on the Desktop Manager window. Click the connection icon with the right mouse key
connections to open a menu in which the display can be started and stopped.
With the Windows key you can always switch to the third desktop, which by
default is used for the display. You can also use the taskbar to get to this
desktop.
If the desktop of the external connection or the external computer is active, all
inputs from the mouse and the keyboard are transmitted there.
All connections are terminated automatically when the HEROS 5 operating
system is shut down. Please note, however, that only the connection is
canceled, whereas the external computer or the external system is not shut
down automatically.

Windows Terminal With Add Connection, you can configure a new connection after having
Service (RDP) selected a connection type; with Edit Connection, you can change an existing
connection connection:

2021 HEIDENHAIN Technical Manual TNC 640


Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection ends
 Never restart
Never restart
 Always after an error
Restart if the connection ends due to an
error
 Ask after an error
After an error, display a message and
prompt for reconnection

Automatic Connection is established automatically


starting upon when the control boots
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or canceled.

Move to the Desktop on which the connection is to be


following opened. Desktops 0 and 1 are reserved for
workspace the NC software and should not be used for
other connections. The default connection
is desktop 3. Also the Windows key on the
keyboard unit automatically opens desktop
3.

January 2015 7.1 Display and operation 2022


Menu item Function

Release USB Enables all USB mass storage devices


mass memory attached to the control as CIFS shares
(name = "usbx") for the connected
computer.
This allows you to establish, from the
Windows Explorer of the connected
computer, a connection to a drive under the
name of the control. This way, the
connected computer can access USB mass
storage devices attached to the control
(e.g.: U:\usb0, U:\usb1, etc.)

Details

Computer: Host name or IP address of the external


computer. In the recommended
configuration of the IPC 6641, the IP
address 198.168.254.3 is used.

User name: User name with which the connection


should log in.

Password: The default password for connection to the


VNC server is "123". Please change this
password on the IPC and TNC during
commissioning.

Windows domain: Domain of the target computer, if required.

Full-screen Show display of the external computer in


mode full-screen mode. Only useful, if the
resolution of the external computer
matches the resolution of the control
screen (BF).

User-defined Definition of the window size for the display


window size: of the external computer or connection. As
a rule, the window size should correspond
to the resolution of the external computer
or connection, as long as it is lower than the
resolution of the control screen.

Advanced options Advanced settings that are usually not


necessary. Only in consultation with
HEIDENHAIN.

2023 HEIDENHAIN Technical Manual TNC 640


With RDP, the screen of the external computer is not mirrored, as with VNC,
but an individual desktop is opened for it. The desktop that is active on the
external computer when the connection is established is then locked and the
user is logged off. This prevents operation from two sides. The user "TNC"
should be specified right from the start in the connection properties when
connecting to the IPC 6641.
With an RDP connection, it is further not possible to completely shut down the
external computer via the Windows menu. It is only possible to cancel the
connection or log off the user.
The RDP connection also adjusts the screen resolution automatically.
Please note that an RDP connection is closed again automatically after 30
seconds if no user name and password were configured for it or if the user has
not logged on within this time. The Automatic starting upon login function
therefore only makes sense if a user with user name and password was
configured.

Windows Terminal With Add Connection, you can configure a new connection after having
Service (RemoteFX) selected a connection type; with Edit Connection, you can change an existing
connection connection:

January 2015 7.1 Display and operation 2024


Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection
terminates
 Never restart
Never restart
 Always after an error
Restart if the connection terminates due
to an error
 Ask after an error
Display a message and ask after an error.

Automatic Connection is established automatically


starting upon when the control boots
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or terminated.

Move to the Desktop on which the connection is to be


following opened. Desktops 0 and 1 are reserved for
workspace the NC software and should not be used for
other connections. The default connection
is desktop 3. Also the Windows key on the
keyboard unit automatically opens desktop
3.

2025 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Release USB Enables all USB mass storage devices


mass memory connected to the control as CIFS shares
(name = "usbx") for the integrated
computer.
This allows you to establish, from the
Windows Explorer of the connected
computer, a connection to a drive under the
name of the control. This way, the
connected computer can access USB mass
storage devices attached to the control
(e.g.: U:\usb0, U:\usb1, etc.)

Details

Computer: Host name or IP address of the external


computer. In the recommended
configuration of the IPC 6641, the IP
address 198.168.254.3 is used.

User name: User name with which the connection


should log in.

Password: The default password for connection to the


VNC server is "123". Please change this
password on the IPC and TNC during
commissioning.

Windows domain: Domain of the target computer, if required.

Full-screen Show the screen display of the external


mode computer in full-screen mode. Only makes
sense if the resolution of the external
computer matches the resolution of the BF
control screen.

User-defined Definition of the window size for the display


window size: of the external computer or connection. As
a rule, the window size should match the
resolution of the external computer or
connection, as long as it is lower than the
resolution of the control screen.

Advanced options Advanced settings that are usually not


necessary. Only after consultation with
HEIDENHAIN.

For integrating the IPC 6641, HEIDENHAIN recommends using a RemoteFX


connection.

January 2015 7.1 Display and operation 2026


With RemoteFX, the screen of the external computer is not mirrored, as with
VNC, but an individual desktop is opened for the connection. The desktop that
is active on the external computer when the connection is established is then
locked and the user is logged off. This prevents that two users access the
control simultaneously. The user "TNC" should be specified right from the start
in the connection properties when connecting to the IPC 6641.
With a RemoteFX connection, it is further not possible to completely shut
down the external computer via the Windows menu. It is only possible to
cancel the connection or log off the user.
The RemoteFX connection also adjusts the screen resolution automatically.
Please note that a RemoteFX connection is closed again automatically after 30
seconds if no user name and password were configured for it or if the user has
not logged on within this time. The Automatic starting upon login function
therefore only makes sense if a user with user name and password was
configured.

VNC connection With Add Connection, you can configure a new connection after having
selected a connection type; with Edit Connection, you can change an existing
connection:

2027 HEIDENHAIN Technical Manual TNC 640


Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection
terminates
 Never restart
Never restart
 Always after an error
Restart if the connection terminates due
to an error
 Ask after an error
Display a message and ask after an error.

Automatic Connection is established automatically


starting upon when the control boots
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or terminated.

Move to the Desktop on which the connection is to be


following opened. Desktops 0 and 1 are reserved for
workspace the NC software and should not be used for
other connections. The default setting is
desktop 3. Also the Windows key on the
keyboard unit automatically opens desktop
3.

January 2015 7.1 Display and operation 2028


Menu item Function

Release USB Enables all USB mass storage devices


mass memory connected to the control as CIFS shares
(name = "usbx") for the integrated
computer.
This allows you to establish, from the
Windows Explorer of the connected
computer, a connection to a drive under the
name of the control. This way, the
connected computer can access USB mass
storage devices attached to the control
(e.g.: U:\usb0, U:\usb1, etc.)

Details

Computer: Host name or IP address of the external


computer. In the recommended
configuration of the IPC 6641, the IP
address 198.168.254.3 is used.

Password: The default password for connection to the


VNC server is "123". Please change this
password on the IPC and TNC during
commissioning.

Full-screen Show the screen display of the external


mode computer in full-screen mode. Only makes
sense if the resolution of the external
computer matches the resolution of the BF
control screen.

User-defined Definition of the window size for the display


window size: of the external computer or connection. As
a rule, the window size should match the
resolution of the external computer or
connection, as long as it is lower than the
resolution of the control screen.

Permit further Also grant other VNC connections access


connections to the VNC server.
(share)

View only Display-only mode. The mouse and


keyboard inputs are not transferred to the
external connection or external computer.

Advanced options Advanced settings that are usually not


necessary. Only after consultation with
HEIDENHAIN.

2029 HEIDENHAIN Technical Manual TNC 640


HEIDENHAIN recommends using the VNC connection if a program requiring
graphics acceleration (e.g. programs to play videos) is installed on the external
computer. RDP does not support this.
With VNC, the screen of the external computer is mirrored directly. The active
desktop on the external computer is not locked automatically.
With a VNC connection it is also possible to completely shut down the external
computer via the Windows menu. As the computer cannot be rebooted over
a connection, it must actually be switched off and on again.
With the VNC connection, the screen resolution is not adjusted automatically
during mirroring. If the resolutions of the external computer and the control
desktop do not match, this can have the effect, for example, that a scrollbar
appears on the screen. HEIDENHAIN therefore recommends activating the
full-screen mode.

Shutting down or To set up a new connection that can be used to configure the automatic
rebooting an shutdown of a Windows computer, select Switch-off/restart of a computer
external computer and click Add Connection. To change an existing connection, select Edit
Connection:

Note

To avoid loss of data or damage to the Windows system, you should


configure an automatic shutdown of the Windows computer
simultaneously with the shutdown of the control.

January 2015 7.1 Display and operation 2030


Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Not necessary with this connection type


after end of
connection:

Automatic Not necessary with this connection type


starting upon
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or terminated.

Move to the Not active with this connection type


following
workspace

Release USB Does not make sense with this connection


mass memory type

2031 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Details

Computer: Host name or IP address of the external


computer. In the recommended
configuration of the IPC 6641, the IP
address 198.168.254.3 is used.

User name: User name with which the connection


should log in.

Password: The default password for connection to the


VNC server is "123". Please change this
password on the IPC and TNC during
commissioning.

Windows domain: Domain of the target computer, if required.

Max waiting When the TNC shuts down, it commands


time (seconds): the Windows computer to shut down.
Before the TNC displays the message "You
may switch off now", it waits for <Timeout>
seconds. If the Windows computer is
switched off before the <Timeout> seconds
are over, the TNC does not wait any longer.

Force All programs on the Windows computer are


shut down automatically, even if dialogs of
these programs, for example "Save file yes/
no" are still open. If "Force" is not set,
Windows waits for up to 20 seconds. This
delays the shutdown process or the
Windows computer is switched off before
Windows has shut down.

Restart Reboot the Windows computer.

Run during Reboot the Windows computer when the


restart TNC reboots. Only effective if the TNC is
rebooted with the Shutdown icon in the
taskbar at bottom right or if a reboot is
performed due to changes to the system
settings (e.g. network settings).

Run during Switch off the Windows computer when


switch-off the TNC is shut down (no reboot). This is
the standard scenario. The END key will
then no longer trigger a reboot, either.

Additional options: Advanced settings that are usually not


necessary. Only after consultation with
HEIDENHAIN.

January 2015 7.1 Display and operation 2032


WEB connection To configure a new connection that opens a website via the Firefox browser,
select the WEB connection type and click Add Connection. To change an
existing connection, select Edit Connection:

Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Not necessary with this


after end of connection type
connection:

Automatic Not necessary with this


starting upon connection type
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or terminated.

Move to the Not active with this connection type


following
workspace

Release USB Does not make sense with this connection


mass memory type

2033 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Details

URL: Enter a valid web address or website. The


contents to be displayed must be suitable
for the Firefox browser. Addresses of local
web servers can also be entered with
indication of the port.

Every browser of a WEB connection is started with its own browser profile,
with the name of the connection. Browser profiles save all browser settings,
such as the starting page, connection type and history. Please note the
following:
 Every new connection is configured with the default settings.
 To some extent, these settings (e.g. proxy settings, users, password) need
to be adapted for the individual connections.
 If the connection name is changed, the existing settings are lost, too. The
default settings become active.
If a browser is opened manually via the taskbar, this browser is opened with
the configured settings. If another browser is opened manually via the taskbar,
however, this browser, as well, takes the settings of any WEB connection that
is already open. This can cause problems if different browser profiles have
been saved. HEIDENHAIN therefore recommends starting further WEB
accesses by opening a new tab in the currently active browser or via the "in
new window" function.

January 2015 7.1 Display and operation 2034


SSH Secure Shell With Add Connection, you can configure a new connection after having
connection selected a connection type; with Edit Connection, you can change an existing
connection:

2035 HEIDENHAIN Technical Manual TNC 640


The SSH connection should only be used by users who are already familiar
with Secure Shell.

Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection
terminates
 Never restart
Never restart
 Always after an error
Restart if the connection terminates due
to an error
 Ask after an error
Display a message and ask after an error.

Automatic Connection is established automatically


starting upon when the control boots
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or terminated.

Move to the Desktop on which the connection is to be


following opened. Desktops 0 and 1 are reserved for
workspace the NC software and should not be used for
other connections. The default connection
is desktop 3. Also the Windows key on the
keyboard unit automatically opens desktop
3.

Release USB Does not make sense with this connection


mass memory type

January 2015 7.1 Display and operation 2036


Menu item Function

Details

Host: Host name or IP address of the external


computer.

User: User name with which the connection


should log in.

Password: The password for connection to the SSH


server.

Options: Because the SSH connection of the remote


desktop manager was established with
help of the SSH client program "dropbear",
additional options for "dropbear" can be
specified here,
e.g. "-p 1023" to use TCP port 1023 instead
of the default TCP port 22.

Command: Enter here the console commands


(separated by ;) that are to be executed on
the remote computer. If you leave this
window empty, you must activate "Run in
terminal window" because you do not want
to execute a command but only display a
console window of the remote computer.

X11 Support Currently without function because the


"dropbear" SSH client program does not
support the X11 Support (forwarding of
graphic windows).

Run in terminal Opens a window in which the execution of


window the command from the "Command"
function is displayed, or an input console if
nothing is entered in "Command."

2037 HEIDENHAIN Technical Manual TNC 640


XDMCP connection To configure a new connection, select the XDMCP connection type and click
Add Connection:

January 2015 7.1 Display and operation 2038


Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection
terminates
 Never restart
Never restart
 Always after an error
Restart if the connection ends due to an
error
 Ask after an error
Display a message and ask after an error.

Automatic Connection is established automatically


starting upon when the control boots
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or terminated.

Move to the Desktop on which the connection is to be


following opened. Desktops 0 and 1 are reserved for
workspace the NC software and should not be used for
other connections. The default setting is
desktop 3. Also the Windows key on the
keyboard unit automatically opens desktop
3.

Release USB Does not make sense with this connection


mass memory type

2039 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Details

Computer: Command to be executed

Full-screen Show the screen display of the external


mode computer in full-screen mode. Only makes
sense if the resolution of the external
computer matches the resolution of the BF
control screen.

User-defined Definition of the window size for the display


window size: of the external computer or connection. As
a rule, the window size should match the
resolution of the external computer or
connection, as long as it is lower than the
resolution of the control screen.

Additional options: Advanced settings that are usually not


necessary. Only after consultation with
HEIDENHAIN.

January 2015 7.1 Display and operation 2040


User-defined To set up a new connection that can be used to configure the automatic
connection shutdown of a Windows computer, select Switch-off/restart of a computer
and click Add Connection. To change an existing connection, select Edit
Connection:

2041 HEIDENHAIN Technical Manual TNC 640


Menu item Function

General information General settings

Connection Name of the connection in the Remote


name: Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection
terminates
 Never restart
Never restart
 Always after an error
Restart if the connection ends due to an
error
 Ask after an error
Display a message and ask after an error.

Automatic Not necessary with this connection type


starting upon
login

Add to A connection icon is displayed in the task


favorites bar.
 Double-click
Double-clicking the icon starts an inactive
connection and/or switches to the
desktop of this connection.
 Single click
Switches to the desktop of this
connection.
 Right click
Shows a menu in which the connection
can be established or terminated.

Move to the Not active with this connection type


following
workspace

Release USB Does not make sense with this connection


mass memory type

January 2015 7.1 Display and operation 2042


Menu item Function

Details

Command: Any program can be executed with the


command.

Start in the The command or program is started in a


terminal window terminal window. This can be necessary on
programs without a graphic user interface
to display the program outputs in the
terminal or to be able to make inputs via the
terminal.

Run during Starts the command or program with every


logoff logoff from HEROS. The function is
effective every time the HEROS user
interface is closed, which can be done e.g.
via the taskbar, also without completely
shutting down the control.

Run during Starts the command or program every time


restart HEROS is restarted.

Run during Starts the command or program every time


switch-off the control is shut down.

Maximum run Run-time restriction for the started


time (seconds) program. When the specified time has
expired, the Remote Desktop Manager
terminates the program automatically.
0 = No run-time restriction

Run as another The command or program is started with a


user different user. By default, all programs are
started as "TNC" user. This user has only
limited rights, e.g. no access to the PLC:. If
"Run as another user" is set, any defined
user can be selected. In addition to this, the
user password must be entered.

2043 HEIDENHAIN Technical Manual TNC 640


7.1.29 ITC 7xx – Connection and Configuration
The additional ITC (Industrial Thin Clients) operating stations from
HEIDENHAIN are convenient solutions for an additional, remote operation of
the machine or a machine unit, such as a tool-changing station. Due to the
specific remote operation concept, designed for the TNC, the ITC can be
connected very easily via a standard Ethernet connection with a cable length
of up to 100 meters.
The ITC 755 is a compact, additional operating station for control systems that
come with a 15" or 19" main screen. Besides an ASCII keyboard and a
touchscreen, the operating station input hardware includes the most
important TNC function keys. The ITC 755 automatically adapts its resolution
to the size of the main screen. The soft keys are operated from the
touchscreen, so that hardware-based soft keys are not necessary. The
following gestures are defined:
 Navigate between the sections of the lower soft key row by swiping
horizontally across the soft-key row
 Navigate between the sections of the right PLC soft-key row by swiping
vertically across the soft-key row
 Toggle between the "Manual" and "Programming" modes of operation by
swiping across the operating mode tabs at the top of the screen
 Trigger the screen shift key by swiping horizontally in the central screen area
 Display the left, vertical soft-key row by swiping horizontally to the right at
the left screen border (simulating the uppermost left soft key). If you need
to simulate a different soft key, please get in touch with your HEIDENHAIN
contact person.
Together with a TE 73x or TE 74x keyboard unit, each ITC 750 (15" screen) or
ITC 760 (19" screen) makes up a complete second operating station. It can be
used in the same way as the TNC.
Convenient plug&play technology
Once the TNC has detected an ITC, it provides a current operating system to
the latter. After the booting process, the main screen is mirrored 1:1. Due to
this plug&play principle, it is not necessary for the hardware manufacturer to
pre-configure the operating station. With a standard X116 Ethernet interface,
the TNC automatically integrates the ITC in the system.
When switching between the TNC and the ITC, control is either passed
directly or according to a transfer principle (configurable). Thanks to its USB
interface, the ITC is directly connected to the control's file system. Both the
booting and the shutdown process are entirely controlled by the TNC, thus
providing a maximum of operational safety.
With the current NC software versions, the factory default settings include a
DHCP server activated for the X116 interface of the MC main computer
(profile name: MachineNet), provided the MC has two Ethernet interfaces.
This means that an ITC 7xx can be operated without the need for further
configuration at a main computer running current NC software in a standard
configuration. In this configuration, the MC screen contents will be displayed
at the ITC. For this operation, a DHCP/TFTP server is mandatory. Otherwise
the MC cannot be operated and configured at all, see page 2691.
Up to four ITC 7xx stations can be connected to the X116 gigabit Ethernet
interface of a MC main computer unit using a hub. HEIDENHAIN highly
recommends the use of a gigabit Ethernet hub.

January 2015 7.1 Display and operation 2044


If the ITC is not detected and booted automatically when you connect it to the
X116 port of the MC, proceed as follows to configure the X116 (eth1) interface
for the operation of an ITC:

 Open the network settings of your control


 Select the tab named Interfaces
 Click the 'OEM authorization' button or press the soft key of the same name
 Enter the defined PLCPASSWORD or the code number 807667
 Select the eth1 X116 interface and press the button named Configuration
 Load the profile named MachineNet and click OK to close the Configuring
an interface dialog box
 Activate the eth1 X116 interface and press the Activate button. Now,
reboot the control.
 After the control or the master has been rebooted, the clients connected to
X116 can be booted. If everything is configured correctly, they should boot
from the storage medium of the master. All detected clients are displayed
in a list named Status of DHCP clients. This list opens when you press the
Status button on the DHCP Server tab.

2045 HEIDENHAIN Technical Manual TNC 640


In the following parts of the documentation, the terms "TFTP device", "VNC
participant" or "ITC" are used. These terms identify devices which do not have
their own storage medium such as a hard disk or flash card/flash disk and load
their operating system from the network. The HEIDENHAIN control systems
exclusively support HEIDENHAIN ITCs (with Intel Atom CPU) as TFTP devices.
For these ITCs, you can use the configuration to set the functions or programs
they should run after startup. The most straightforward operation is "clone"
operation. Consequently, this is configured by default . An "image" of the
screen contents at the main computer of the control is displayed on the ITC
screen. This operation and the conditions for switching between the different
operating stations (i.e. between VNC participants) can be specified in detail via
the VNC configuration, see page 2700. Additionally, PLC Modules 9286, 9287
and 9288 are available for this purpose.
To switch between the individual VNC participants (e.g. MC main computer
and ITC 750), use the mouse and click the focus icon (at the lower right of the
screen, between the horizontal and vertical soft-key rows) or press the
Connect key on the ASCII keyboard. The conditions for focus change depend
on the VNC configuration. HEIDENHAIN recommends to enable the focus
change only if the focus was released actively (i.e. Enable Concurrency VNC
Focus should not be activated).

January 2015 7.1 Display and operation 2046


DHCP client Client settings
settings In this window, yo can set (overwrite) the name for all devices.
 Open the Network settings
 Select the DHCP Server tab
 Click the 'OEM authorization' button or press the soft key of the same name
 Enter the defined PLCPASSWORD or the code number 807667
 Click the Status button
The Status DHCP Clients overview shows all detected DHCP clients (name,
IP address, MAC address, type, activity, validity)
 Select a client and click the Properties button
In this overview, you can configure each client, see page 2691

2047 HEIDENHAIN Technical Manual TNC 640


Dialog Option Meaning
Client
settings
MAC address: MAC address of the client
IP address: IP address of the client
DHCP client  Name:
settings Here, you can overwrite the host name of the device. The DHCP
server tries to set the host name of this device as indicated here.
It depends on the device, however, whether it will really change
its name as specified by the DHCP server. On most devices, the
name must be specified in the device itself, or at least the
configuration in the device must be modified such that the
device retrieves its host name from the DHCP. Regardless of
whether the device itself changes its name as specified, this IP
address is entered in the name server on the MC together with
this name. Therefore the device can be reached in the network
using this name.

January 2015 7.1 Display and operation 2048


Dialog Option Meaning
TFTP client  Configuration name
settings Here, you can assign a name to the TFTP device settings (by
overwriting the default name) or activate an existing setting for
a TFTP client. A configuration name can be used, e.g., to assign
the same settings to multiple TFTP devices or to transfer the
same TFTP client settings from one machine to another (e.g. by
TNC-Remo). To display the existing configurations, click the
drop-down-arrow. The settings saved under this name are v, w
and x. Furthermore, the Remote Desktop Manager settings are
saved under this name on the TFTP device.
 Start type
Here, you can specify the actions to be executed by TFTP
devices when they are operational:
• Clone (Default): The TFTP device displays an image of the
MC screen. These devices take part in the VNC focus
assignment and the data stored on USB storage devices
which are connected to these TFTP devices is forwarded to
the MC.
• Graphic with desktop and panel: The TFTP device starts a
blank desktop that contains a panel bar and a panel bar
menu. The panel bar menu allows you to configure
programs for automatic start (e.g. it displays working space
monitoring or the Windows user interface at a remote
computer) using the Remote Desktop Manager.
• Graphic with desktop: Same as the previous mode, but
without a panel bar. This setting is useful if you set up
programs before using the Remote Desktop Manager in the
"Graphic with desktop and panel" mode and not longer need
the panel bar or want to prevent access to the Remote
Desktop Manager.
• Graphic without desktop: While the graphic display
(Xserver) and the Window Manager (controls the window
borders and window switching) are started, no desktop
(background image) and no panel bar are displayed. This
mode is mainly intended for cases in which the OEM wants
to fill the entire ITC screen with a multi-window PLC/Python
application.
• Graphical without Window Manager: Starts the Xserver
without the Window Manager (WM). This operating mode is
not suitable for multi-windows applications. It is also
intended for OEM Python applications which fill the entire
screen, but only with a single window.
• Text mode: Currently only useful if the graphic mode is not
available due to an error.

2049 HEIDENHAIN Technical Manual TNC 640


Dialog Option Meaning
 Input integration
These settings can be used to achieve a "two-screen operation".
When you move the MC mouse pointer into the corresponding
direction and out of the MC screen, all mouse and keyboard
input will be passed to the TFTP device. As soon as you move
the mouse pointer back, the input returns to the MC screen.
• None: In this mode, the input is not passed to another
station. The TFTP device can only be accessed via the input
devices physically connected to the TFTP device.
• West: The screen of the TFTP device is located to the left of
the MC screen.
• East: The screen of the TFTP device is located to the right
of the MC screen.
• North: The screen of the TFTP device is located above the
MC screen. Caution: With this setting, it might be
impossible to access the panel bar of the TFTP device
because the mouse pointer will not activate the panel bar,
but is moved to the MC screen. If this is a problem, relocate
the panel bar on the TFTP device.
• South: The screen of the TFTP device is located below the
MC screen. Caution: With this setting, it might be
impossible to access the panel bar of the MC because the
mouse pointer will not activate the panel bar, but is moved
to the screen of the TFTP device.
Start SSH service Starts the SecureShell service (SSH) on the TFTP device. Now, you
can enter SSH commands and or run programs on the MC that
start an OEM Python application on the TFTP device.

January 2015 7.1 Display and operation 2050


7.2 Small PLC window
The small PLC window is shown in the following operating modes:
 Manual Operation
 El. Handwheel
 Positioning with Manual Data Input
 Program Run, Single Block
 Program Run, Full Sequence

Small
PLC window

Any ASCII text can be shown in two lines, each with 38 characters. In the left
half of the line a bar diagram can be shown optionally or additionally.
 Use Modules 9080, 9082 and 9083 to configure the window display in the
PLC program:
• 9080: Clear small PLC window
• 9082: Display a string in the small PLC window
• 9083: Display a bar diagram in the small PLC window
The modules must be called in a submit job or spawn job.
The modules are also in effect if the selected screen contains no small PLC
window (e.g. large graphic display) or the PLC window is in the background.
Do not interrupt processing of the modules through a CAN command!

2051 HEIDENHAIN Technical Manual TNC 640


Color table for small You can choose from 16 different colors to define the colors of the small PLC
PLC window window. The colors are selected by number. Before you call the PLC module,
you specify the numbers in a PS command.
The following colors are available:

Number Color
0 Black
1 Blue
2 Gray (40 %)
3 Red
4 Gray (80 %)
5 Green
6 Gray (20 %)
7 Gray (100 %)
8 Light yellow
9 Cyan blue
10 Dark green
11 Light blue
12 Light red
13 Gray (60 %)
14 Yellow
15 White

Module 9080 Clear the small PLC window


With this module you can clear the contents of the small PLC window.
Call:
CM 9080
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error (M4203) 1 Call was not in a submit or spawn job

January 2015 7.2 Small PLC window 2052


Module 9082 Display a string in the small PLC window
The string is designated with a string number or is transferred as an immediate
string and ends with the ASCII character <NUL>. It is shown in the small PLC
window in line 0 or 1, with each character in the color given for it. In the event
of error, no string is shown.

Column 037
Line 0
Line 1

References to PLC dialogs or PLC error messages are executed:


 Entered dialog or error number not found:
Is replaced by the ASCII character "@".
 Non-displayable character in the text (except string end):
Is replaced by the ASCII character "^".
The character size is oriented to the size of the screen window or by the
current operating mode, and cannot be influenced.
If the specified color number is zero, the text is shown in the same color as
the character last shown. If the first character of a line is specified as zero, the
color is undefined and can change from one display line to another.
Constraints:
 The size of this character set is determined by the size of the screen
window, i.e. by the current mode of operation, and cannot be altered.
 Module 9082 reports an error if the last character(s) of the string do(es) not
fit in the line. The truncated line, however, is displayed.
 On a 15-inch screen the length is limited to 38 characters, and on larger
screens it is limited to 128 characters (even if these are not all displayed).
The line length can be set to any length between 1 and 128 characters with
an OEM Python script, for example.
 The number of strings is not limited to three.
Call:
PS K/B/W/D <Line number>
0 or 1
PS K/B/W/D <Column number>
0 to 37
PS K/B/W/D <Number of the color>
0 to 15
PS K/B/W/D/S<String number or string>
CM 9082

2053 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error (M4203) 1 Call was not in a submit or spawn job or line
less than zero or greater than 1
or column less than 0 or greater than 37
or incorrect string number or no end of the
string or the last character(s) of the string can
no longer be displayed in the screen window.

January 2015 7.2 Small PLC window 2054


Module 9083 Display a moving-bar diagram in the small PLC window
The bar diagram is shown in the specified line with the specified lengths and
colors.
The diagram can be limited to the left half of each line. In this case the ASCII
text is limited to max. 19 characters of the right half.

Column 0150 019


Line 0
Line 1

The diagram comprises a rectangular frame in the maximum length and height
of an ASCII character. A scale graduation is shown at the top after every ten
units. The bar starts from the left-hand edge of the grid. The unused part of
the grid is filled in with the background color.
If you define the maximum length > 150, the length is limited to 150. If the
current length is > 150, the length is limited to the maximum length.
Color zero uses the background color. The background color of the PLC
window can be used for the margin or scale graduation, for example, if they
are not to be shown.
Call:
PS K/B/W/D <Line number>
0 or 1
PS K/B/W/D <Color for bar>
0 to 15
PS K/B/W/D <Color for margin and scale graduation>
0 to 15
PS K/B/W/D <Current length of the bar>
0 to 150
PS K/B/W/D <Maximum length of the bar>
0 to 150
CM 9083
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error (M4203) 1 Call was not in a spawn or submit job
or line less than 0 or greater than 1

2055 HEIDENHAIN Technical Manual TNC 640


7.3 PLC soft keys
In the vertical soft-key row, you can display your own soft keys via the PLC in
all operating modes. Use the PLCdesign TNC soft-key editor as of version 2.3
to create soft keys. The menu structure of the vertical soft-key row can be
defined using the MenuDesign software (included in the PLCdesign package
as of version 2.3). PLCdesign integrates the project file of MenuDesign in your
PLC project. For more detailed information, please refer to the respective
online help of the programs.

PLC soft-key row

January 2015 7.3 PLC soft keys 2056


7.3.1 Soft-key resource file

Settings in the configuration editor MP number


System
Paths
CfgPlcPath
softkeyProject 102306

The PLC soft-key structure is defined with MenuDesign in an *.MDF soft-key


project file. Moreover, with MenuDesign you generate an *.XRS soft-key
resource file that can be read by the control and in which the structure and
functionality of the soft-key menus is entered. The soft-key resource file has
a structured XML format.
In the machine parameter MP_softkeyProject, enter the path to the *.XRS
soft-key resource file. After acknowledgement of Power interrupted, the
*.XRS soft-key resource file is evaluated and the PLC soft-key structure is
displayed.
For the soft-key graphics, use .bmx files, which you can create with the
BMXdesign program. As an alternative, you can also use .bmp file for graphic
soft keys. Note the online help of the programs for more detailed information.

Example of a soft-
key resource file

<?xml version=“1.0“ encoding=“ISO-8859-1“ standalone = "yes"?>


<resource>
<imagelist id=“1“ >
<image id="0" transparentColor="#c6c6c6" file="%OEM%\SK\Softkey1.bmx" variant=“01“/>
<image id="1" transparentColor="#c6c6c6" file="%OEM%\SK\Softkey2.bmx"/>
<image id="2" transparentColor="#c6c6c6" file="%OEM%\SK\Softkey3.bmx"/>
...
</imagelist>
<!-- PLC root menuPLC Softkey Menu -->
<menu id="1" m304="W304" ImageListId="1" attributes="PLC | ROOT | VERTICAL | MANUAL |
AUTO | MULTI_LINE">
<item id="100" ImageId="0" ItemType="TYPE_NODE" SubMenuId="2" />
<item id="101" ImageId="1" ItemType="TYPE_NODE" SubMenuId="3" />
<item id="102" ImageId="2" AltImageId="102" ItemType="TYPE_CHECKABLE"
status="MG_Softkey_1" />
...
</menu>
...
</resource>

2057 HEIDENHAIN Technical Manual TNC 640


Entries in the *.xrs file Meaning
<?xml version=“1.0“ encoding=“ISO-8859-1“ Basic structure of the XRS file (XML
standalone = "yes"?> format); start entry of the file
<imagelist id=“1“ > Beginning of the list with the soft-key
graphics
<image id="0" transparentColor="#c6c6c6" Definition of a soft-key graphic:
file="%OEM%\SK\Softkey1.bmx" variant=“01“/> Unique ID, color properties and path of the
soft-key graphic file.
</imagelist> End of the list with the soft-key graphics
<!-- PLC root menuPLC Softkey Menu --> Comment
menu id="1" Defines a soft-key menu with soft-key
ImageListId="1" graphics from the list with the ID "1" or a
attributes="PLC | ROOT | VERTICAL | MANUAL | AUTO | soft-key menu for display handwheels.
MULTI_LINE | HANDWHEEL“ The following attributes are possible and
title=“ “ can be combined using "|":
PLC: PLC soft-key row
VERTICAL: Vertical menu
HORIZONTAL: Horizontal menu
ROOT: Highest menu level
MANUAL: Menu for Manual operating mode
AUTO: Menu for Program Run operating
mode
EDIT: Menu for Programming operating
mode
MULTI_LINE: Menu with further levels
ACTION_ON_PRESS: Action is run when the
soft key is pressed, not when it is released
HANDWHEEL: Defines a soft-key menu for
display handwheels
The heading of a handwheel menu (the
third line on the HR 420/HR 5xx) is
entered in the title variable.

January 2015 7.3 PLC soft keys 2058


Entries in the *.xrs file Meaning
item id="100" Soft-key definition. The ID of the soft-key
ImageId="0" graphic file and the type of the soft key
ItemType="TYPE_NODE" must be specified. The following types of
SubMenuId="2“ soft keys are supported:
text="SK1“
TYPE_NODE: Soft key jumps to a submenu.
alt_text=“sk1“
The name of the submenu must be
status=“MG_01“
entered under SubMenuID=.
TYPE_RETURN: Soft key returns from a
submenu.
TYPE_DUMMY: Empty soft key
TYPE_CONTINUOUS: Function soft key
TYPE_NORMAL: Function soft key active (for
the duration of a PLC cycle)
TYPE_CHECKABLE: A coupled marker is set
the first time it is pressed, and is reset the
next time.
TYPE_RADIO: Only one soft key of a group
of these soft-key types can be operated at
a time (this soft-key type is currently not
available for handwheels).
When a handwheel soft-key is used, the
marker given in the status variable is set.
The soft-key labeling of display
handwheels is entered in the "text"
variable. When the soft key is activated,
the labeling from the alt_text variable is
shown.
The following notation can be used to
enter an ASCII value to write special
characters:
&#<ASCII value>;
This value must be entered in decimal
notation.
Special characters include:
&#128; = arrow up
&#129; = arrow down
&#133; = Return symbol in the menu
</menu> End of the soft-key menu
</resource> End of the soft-key resource file

2059 HEIDENHAIN Technical Manual TNC 640


Connecting soft key As of NCK software version 597110-08:
resource files
With MenuDesign, further soft key resource files can be integrated into a soft
key resource file. This makes possible for example the project-specific
management of soft key submenus, e.g. for special, optional tool magazines.
Please also note the description of the MenuDesign PC tool in the online help.

Note

Connecting several soft key resource files is supported from PLCdesign


version 3.1.

XML syntax of the include statement:


<?JHinclude file="include.xrs" ?>
The include statement in the soft key resource file *.XRS can either be on the
menu level or within menus. At menu level has the effect that all menus with
the include resource file are loaded. Usually these are triggered via node soft
keys. If the include statement is in the menus, then all soft keys of the include
resource file are inserted into the menu (example below: all <item> definitions
from include.xrs are inserted into the ROOT menu).

<?xml version="1.0" encoding="utf-8"?>


<resource>

<?JHinclude file="%OEM%\PLC\SOFTKEYS\include.xrs" ?> <!-- include menu -->

<imagelist id="1" >



</imagelist>

<menu id="ROOT" numeric_id="1" ImageListId="1" attributes="PYTHON | ROOT | HORIZONTAL">


<item id="SK_MAIN_1" numeric_id="1" ImageId="0" text="1&#10;ROOT"
ItemType="TYPE_CONTINUOUS" />
<?JHinclude file="%OEM%\PLC\SOFTKEYS\include.xrs " ?> <!-- include softkeys -->
<item id="SK_MAIN_NODE_INC_1" numeric_id="2" text="Node&#10;to&#10;Include 1&#10;"
ItemType="TYPE_NODE" SubMenuId="10" />
</menu>

</resource>

January 2015 7.3 PLC soft keys 2060


Pop-up menu A pop-up menu is called through an OEM soft key in the vertical soft-key row
and covers the horizontal soft-key row with OEM soft-keys. This function is
interesting, for example, when you need additional space for soft keys for
more comprehensive tasks in the PLC (e.g. tool changer, pallet changer).
You can make pop-up menus with the MenuDesign program (provided in the
PLCdesignNT package).
In the *.XRS soft-key resource file, a pop-up menu is defined through the
PopupMenu=[name of the horizontal menu] entry.
The ClosePopup=“„ entry marks the end of the pop-up menu.
Constraints:
 Only horizontal pop-up menus can be made.
 No more than one pop-up menu can be active at one time.
 A pop-up menu can be ended either with a vertical soft key (ClosePopUp=“„)
or with the END soft key.
 A pop-up menu is always assigned to the operating mode from which the
menu was called.
Module 9203 Activate PLC soft-key menu
Module 9203 activates a soft-key menu, that is indicated in the current soft-
key resource file *.XRS (machine parameter MP_softkeyProject).
The PLC soft-key project can be defined in such a way that it is effective only
for specific modes of operation. This might be useful, for example, if you want
to use different PLC soft-key projects for the machine and programming
modes of operation.
Call:
PS D <Resource handle>
0 for every call
PS B/W/D/K/S<Reserved>
Transfer 0 or ""
PS B/W/D/K <Number of PLC soft-key menu>
or –1: Query the resource handle of the currently active soft-
key row
PS B/W/D/K <Mode>
Bit 0 = 0: Not allowed
Bit 0 = 1: vertical soft-key row
Bit 1 = 0: A new soft-key menu is set up
Bit 1 = 1: Return to the previous menu level.
The value <number of PLC soft-key menu> is not
evaluated.
PS B/W/D/K <Mode of operation>
0: Programming modes of operation
1: Machine modes of operation
2: Programming and machine modes of operation
3: Manual operating mode
4: Program Run, Full Sequence operating mode
5: Programming operating mode
6: Test Run operating mode
CM 9203
PL D <Resource handle>
0: Error code in NN_GenApiModuleErrorCode

2061 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Resource-handle overflow, incorrect
ErrorCode resource handle, incorrect mode, incorrect
operating mode or number of PLC soft-key
root menu negative.
20 Call not in a submit/spawn job
44 Error in the resource file

January 2015 7.3 PLC soft keys 2062


Module 9204 Update the PLC soft keys
If you want to restructure the PLC soft keys, you must call Module 9204. This
is necessary each time you have called Module 9203.
Call:
PS D <Resource handle>
Resource handle from Module 9203
CM 9204
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Incorrect resource handle
ErrorCode 20 Call not in a submit/spawn job

Module 9208 Status information of the PLC soft keys


Module 9208 determines current status information of the PLC soft keys.
Currently, the software only supports reading the currently displayed soft-key
menus in the vertical soft-key row.
The ID of the current menu plus the constant value 32768
( $8000) is returned.
Call:
PS D <Resource handle>
Resource handle from Module 9203
PS B/W/D/K <Function>
0: Number of the current soft-key menu
PS B/W/D/K <Reserved>
0 transferred
CM 9208
PL D <Status information>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid value for the parameter <Resource
ErrorCode handle> or the parameter <Function>
20 Call not in a submit/spawn job
44 Error finding the status information

2063 HEIDENHAIN Technical Manual TNC 640


7.3.2 Soft-key project file for HR 420, HR 5xx
Via the PLC, the TNC can also manage freely-definable soft keys on the
HR 420 and HR 5xx handwheels. The corresponding entries are made in the
general soft-key resource file (*.xrs) of the PLC project in which the soft keys
for the vertical and horizontal soft-key rows of the TNC screen are defined.
It is possible to switch from the basic menu of the HR, via the FCT (Function)
soft key, to a freely-definable submenu structure, each of which contains 5
soft keys, whose description and functions are specified in the soft-key
resource file.
This menu is displayed in the fourth row of the HR 420/HR 5xx . Four ASCII
characters are available for each soft key. However, if each soft key uses all
four characters, then there is no empty space between the soft-key
designations.
In addition, you can optionally have a menu title with 20 characters displayed
in the third row of the HR display for the main menu and each submenu.
The scope of function of the soft keys on the handwheel is limited somewhat
compared to the vertical and horizontal soft keys of the TNC screen.

January 2015 7.3 PLC soft keys 2064


The following example shows the configuration of a soft-key menu for an
HR 420. These settings must be fully integrated in the soft-key project file of
the TNC.

<?xml version=“1.0“ encoding=“ISO-8859-1“ standalone = "yes"?>


<resource>
...
<menu id="1" attributes=="ROOT | HANDWHEEL">
<item id="200" text=“FCT“ ItemType="TYPE_NODE" SubMenuId="2" />
</menu>
<menu id="_Node_1" numeric_id="2" attributes="HANDWHEEL" title = "1st OEM SOFTKEY MENU">
<item id="Entry_1" numeric_id="200" text="SK1" alt_text="sk1" ItemType="TYPE_CONTINUOUS"
status="MG_01" />
<item id="Blank_1" numeric_id="201" text=" " ItemType="TYPE_DUMMY" />
<item id="Entry_2" numeric_id="202" text="SK2" alt_text="sk2 " ItemType="TYPE_CHECKABLE"
status="MG_02" />
<item id="Blank_2" numeric_id="203" text=" " ItemType="TYPE_DUMMY" />
<item id="Back_1" numeric_id="204" text="&#133;" ItemType="TYPE_RETURN" />
...
</menu>
...
</resource>

2065 HEIDENHAIN Technical Manual TNC 640


7.4 Switching the control on/off

7.4.1 Starting up the control

Start-up sequence The control start-up comprises several phases, which are briefly described
below. The points where OEMs can influence the start-up directly through
entries or macros are described in detail.
Start-up sequence of the control:
 Step 1: BIOS loading process
The BIOS stored in the EPROM of the MC main computer is loaded. BIOS
stands for Basic Input Output System. The BIOS also checks the installed
main memory and the individual peripherals.
 Step 2: HEROS boot process
After the BIOS has been loaded, the control starts the HEIDENHAIN HEROS
(= HEidenhain Realtime Operating System) system.
 Step 3: Start the NC software
HEROS starts the NC software. The start-up screen appears on the control
monitor as well as a dialog box showing the number of the currently loaded
process. During start-up the control reads the config data from the *.cfg
files. If the configuration contains errors or, for example, new and therefore
yet uninitialized parameters from a software update, the boot process is
interrupted. The code number dialog box appears. Enter the MP code
number 95148 to open the configuration editor. All new or changed
parameters are indicated by a red exclamation mark in the editor. Press the
SAVE soft key to save the changed configuration and exit the configuration
editor. The control then resumes the start-up sequence of the NC software.
 Step 4: Acknowledge the power interruption
If the control has been configured with MP_powerInterruptMsg,, see page
2067, it waits until you acknowledge the Power interrupted message with
the CE key. If the machine configuration is incorrect, the power interruption
can only be acknowledged after you have corrected the configuration.
 Step 5: Compile the PLC program
After you press the CE key, the control compiles the PLC program and
displays the Compiling the PLC program message. If the PLC program
cannot be successfully compiled, you can view the errors in the PLC
compiler's status window, contained in the editor of the PLC Programming
operating mode.
 Step 6: Configure the CC controller unit (only digital control)
The interpolator configures the CC controller unit and starts the DSPs. If
errors occur, they are displayed in the error window (ERR key).
 Step 7: Test the EMERGENCY STOP
Once the CC controller unit reports its readiness, the control starts the
EMERGENCY STOP test. For more information on the process, see
"Emergency stop monitoring" on page 1551.

January 2015 7.4 Switching the control on/off 2066


 Step 8: Run the start-up cycle
The start-up cycle is run three times in total—once for the Program Run
operating modes, once for the Test Run mode, and once for the
Programming and Editing mode. During execution the control displays the
message Control is being initialized. After the control start-up, the
start-up cycle establishes a defined control condition. You can enter an OEM
cycle under CfgSystemCycle (102600) > OEM_STARTUP. This cycle will
then be run after the STARTUP cycle. For details on the start-up cycle,
please see "NC macros" on page 2564.
 Step 9: Traverse the reference marks (if configured)
In the last step, the control displays the Traverse reference points
message, prompting the operator to traverse the reference points of the
axes. Then the start-up of the control is complete. The Traverse Reference
Marks mode cannot be exited until all axes have been successfully
referenced.

Power interrupted
message
Settings in the configuration editor MP number
System
DisplaySettings
CfgStartupData
powerInterruptMsg 101501

In MP_powerInterruptMsg, you define the behavior during control start-up.


You can choose between the following start-up procedures.
 The Power interrupted message is displayed during control start-up. Start-
up is only continued after the message has been acknowledged.
 Start-up is not interrupted. The
Power interrupted message does not appear.

MP_powerInterruptMsg
Acknowledge the Power interrupted message
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
Start-up is only continued after the message has been
acknowledged.
FALSE
The Power interrupted message does not appear.
Default: FALSE
Access: LEVEL1
Reaction: NOTHING

2067 HEIDENHAIN Technical Manual TNC 640


PLC operand / Description Type

NN_GenCycleAfterPowerOn M
1st PLC scan after switch-on
NN_GenCycleAfterPlcStop M
1st PLC scan after PLC interruption
NN_GenCycleAfterReConfig M
1st PLC scan after modification of configuration data
NN_GenNcInitialized M
Control is being initialized (after start-up cycles)

Customer-specific While the control is starting, a customer-specific company logo can be


logo displayed instead of the HEIDENHAIN logo. Depending on the screen size, the
logo must be available as a *.BMP, *.PNG, *.JPG or .*SVG image file with an
image size of 1280 x 1024 pixels (for 19" screens) or 1024 x 768 pixels (for 15"
screens).
Path and possible file names for the start-up image:
 PLC:\resource\startup_1280x1024.bmp (or *.jpg, *.png, *.svg)
 PLC:\resource\startup_1024x768.bmp (or *.jpg, *.png, *.svg)
 PLC:\resource\startup.bmp (or *.jpg, *.png, *.svg)

Starting the control During start-up, machine parameters are automatically transferred from the
with empty PLC PLC partition. If the PLC partition does not contain any data, however (e.g. loss
partition of data, partition inadvertently erased or initial operation), the control cannot
be started.
If this occurs, you can access the control via TNCremo. This enables you to
restore a PLC partition that has been backed up before.

January 2015 7.4 Switching the control on/off 2068


Example:
During start-up, the control detects that the required machine parameter files
are not available on the PLC partition. The start-up process is interrupted. The
following dialog box appears:

(The machine parameters for configuring the conversational language are also
stored on the PLC partition. Since these parameters are not available at
present, English is set as the default language.)
 Use TNCremo to establish a connection to the control (the last valid
Ethernet configuration is effective)
 Copy the data you saved before, with TNCbackup for example, back to the
PLC partition
 Shut down the control by pressing the OFF soft key.
 Restart the control.
The system should now function correctly again.

Control start-up If configuration errors occur during control start-up, the Error during start-
with faulty up message appears instead of Power interrupted.
configuration
Also, the error messages for the incorrect configuration data, which are
triggered by the applications, are displayed individually.

2069 HEIDENHAIN Technical Manual TNC 640


7.4.2 Shutting down the control

Settings in the configuration editor MP number


System
DisplaySettings
CfgShutDown
shutdownOnConfig 101601
shutdownOnError 101602
shutdownOnUser 101603
shutdownOnOem 101604
maxTermTime 101605
powerOffDevice 101608
powerOffSlot 101609
powerOffPort 101606
powerOffDelay 101607
timeoutShutdownSK 101610
timeoutShutdown 101611
rebootOption 101612

The control must be shut down before it can be switched off. During
shutdown the ready signal of the servo drives is removed and the memory
card (or hard disk) is put into sleep mode. The behavior of the control during
shutdown is configurable: In addition, you can delay the shutdown process to
allow for specific actions.
There are various causes for shutdown. Using the parameter object
CfgShutDown, you define the control behavior during shutdown, depending
on the cause (trigger). A distinction is made between the following causes:
 shutdownOnConfig:
Configuration data that cause a reset were changed.
 shutdownOnError:
A severe error occurred.
 shutdownOnUser:
The machine operator terminates control operation (by soft key).
 shutdownOnOem:
The PLC program terminates control operation with Module 9279 or 9189.
Use MP_rebootOption to configure what will happen when the machine
operator terminates control operation using a soft key. ALLOW setting: After
pressing the OFF soft key, the operator has the choice between shutting
down the control or just restarting the NC software. SUPPRESS setting: The
RESTART soft key will not be displayed, the only option is to shut down the
control.
For control shutdown, the behavior defined with MP_shutdownOnUser
becomes effective. The SHUTDOWN default setting implies that the control will
be shut down and can only be switched on again using the OFF/ON main
switch.

January 2015 7.4 Switching the control on/off 2070


MP_maxTermTime specifies the maximum permissible time for all
processes to be concluded. Use this parameter to define a time window
within which shutdown has to be completed.
After shutting down the control, you can set a PLC output (to switch off the
machine, for example).
Proceed as follows:

Note

The following PLC outputs can be set automatically after shutdown:


 Freely available PLC outputs at X9 of a PL 62xx (system PL)
 PLC outputs at X6 of a UEC 11x
 PLC outputs at X7 of machine operating panels
The output terminals (pins) that can be used are listed in the tables on the
following pages.

 Use the POWEROFF setting for shutdown, or use Module 9279 – mode 2 to
shut down the control.
 Set the parameter MP_powerOffDevice:
Every external PL, every UEC and every machine operating panel in the
HSCI system has a unique bus address. To define the PLC output to be set,
you must specify the bus address of the affected system PL or the UEC 11x
or machine operating panel in parameter MP_powerOffDevice. The bus
address can be determined with the BUS DIAGNOSIS, for example:

2071 HEIDENHAIN Technical Manual TNC 640


 Set the parameter MP_powerOffSlot = 0.
 Use MP_powerOffPort to define the desired output terminal (pin).
Use the tables on the next page for the PL 62xx and UEC 11x to determine
the value for parameter MP_powerOffPort. The addresses of the outputs
at connector X7 of the machine operating panel are defined in the active
IOconfig project and can be adjusted with the IOconfig PC software.

January 2015 7.4 Switching the control on/off 2072


PL 62xx without functional safety, connection X9:

Terminal (pin) of the PLC output Setting in MP_powerOffPort


X9.3b 3
X9.4a 0
X9.4b 4
X9.5a 1
X9.5b 5
X9.6a 2
X9.6b 6

UEC 11x without functional safety, connection X6:

Terminal (pin) of the PLC output Setting in MP_powerOffPort


X6.1a 4
X6.1b 0
X6.2a 5
X6.2b 1
X6.3a 6
X6.3b 2
X6.4a 7
X6.4b 3
X6.5a 12
X6.5b 8
X6.6a 13
X6.6b 9
X6.7a 14
X6.7b 10
X6.8a 15
X6.8b 11
X6.9a 20
X6.9b 16
X6.10a 21
X6.10b 17
X6.11a 22
X6.11b 18
X6.12b 19

 The setting of the PLC output can be delayed. If required, enter in


MP_powerOffDelay the time by which the setting of the PLC output is to
be delayed.

2073 HEIDENHAIN Technical Manual TNC 640


In addition, it is also possible to execute concluding PLC actions before the
control is shut down. After pressing the OFF soft key, the PLC program can
delay the display of the "Do you really want to switch off?" pop-up window. An
appropriate user interface must have been programmed by using the available
tools, such as dialog texts, pop-up windows, vertical soft keys, etc. This
should include a prompt that informs the operator about concluding operating
steps that may be necessary.
 NP_GenShutdownRequest marker
The marker NP_GenShutdownRequest is set when the operator presses
the OFF soft key (= 1). If the marker is reset in the next PLC cycle, the PLC
program delays the display of the "Do you really want to switch off?" prompt
and therefore also the shutdown of the control. In this phase
(NP_GenShutdownRequest = 0), the PLC program can execute specific
actions before the control shuts down. In addition, the PLC program should
display a corresponding message for the operator. The TNC remains in this
condition until the marker NP_GenShutdownRequest is set again or the
time in MP_timeoutShutdownSK expires. Then the "Do you really want to
switch off?" prompt is displayed.
 NP_GenShutdownActive marker
After the "Do you really want to switch off?" prompt has been confirmed by
the operator with YES, the PLC run-time system sets the marker
NP_GenShutdownActive. If this marker is reset again by the PLC program
in the next PLC cycle, the control shutdown is delayed and concluding PLC
actions can be executed. The TNC remains in this condition until the marker
NP_GenShutdownActive is set again or the time in MP_timeoutShutdown
expires. Then, the control is shut down.
If the following conditions apply, however, it cannot be guaranteed that
concluding PLC actions (e.g. data backup of non-volatile memory ranges of the
PLC) can always be performed:
 If no PLC program is active at the time the control is shut down
(e.g. a PLC run time error has occurred, power interruption status), the
shutdown time is not delayed.
 If a PLC run time error occurs during shutdown, the delay is canceled.
Further shutdown configuration options can also be used, as these settings do
not become effective until the "Do you really want to switch off?" prompt has
been acknowledged.

January 2015 7.4 Switching the control on/off 2074


Machine MP_shutdownOnConfig
parameters Behavior when RESET configuration data is changed
Available from NCK software version: 597110-01.
Format: Selection menu
Options: RESTART
The control is shut down and then restarted.
TERMINATE
The control is shut down, but the operating system remains
active.
SHUTDOWN
The control and the operating system are shut down.
POWEROFF
The control and the operating system are shut down. If a PLC
output is entered in MP_powerOffPort, it will be set after
shutdown.
Default: RESTART
Access: LEVEL3
Reaction: NOTHING

MP_shutdownOnError
Behavior when RESET errors are acknowledged
Available from NCK software version: 597110-01.
Format: Selection menu
Options: RESTART
The control is shut down and then restarted.
TERMINATE
The control is shut down, but the operating system remains
active.
SHUTDOWN
The control and the operating system are shut down.
POWEROFF
The control and the operating system are shut down. If a PLC
output has been entered in MP_powerOffPort, it will be set
after shutdown.
Default: RESTART
Access: LEVEL3
Reaction: NOTHING

2075 HEIDENHAIN Technical Manual TNC 640


MP_shutdownOnUser
Behavior during switch-off by soft key
Available from NCK software version: 597110-01.
Format: Selection menu
Options: RESTART
The control is shut down and then restarted.
TERMINATE
The control is shut down, but the operating system remains
active.
SHUTDOWN
The control and the operating system are shut down.
POWEROFF
The control and the operating system are shut down. If a PLC
output has been entered in MP_powerOffPort, it will be set
after shutdown.
Default: TERMINATE
Access: LEVEL3
Reaction: NOTHING

MP_shutdownOnOem
Behavior when PLC module 9279 is called
Available from NCK software version: 597110-01.
Format: Selection menu
Options: RESTART
The control is shut down and then restarted.
TERMINATE
The control is shut down, but the operating system remains
active.
SHUTDOWN
The control and the operating system are shut down.
POWEROFF
The control and the operating system are shut down. If a PLC
output has been entered in MP_powerOffPort, it will be set
after shutdown.
Default: TERMINATE
Access: LEVEL3
Reaction: NOTHING

January 2015 7.4 Switching the control on/off 2076


After shutdown has been initiated, the control waits for the time defined in
MP_maxTermTime before starting the shutdown.

MP_maxTermTime
Delay time until control is shut down
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1000 [s]
Default: 0
Access: LEVEL3
Reaction: NOTHING

Both optional parameters MP_powerOffDevice and MP_powerOffSlot are


relevant only for HSCI systems (e.g. TNC 620). No values are to be entered for
controls without HSCI.
For an HSCI system, enter the bus address of the HSCI PL or the HSCI MB in
the parameter MP_powerOffDevice, e.g. the bus address of a PL 62xx or
UEC 11x or MB 7xx at which the control is to set a PLC output after shutting
down.

MP_powerOffDevice
Bus address of the HSCI device
Available from NCK software version: 597110-04.
Format: Number
Input: 0 to 20
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

For an HSCI system, enter in parameter MP_powerOffSlot the number of a


slot of the HSCI device defined under MP_powerOffDevice at which a PLC
output is to be set after shutdown. The system module of a PL 62xx or a
UEC 11x has the number 0.

MP_powerOffSlot
Number of the slot on the HSCI device (PL or UEC)
Available from NCK software version: 597110-04.
Format: Number
Input: 0 to 8
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

2077 HEIDENHAIN Technical Manual TNC 640


The entry in MP_powerOffPort has the following meaning:
 The corresponding PLC output is set if the requirements described above
are fulfilled (shutdown with POWEROFF setting or shutdown with Module
9279 – mode 2).
 No entry: No PLC output is set.

MP_powerOffPort
PLC output to be set after shutdown
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 31: Corresponds to PLC outputs I0 to I31 for systems
without HSCI
For systems with HSCI, please see the device-specific table.
No entry: Do not set PLC output.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

After shutdown, the control waits for the time defined in MP_powerOffDelay
before setting the PLC output.

MP_powerOffDelay
Delay time until PLC output is set
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1000 [s]
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

The MP_timeoutShutdownSK parameter defines the delay time after pressing


the "Machine off" soft key until the shutdown dialog "Do you really want to
switch off?" is displayed.

MP_timeoutShutdownSK
Delay time until shutdown dialog is displayed
Available from NCK software version: 597110-06.
Format: Number
Input: 1 to 3600 [s]
Default: 2 [s], optional parameter
Access: LEVEL3
Reaction: NOTHING

The MP_timeoutShutdown parameter defines the delay time after confirming


the "Do you really want to switch off?" dialog until the shutdown of the PLC
program.

January 2015 7.4 Switching the control on/off 2078


MP_timeoutShutdown
Delay time during shutdown until the PLC program ends
Available from NCK software version: 597110-06.
Format: Number
Input: 1 to 3600 [s]
Default: 20 [s], optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_rebootOption
Setting for the "Shut down control" dialog
Available from NCK software version: 597110-09.
Format: Selection menu
Options: ALLOW
The "RESTART" button or soft key for restarting the NC
software is displayed.
SUPPRESS
The "RESTART" button or soft key for restarting the NC
software is not displayed. The behavior defined with
MP_shutdownOnUser becomes effective.
Default: TERMINATE
Access: LEVEL3
Reaction: NOTHING
Module 9189 Shut down the control
Module 9189 shuts down the control. The PLC is not executable after
shutdown. The message windows, which appear during shutdown via soft
key, do not appear.
Call:
CM 9189
Error code:

Marker Value Meaning


NN_GenApiModule 0 Control was shut down
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 20 Module was not called in a submit or spawn
ErrorCode job

2079 HEIDENHAIN Technical Manual TNC 640


Module 9279 Shut down control (configurable)
The module terminates control operation. The behavior during shutdown of
the control is defined in a transfer parameter.
Constraints:
 After the module has been called, the file system updates the data on the
memory card (or hard disk) and closes all files.
 The module cannot be called in the cyclic PLC program since all accesses to
the hard disk by the PLC must be implemented in a submit or spawn job.
 The PLC is not executable after shutdown.
 If mode 1 is active, a control reset is triggered immediately after shutdown.
 The module call does not result in any outputs on the screen.
Call:
PS B/W/D/K <Mode>
0: Shut down the control
1: Shut down and restart the control
2: Shut down the control; then set the PLC output from
MP_powerOffPort (if defined).
CM 9279
Error code:

Marker Value Meaning


NN_GenApiModule 0 Control reset was carried out
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 20 Module was not called in a submit or spawn job
ErrorCode

January 2015 7.4 Switching the control on/off 2080


7.5 Keystroke simulation
The TNC 640 features two operating panels
 Integrated control keyboard
 One MB machine operating panel
The MB 720 machine operating panel is connected via HSCI to the main
computer unit of the TNC 640.
The key code of the control keyboard is evaluated directly by the NC.

7.5.1 Control keyboard


The key code in NP_GenKeyCode is displayed while a key of the control
keyboard is being pressed. (See "Codes for keystroke simulation" on page
2086.).

PLC operand / Description Type

NP_GenKeyCode D
Code of the depressed key

Note

The code of the key actually pressed is always saved in NP_GenKeyCode.


Characters entered using the "cell-phone-style keypad" are not stored in this
PLC operand. Instead, the code of the numeric key you pressed is
displayed n times.

The following modules can influence keys and soft keys:


 Module 9180: Simulate NC keys
 Module 9181: Disable individual NC keys
 Module 9182: Re-enable individual NC keys
 Module 9183: Disable groups of NC keys
 Module 9184: Re-enable groups of NC keys
 Module 9186: Call a soft-key function
 Module 9187: Status of a soft-key function call

2081 HEIDENHAIN Technical Manual TNC 640


Module 9180 Keystroke simulation
The module simulates NC keys and soft keys. You transfer the code of the
desired key.
Constraints:
 If you transfer the code value zero, the number of occupied elements in the
keystroke queue is returned. In this case there is no keystroke simulation.
 In order to support keys with override functions (value "KEY" in
CfgPlcOverrideDev/MP_source), Module 9180 (as of 597110-06) can also
process the key codes 256 (override at 100%), 257 (increase override) and
258 (reduce override).
Call:
PS B/W/D/K <Key code>
CM 9180
PL B/W/D <Number of assigned elements / error status>
0: Key code was transferred, key queue is empty
1 to 16 : Key code was not yet simulated, max. 16 entries in
the keystroke queue are possible
–1: For error see NN_GenApiModuleErrorCode
Error code:

Marker Value Meaning


NN_GenApiModule 0 NC key was simulated
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Transferred parameter > maximum value
ErrorCode 2 Transferred parameter invalid
22 Keystroke queue overflow

Module 9181 Disable NC key by PLC


The module disables individual NC keys.
Call:
PS B/W/D/K <Key code>
CM 9181
PL B/W/D <Error status>
0: NC key disabled
–1: For error see NN_GenApiModuleErrorCode
Error code:

Marker Value Meaning


NN_GenApiModule 0 NC key was disabled
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Transferred parameter > maximum value
ErrorCode 2 Transferred parameter invalid

January 2015 7.5 Keystroke simulation 2082


Module 9182 Re-enable NC key by PLC
The module cancels the effect of Module 9181.
Call:
PS B/W/D/K <Key code>
CM 9182
PL B/W/D <Error status>
0: NC key enabled
–1: For error see NN_GenApiModuleErrorCode
Error code:

Marker Value Meaning


NN_GenApiModule 0 Disabling was canceled
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Transferred parameter > maximum value
ErrorCode 2 Transferred parameter invalid

Module 9183 Disable NC key groups by PLC


The module disables the specified key group. The table at the end of this
section contains the assignment of the keys to the key groups.
The key-group codes are:
 0: All keys
 1: ASCII
 2: Horizontal soft keys, switchover keys for horizontal soft keys
 3: Cursor, ENT, NOENT, DEL, END, GOTO
 4: Numbers, algebraic signs, decimal point, actual position capture
 5: Operating modes
 6: Block opening keys
 7 : Vertical soft keys, switchover key for vertical soft keys
Call:
PS B/W/D/K <Key-group code>
CM 9183
PL B/W/D <Error status>
0: Group of NC keys disabled
–1: For error see NN_GenApiModuleErrorCode
Error code:

Marker Value Meaning


NN_GenApiModule 0 The group of NC keys was disabled
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Given PLC group code incorrect
ErrorCode

2083 HEIDENHAIN Technical Manual TNC 640


Module 9184 Re-enable locked NC key groups by PLC
The module cancels the effect of Module 9183 for the given key group. The
table at the end of this section contains the assignment of the keys to the key
groups.
The key-group codes are:
 0: All keys
 1: ASCII
 2: Horizontal soft keys, switch-over keys for horizontal soft keys
 3: Cursor, ENT, NOENT, DEL, END, GOTO
 4: Numbers, algebraic signs, decimal point, actual position capture
 5: Operating modes
 6: Block opening keys
 7 : Vertical soft keys, switch-over key for vertical soft keys
Call:
PS B/W/D/K <Key-group code>
CM 9184
PL B/W/D <Error status>
0: Group of NC keys enabled
–1: For error see NN_GenApiModuleErrorCode
Error code:

Marker Value Meaning


NN_GenApiModule 0 Disabling was canceled
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Passed PLC group code incorrect
ErrorCode

January 2015 7.5 Keystroke simulation 2084


Module 9186 Call a soft-key function
The module calls certain soft-key functions in the machine operating modes.
Do not call a new function until the previous one is completed. Use Module
9187 to interrogate the status of the soft-key function call.
For a soft-key function to be simulated it must be displayed either in the
foreground or background operating mode. Otherwise calling the module has
no effect. Module 9187 reports the error.
The following codes apply for the TNC soft keys:
 0: INTERNAL STOP
 1: M output
 2: S output
 3: TOUCH PROBE
 4: PASS OVER REFERENCE MARK
 5: RESTORE POSITION
 6: Incremental jog positioning
 7: "F LIMIT" soft key
 8: "MANUAL OPERATION" soft key
Call:
PS B/W/D/K <Number of the soft key function>
CM 9186
Error code:

Marker Value Meaning


NN_GenApiModule 0 Soft-key function was called
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter out of value range
ErrorCode 28 Previous call not ended

2085 HEIDENHAIN Technical Manual TNC 640


Module 9187 Status request of a soft-key call
Immediately after Module 9186 is called, the status 1 (soft-key function not
yet completed) is set—regardless of whether the function can be run in the
current operating mode. Module 9186 cannot be called again until status 0 or
2 is set. The error status 2 is erased if Module 9186 is called again or if power
is switched on.
Call:
CM 9187
PL B/W/D <Status>
0: Soft-key function completed or none called
1: Soft-key function not yet completed
2: Error: Soft-key function cannot be completed because
soft key is not available or operating mode is incorrect

Codes for keystroke The following table takes into account all keys used on the TNC. Please note,
simulation however, that not all the keys listed in the table must necessarily be available
on your keyboard.

Code Key Group Code Key Group


$00 No key $3A : ASCII
$08 BACKSPACE ASCII $3B ; ASCII
$0A RET ASCII $3C < ASCII
$20 SPACE ASCII $3D = ASCII
$21 ! ASCII $3E > ASCII
$22 " ASCII $3F ? ASCII
$23 # ASCII $41 A ASCII
$24 $ ASCII $42 B ASCII
$25 % ASCII $43 C ASCII
$26 & ASCII $44 D ASCII
$28 ( ASCII $45 E ASCII
$29 ) ASCII $46 F ASCII
$2A * ASCII $47 G ASCII
$2B + ASCII $48 H ASCII
$2C , ASCII $49 I ASCII
$2D – ASCII $4A J ASCII
$2E . (ASCII DOT) ASCII $4B K ASCII
$2F / ASCII $4C L ASCII
$30 0 Numbers $4D M ASCII
$31 1 Numbers $4E N ASCII
$32 2 Numbers $4F O ASCII
$33 3 Numbers $50 P ASCII
$34 4 Numbers $51 Q ASCII
$35 5 Numbers $52 R ASCII
$36 6 Numbers $53 S ASCII
$37 7 Numbers $54 T ASCII
$38 8 Numbers $55 U ASCII
$39 9 Numbers $56 V ASCII

January 2015 7.5 Keystroke simulation 2086


Code Key Group Code Key Group
$57 W ASCII $1BC – Numbers
$58 X ASCII $1BD . Numbers
$59 Y ASCII $1C0 MANUAL Operating mode
$5A Z ASCII $1C1 TEACH-IN Operating mode
$5E ^ ASCII $1C2 SINGLE Operating mode
$160 Soft key 0 Vertic. soft key $1C3 AUTO Operating mode
$161 Soft key 1 Vertic. soft key $1C4 EDIT Operating mode
$162 Soft key 2 Vertic. soft key $1C5 HANDWHEEL Operating mode
$163 Soft key 3 Vertic. soft key $1C6 TEST Operating mode
$164 Soft key 4 Vertic. soft key $1C7 MOD
$165 Soft key 5 Vertic. soft key $1CB PGM MGT
$17D FNEXT (vertical) Vertic. soft key $1D0 PGM-CALL Block opening
$180 Soft key 0 Horiz. soft key $1D1 TOOL DEF Block opening
$181 Soft key 1 Horiz. soft key $1D2 TOOL CALL Block opening
$182 Soft key 2 Horiz. soft key $1D3 CYCL DEF Block opening
$183 Soft key 3 Horiz. soft key $1D4 CYCL CALL Block opening
$184 Soft key 4 Horiz. soft key $1D5 LBL SET Block opening
$185 Soft key 5 Horiz. soft key $1D6 LBL CALL Block opening
$186 Soft key 6 Horiz. soft key $1D7 L Block opening
$187 Soft key 7 Horiz. soft key $1D8 C Block opening
$19C FBACK Horiz. soft key $1D9 CR Block opening
$19D FNEXT (horizontal) Horiz. soft key $1DA CT Block opening
$19E FNEXT-UP Horiz. soft key $1DB CC Block opening
$1A0 C-UP Cursor $1DC RND Block opening
$1A1 C-DOWN Cursor $1DD CHF Block opening
$1A2 C-LEFT Cursor $1DE FK Block opening
$1A3 C-RIGHT Cursor $1DF TOUCH-PROBE Block opening
$1A8 ENTER Cursor $1E0 STOP Block opening
$1A9 NO-ENTER Cursor $1E1 APPR/DEP Block opening
$1AB DEL Cursor $1EA DIA
$1AC END BLOCK Cursor $1EB FIG
$1AD GOTO Cursor $1EC Screen switch-over
$1AE CE $1ED HELP
$1B0 X $1EE INFO
$1B1 Y $1EF CALC
$1B2 Z $1F0 NC START
$1B3 IV
$1B4 V
$1B8 POLAR
$1B9 INCREMENT
$1BA Q
$1BB ACTPOS Numbers

2087 HEIDENHAIN Technical Manual TNC 640


7.5.2 Machine operating panel
The machine operating panel provides PLC inputs and PLC outputs for
evaluating its keys. Use the IOconfig PC software to link the inputs and
outputs of the machine operating panel with the PLC operands.

PLC operand / Description Type

PP_AxTraversePos M
Manual traverse in positive direction
0: Do not move axis
1: Move axis
PP_AxTraverseNeg M
Manual traverse in negative direction
0: Do not move axis
1: Move axis
PP_ChnRapidTraverseKey M
Rapid-traverse key
0: Rapid-traverse key not pressed
1: Rapid-traverse key pressed

January 2015 7.5 Keystroke simulation 2088


7.6 DCM - Dynamic Collision Monitoring (Option #40)

7.6.1 DCM – monitoring the working space for collisions

General Due to the complex movements and generally high traversing speeds of five-
information axis machining, axis movements are hardly predictable. This makes collision
monitoring a valuable function that relieves the machine operator and protects
the machine from damage.
The TNC 640 allows the use of the "DCM – Dynamic Collision Monitoring"
function (option #40, ID 526452-01) to integrate collision monitoring for
various machine elements via the kinematics tables.

Overview This chapter describes how to create a kinematics model, how to use DCM
and what to keep in mind when doing so.

"Limited DCM—important notes" on page 2090

"CMO – Collision Monitored Object" on page 2095

"DCM with M3D (Mesh3D)" on page 2097

"Integration of CMOs in the kinematics" on page 2110

"DCM – Function and operation" on page 2105

"Optimizing the DCM performance" on page 2108

"Configuration of the CMOs" on page 2111

"DCM – Additional settings / information / PLC modules" on page 2120

"Using KinematicsDesign on the control" on page 2124

Sample DCM danger of collision report

2089 HEIDENHAIN Technical Manual TNC 640


7.6.2 Limited DCM—important notes

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgDCM
reactionIfRTC 205301
reactionIfUnref 205302

Attention

RTC for machines with collision monitoring (DCM)


 If the coupling function is active, no collision monitoring takes place
(DCM inactive) This is indicated to the operator by a warning on the
screen and flashing of the DCM icon.
 Use
CfgDCM/reactionIfRTC to define the reaction to RTC commands with
activated DCM.
 Dynamic collision monitoring is not affected (DCM remains active) if axes
which are not defined in the active kinematics model are controlled by
RTC.

Attention

Machine reference run


 There is no collision monitoring on a machine during a reference run
(incremental encoders). This means that DCM is inactive (DCM icon
flashes) until all axes of the kinematics chain have been referenced.
 Use CfgDCM/reactionIfUnref to define the reaction to non-referenced
axes with active DCM.
 On machines with absolute position encoders, DCM is active as soon as
the machine is switched on.

Attention

Machine with following error or velocity feedforward control


If a machine is traversed with following error or while in operation with
velocity feedforward, DCM is inactive (DCM icon flashes). This means that
DCM is inactive if the feedForwardFactor machine parameter for one of the
axes in the kinematics chain does not equal 1.
Again use CfgDCM/reactionIfUnref to define the reaction to slave axes.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2090
MP_reactionIfRTC
Reaction to RTC commands with active DCM
Available from NCK software version: 597110-09.
Format: Selection menu
Options: Cancel
The NC program is aborted and an error message is displayed.
None
RTC commands are being executed. DCM will be inactive
during this time. This is indicated by a warning.
Default: Cancel, optional parameter
Access: LEVEL3
Reaction: RUN

MP_reactionIfUnref
Reaction to non-referenced axes with active DCM
Available from NCK software version: 597110-09.
Format: Selection menu
Options: Cancel
The NC program is aborted and an error message is displayed.
None
DCM remains inactive as long as at least one axis is not
referenced or operated as a slave axis. Warnings are issued.
Default: Cancel, optional parameter
Access: LEVEL3
Reaction: RUN

2091 HEIDENHAIN Technical Manual TNC 640


Additional The following limitations and conditions must also be considered for reliable
limitations and operation and correct use of DCM (collision monitoring):
conditions

Attention

DCM helps to minimize the danger of collision. However, certain


constellations cannot be considered during operation. Please pay attention
to the following information.

Attention

 DCM can only protect machine components from collision if they have
been set up correctly with respect to their dimensions and positions in
the machine coordinate system.
 Collisions of defined machine components or the tool with the workpiece
are not detected.
 Without software option #40 (DCM), there is no protection against
collisions, even if the kinematics description includes CMOs.
 Axes that are not part of the kinematics or the kinematics chain cannot
be monitored for collisions.
 Movements in M functions by the PLC are permitted only if the M
function is started with the SYNC_CALC function.

Attention

Compensations and filters in connection with DCM


Please note that collision monitoring does not consider filters and
compensations for path calculation.
 Angle tolerances for rotary axes (TCPM, Cycle 32)
 Tolerances for linear axes (Cycle 32)
 Temperature compensation
 Compensations by the PLC program.
 Compensation of reversal error
 Nonlinear axis error compensation
 Compensation by KinematicsComp

Attention

TNC 640 in Turning mode


Kinematics models in Turning mode do not automatically produce
rotationally symmetric results. It is necessary to use an adapted kinematics
model.
Example:
There is danger of collision if the model of a table-top with grooves is also
used in Turning mode.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2092
Attention

Creating and testing a DCM configuration


 The configuration of the complete collision monitoring must be done by
the machine manufacturer. The machine manufacturer is responsible for
the correct configuration and performance of the appropriate tests of the
DCM configuration.
 Once DCM has been configured, all possible collisions must be tested in
Manual operating mode in order to detect incorrect configurations.

Attention

Cycles for "Rigid tapping" (tapping without floating tap holder)


In the cycles for "rigid tapping" (tapping without floating tap holder)," you
must note that DCM does not take into consideration the simple "tracking
of the tool axis."

Attention

LIFTOFF function
DCM does not monitor movements controlled by the LIFTOFF function.

Attention

Handwheel superimposition (M118)


The handwheel superimposition function with M118 in combination with
collision monitoring is only possible in stopped state. To be able to use
M118 without restrictions you must deactivate DCM.

Attention

DCM and the "ramp-shaped acceleration profile" setting


(MP_manFilterEnhanced) during axis positioning by the PLC
DCM and MP_manFilterEnhanced (Axes/PhysicalAxis/CfgAxis/
advancedSettings) cannot be active at the same time while the PLC
positions the axes.
If axes with MP_manFilterEnhanced=TRUE are moved by the PLC while
DCM is active, MP_manFilterEnhanced will be disabled during the
movement.
The PLC, however, is able (e.g. by using module 9063) to disable DCM in a
targeted manner for this movement. This means that
MP_manFilterEnhanced will remain effective.

2093 HEIDENHAIN Technical Manual TNC 640


Attention

Furthermore, the following must be noted when editing kinematics or


associated tables. Only if this is followed are changes to the kinematics
detected by the collision monitoring:
 If changes are made to the kinematics or an associated description via
the PLC, Modules 9240 to 9246, these changes are adopted and become
effective immediately in the kinematic description.
 If you open and edit a kinematics description with the configuration
editor, the changes must be saved in order to become effective.
 The settings in the user dialog of the collision monitoring (DCM) for
Program Run and Manual Operation are also effective for PLC
movements that are started in the respective mode of operation.

The TNC 640 also carries out collision monitoring when you perform a
movement with the axis keys or the handwheel where multiple axes are
moved simultaneously with interpolation. This applies, for example, to
 movements in the tilted working plane on a machine with swivel head
(sloping tool)
 A movement with active TCPM.

Software-related Please also not the following limitations that apply to the current NC software:
limitations
 Fixtures and/or tool carrier kinematics can currently not yet be included in
collision monitoring (DCM).
 Machining operations in the Test Run mode can currently not yet be
checked for possible collisions.
 The WRITE TO KINEMATIC... function for editing CMOs from within the NC
program is not yet available for use.
 The iTNC 530 function of the MP1294 (increased traversing speeds for
DCM by moving only one axis) is not available for the TNC 640. The TNC 640
uses improved algorithms to make the traversing movements as dynamic
as possible even in Manual mode.
 The iTNC 530 function of MP1292 (manual allowance for DCM) is currently
not available for the TNC 640.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2094
7.6.3 CMO – Collision Monitored Object

Definition of CMOs can be described using four geometric basic objects, the so-called
collision-monitored geometric primitives. These geometric primitives are cylinders, cuboids,
object (CMO) planes (obsolete) or Mesh3D objects (M3D file). They are described using the
CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane, CfgCMOMesh3D configuration
objects and transformations. These individual geometric primitives can then
be combined with each other in the CfgCMO configuration object to describe
complex collision bodies. These CfgCMO objects are inserted as collision-
monitored objects in the kinematics chain. For a description of how to
configure CMOs, see "Configuration of the CMOs" on page 2111.
You use DCM to define objects (CMOs, collision-monitored objects) within the
kinematics description in relation to movable machine axes as they appear on
the machine as spatial objects or machine elements. These objects give a
three-dimensional image of the machine.
These CMOs including the current tool are then taken into account along with
the motions of the machine. The active tool is automatically integrated at the
tool reference point as a cylindrical object with the dimensions from the tool
table.

Attention

With turning tools this cylinder is clamped by the measured tool tip and tool
reference point (the cylinder radius is the value of XL + DXL from the
turning tool table and the length of the cylinder is the value of ZL + DZL).
Projecting parts of the tool (radially for example recessing widths, and
axially for example cutting plates with thread tools) are not protected. You
can protect the complete tool and the tool holder by defining the tool as a
step tool in the turning tool table and entering a sufficiently large XL and ZL
value in the higher level; this means that cylinders clamped by the higher
level are also protected.

If there is a danger of collision between defined objects, or between the tool


and defined objects, then the motions of the machine are stopped, the
collision is avoided, and a collision warning or error message is output in the
header of the control screen.
The "Select split screen layout" key and the PROGRAM + KINEMATIC soft key
enable you to display 3-D graphics of the collision objects defined in your
machine in the Program Run operating modes. However, the collision objects
of the machine are only displayed and cannot be edited. Software option #40
is required for this.

Attention

Starting at the lathe spindle, CMOs must be described as rotationally


symmetric (e.g. the table-top or chucking equipment, if appropriate).

2095 HEIDENHAIN Technical Manual TNC 640


Hollow bodies All bodies are hollow:

No collision!

Maximum number All CMOs defined in the configuration editor will be taken into account, no
of CMOs on the matter whether they are included in the active kinematics model or not.
machine
CMOs Quantity

CMOCuboid 100

CMOCylinder 100

CMOMesh3D 30

CMOPlane 50

CMOTrans 145

CMOPlane

Note

The half-space is limited by a plane:


 The size is finite (20 m x 20 m)
 HEIDENHAIN recommends to use CMOMesh3D or CMOCuboid
instead of CMOPlane.

KinematicsDesign The external KinematicsDesign PC tool (configuration of machine kinematics)


PC tool is also available on the TNC 640. See "Using KinematicsDesign on the control"
on page 2124.

Note

HEIDENHAIN recommends to define kinematics models and, in particular,


collision objects, with the PC version of KinematicsDesign.
KinematicsDesign is available for download to registered users on the
Internet in the HEIDENHAIN FileBase.
The KinematicsDesign version on the TNC 640 supports you in optimizing,
adjusting and changing the kinematics model of your machine.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2096
7.6.4 DCM with M3D (Mesh3D)

General As of NC SW 34059x-05, it is possible to define CMOs based on a CAD data


information record (design model) and the resulting STL data.
STL (stereo lithography) is a common format for exchanging 3-D models. It is
mainly used for 3D-printing.
Using the M3D Converter HEIDENHAIN PC tool (integrated in
KinematicsDesign , see page 2101), you can convert this data into a format
that the TNC 640 can read.
A prerequisite for using DCM with M3D is that a powerful main computer, i.e.
MC 65xx, MC 66xx or MC 75xx or higher is available.

Existing collision You an combine any existing kinematics model with Mesh3D models.
objects

STL files STL files can only be converted to M3D files if they meet certain requirements.
Please note the following information.

Note

 Machine elements should consist of as few parts as possible.


 STL objects reference their datum. It is recommended to group an object
and a transformation when creating a CMO.

Attention

Edit design details appropriately (e.g. by removing, simplifying, smearing


up,...)
HEIDENHAIN cannot guarantee that your intellectual property will be
protected when you disclose important design details.
Most editing steps (simplification, grouping, etc.) should already be
performed when creating the STL files. The M3D Converter, however, also
provides suitable editing functions.

2097 HEIDENHAIN Technical Manual TNC 640


Procedure for creating STL files from a CAD record

CAD 1st step Clear up and group


 Delete / hide unimportant items
• Doors
• Tool changer
• Electrical cabinets
• Rubber bellows
• etc.
 Group machine elements as an assembly

2nd step Simplify assemblies, remove details, smear up,


protect screws, etc.
 If required, add missing parts, overlay interior parts
 Delete unnecessary items
 Replace screws with cylinders
 etc.

STL 3rd step Export assemblies to STL


 Exclude unnecessary items from the export
 Define coordinate systems and set them for STL
 Select a meaningful chord error (chord height)
 Select a meaningful name, write down the chord
error

Attention

Gaps resulting from a chord error will not be monitored. It is important to


select a sufficiently small value for the chord error
(<= 0.5 mm).

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2098
Examples:

Simplify, remove details, smear up

Design details can be copied easily Optimized object


 Details are not relevant to safe DCM  Design details no longer recognizable
 No. of triangles: approx. 13 500  Full collision protection
 Additional advantage: Resources saved (no. of
triangles: approx. 2 500)

Add missing parts

Internet version (do not use) Improved

2099 HEIDENHAIN Technical Manual TNC 640


Attention

If parts are missing, collisions are likely.

Cover moving parts in a suitable manner (e.g. unbalance weights, screws, cables, etc.).

Attention

Make sure to use suitable models for moving parts.


HEIDENHAIN recommends to cover moving parts by corresponding
objects, smear them up, etc.

Chord error

 Select a suitable chord error


(HEIDENHAIN recommends a chord error
between 0.1...0.5 mm) Risk of collision Erroneous detection
Example: CMOCylinder (see figure)
 If the chord error is too large, cutouts might
become too narrow in concave surfaces. This
might result in erroneous collision detection.
 For convex surfaces, if the chord error is too
large, some parts of the geometry will be
"invisible" to DCM.
Consequence: Danger of collision

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2100
M3D Converter As mentioned above, you need to convert your STL files to M3D files using
(M3D files) the M3D Converter HEIDENHAIN PC tool. Only these M3D files can be
integrated into the kinematics model as CMOs.
M3D Converter is installed together with the KinematicsDesign PC tool (as of
software version 3.0). The KinematicsDesign
installation package is available for download to registered users on the
Internet in the HEIDENHAIN FileBase. After the installation, you can start M3D
Converter via its own icon.
For the conversion of STL files to M3D files, a model check is required.

Note

The M3D Converter license is protected by a USB dongle (software


release module). If no USB dongle is plugged into the computer, it is not
possible to convert STL files. This is indicated by an error message.
Please contact HEIDENHAIN if you want to use DCM with M3D and need
the dongle (ID 1124975-01) for M3D Converter.

M3D Converter – M3D Converter not only converts STL files to a format that the control can
Features read, but also includes other important features.

Attention

3-D models may in some cases be problematic. This applies mainly to third-
party models (e.g. from the Internet).
 Danger of collision (e.g. caused by holes in the model)
 Unnecessarily increased memory requirements, performance drop,
representation issues
 Wrongly modeled details

Attention

Edit design details appropriately (e.g. by removing, simplifying, smearing


up,...)
HEIDENHAIN cannot guarantee that your intellectual property will be
protected when you disclose important design details.
Most editing steps (simplification, grouping, etc.) should already be
performed when creating the STL files. The M3D Converter, however, also
provides suitable editing functions.

2101 HEIDENHAIN Technical Manual TNC 640


Examples of issues with 3-D models

Result:

Danger of collision

mm 10 20 30

INCHES 1

Different units of Noise Holes


measurement used

Result:

Design details visible,


intellectual property not
protected

M3D Converter provides the following, easy-to-use functions that will help
you mitigate the problems mentioned above:

Features of M3D Converter

 Inspecting and healing

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2102
Features of M3D Converter

 Optimizing
• Simplifying
• Merging

Rest from the CAD export,

 Optimizing
• Inflating (e.g.
casting)
• Defining an
envelope

 Optimizing
• Smoothing the
representation

Note

M3D Converter—further information


For further information on how to use and configure
M3D Converter, please see the online help of this program.

2103 HEIDENHAIN Technical Manual TNC 640


Attention

Important for DCM safety:


 Models and positions must be correct (CAD >= reality)
 If you replace an M3D file while the machine is running, changes will only
become effective after the next reconfiguration (in most cases after a
restart). HEIDENHAIN recommends to save each model under a different
name (do not save multiple models with the same name). DCM assumes
that the file name will not be used for multiple objects. The internal
structures will only be rebuilt if you change the file name (this
corresponds to a reconfiguration).

Attention

In a nutshell:
There is danger of collision in connection with the following:
 Casting
 Cables, nozzles, screws, unbalance weights, etc.
 Model measured incorrectly or inadequately
 Details not modeled
 Inappropriate chord error
 Holes in the model
 Etc.

Maximum number The number of triangles is restricted to 20 000 triangles / CMOMesh3D.


of triangles

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2104
7.6.5 DCM – Function and operation
After the software option #40 has been enabled, collision monitoring is active
in the Manual, Positioning with manual data input, Program Run, Single
Block, Program run, full sequence and Handwheel operating modes.
You can deactivate collision monitoring in the Manual Operation operating
mode via the "Collision Monitoring (DCM)" menu that appears when the
Collision soft key is pressed. It is possible to activate/deactivate DCM
separately for the manual and the program-run modes of operation.
At the same time, individual objects can be deactivated at run-time (See
"Activating and deactivating the monitoring feature" on page 2106), or
generally be excluded relative to other objects contained in the description
table See "Collision exclusions" on page 2117.

Manual / Electronic In the Manual or Handwheel operating mode, the TNC 640 reduces the
Handwheel traversing speed in accordance with the distance from the object for which
operating modes collision monitoring is active. This safely avoids any collision. This can result in
sudden reductions or increases of the feed rate to the maximum permitted
speed in the respective manual operating modes. If the objects come within
a specified distance of each other, the control stops the machine’s motions
and outputs an error message.
Example of an error:
 Message example: DCM: Spindle - RoundTable
 Meaning: Two objects monitored for collision are within 2 mm of each other.
 Cause in the Manual or Handwheel operating mode: Distance is less than 2 mm
Solution:
The axes can be moved again if the movement increases the distance
between the collision objects (for example by pressing the axis-direction key
for the opposite direction): First release the axis-direction key or stop the
handwheel, and then press the appropriate axis-direction key or turn the
handwheel in the opposite direction.
Acknowledging the error message with the CE key is then not necessary.

Program Run In the Positioning with Manual Data Input, Program Run Single Block, or
modes of operation Program Run Full Sequence operating modes, the motion is considered block-
by-block. For example, in the Program run, full sequence mode, the NC
program is stopped with an error message in the block in which the distance
would be below the minimum safe distance calculated by the TNC 640. The
TNC 640 calculates this safe distance dynamically. It results from the
requirement that the traverse motion can be stopped in time at any time,
taking the feed rate and direction into account. As soon as a traverse motion
would result in a distance 5 mm less than the calculated safe distance, the
motion is stopped even before the traverse block is executed or not
performed, and an error message is output.
Error:
 Cause in the Program Run, Full Sequence, Positioning with Manual Data Input or
Program Run, Single Block operating modes: Distance is less than 5 mm
If you deliberately want to execute a motion that further reduces the distance
between the two collision objects, you must deactivate DCM collision
monitoring. See "Activating and deactivating the monitoring feature" on
page 2106.

2105 HEIDENHAIN Technical Manual TNC 640


Activating and There are various methods for activating and deactivating collision monitoring.
deactivating the
 Manual
monitoring feature In the Manual operating mode, press the Collision soft key to open the
"Collision monitoring (DCM)" menu, and activate or deactivate DCM for the
Manual and Program Run operating modes (active/inactive).
 PLC modules
• PLC Module 9063 is used to activate and deactivate collision monitoring
(DCM) for the Program Run modes.
• Bit 3 of Module 9221 is used to deactivate collision monitoring for PLC
positioning movements. This means that it is possible to position an
axis when DCM is active and the reference marks have not yet been
traversed in all axes. A PLC positioning command can only be executed
if collision monitoring is deactivated for all axes involved in the
positioning movement. The deactivation of collision monitoring for PLC
positioning has no effect on the status information supplied by Module
9064.
 FN17 functions
• Monitoring of a CMO can be switched off with the FN17 function
FN17: SYSWRITE ID290 NR6 IDX<QS> = 0. IDX<QS> must have the
number of a QS parameter. The QS parameter must contain the key
name of the corresponding CMO. Collision monitoring of the CMO can
be activated again with FN17: SYSWRITE ID290 NR6 IDX<QS> = 1.
• It is always possible to create two kinematics descriptions with the
same basic kinematics model on the control for each use case with one
of these descriptions only containing a description of collision objects
(CMOs). Depending on your needs, you can activate the kinematics
with or without collision monitoring via the PLC (Module 9097) or with
FN17: SYSWRITE ID290 NR1.
 NC syntax
• FUNCTION DCM OFF
This NC temporarily deactivates collision monitoring.
The deactivation is only effective until the end of the program or until
the next FUNCTION DCM ON command is found. When another program
is called, DCM is active again.
• FUNCTION DCM ON
This NC command undoes a previous FUNCTION DCM OFF.

Attention

Please note that it is not possible to activate DCM with FUNCTION DCM ON if
it had been disabled via the Collision soft key, the PLC modules, FN17
functions or the kinematics selection.

Sample syntax:
TOOL CALL 2 Z S2500
L...
FUNCTION DCM OFF
L... ; z. B. Cycle 252
FUNCTION DCM ON; From here, DCM is active again
L...
...

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2106
Attention

Ensure that no matter which method was used to deactivate collision


monitoring, that it is switched on again after the desired action (without
collision monitoring) has finished.

2107 HEIDENHAIN Technical Manual TNC 640


7.6.6 Optimizing the DCM performance
The calculation of the collision objects, as well as the monitoring of their
relative positions, is very processor-intensive for the TNC. This calculation may
not consume too many resources, since they are essential to the actual
functions.
Performance depends on the following:
 Number of cuts
 Number of triangles (determines loading time)
 Distance between two CMOs
 Rotary axes
The revised version of DCM (as of NC SW 34059x-05) has several benefits.
Improved manual motions:
 at the surface:
• double or triple speed as compared to the previous DCM
 Response time:
• doubled
In order to satisfy the requirements, the number of collision objects should be
defined such that no more than the permissible number of intersections need
be calculated. Otherwise the increased calculation efforts can cause increased
block processing times. The maximum number of intersection calculations
applies to the entire collision monitoring. The number of collision objects
defined (Mesh3Ds, CYLINDERs, CUBOIDs in CMO descriptions) is not
decisive, but rather the number of intersections calculated within the collision
object model.
The maximum number of 1000 intersection calculations should not be
exceeded. In order not to reduce the performance of the system,
HEIDENHAIN recommends to use as few intersection calculations as
possible.
Deactivated collision objects (See "Activating and deactivating the monitoring
feature" on page 2106) and all definitions of excluded collisions (See "Collision
exclusions" on page 2117) are excluded from the calculations. It is therefore
important that all necessary calculations of intersections be specified in
advance.
Collision objects located in the same axis (CMOs between two machine axes),
which due to physical realities can not collide during traverse motions, are
automatically ignored by the TNC 640. This also applies if within two machine-
axis definitions, collisions objects are separated by transformations. However,
each of these objects can collide with the individual CMOs traversed in other
axes.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2108
Possible In KinematicsDesign, you can determine the number of possible intersections
intersections (monitored collisions) with "Extras, Infos…".
(monitored
Alternatively, you can calculate the possible intersections "manually". Proceed
collisions)
as follows:
 Ascertain the total number of collision objects defined (Mesh3Ds,
CYLINDERs and CUBOIDs) in the kinematics model with the most
intersection calculations. Ascertain this number for each axis (object
between two machine axis definitions).
 Ascertain the number of possible intersections (collisions) by proceeding as
shown in the following example:

No. Axis No. of Name


objects
1 – 5 Tool, TOOLFILE and spindle with housing
2 X
3 Y
4 Z
5 A
6 – 3 Tilting table with shank
7 C
8 – 4 Rotary table with chuck
9

Calculation:
No. of objects1 = 5 · (3 + 4) = 35
No. of objects2 = 3 · 4 = 12
Intersections = No. of objects1 + No. of objects2 = 47

2109 HEIDENHAIN Technical Manual TNC 640


7.6.7 Integration of CMOs in the kinematics
In order to use collision monitoring, the CMOs must be entered in the machine
kinematics.
The starting point for integrating the collision objects is always the tool
reference point (e.g. spindle point) and the coordinate system (XYZ) valid for
this point. It is then shifted via translations (e.g. X, Y or Z axis) and rotated or
tilted via rotations (e.g. A, B or C axis). A collision object (CMO: Mesh3D,
cuboid, cylinder or plane) is added to the kinematics description in the
kinObjects list parameter, taking the currently valid coordinate system into
account.
The location at which the CMO is placed in the kinematics chain is important
for the resulting machine and monitoring model.
After the SpindleHead CMO, the Z, X, and Y machine axes and then the
machine base (Base) are defined in the kinematics description. Thus the
spindle is moved during motions of the Z, X, and Y axes. In the example, the
SwivelingTable CMO is additionally inserted in the kinematics description.
The coordinate system shown is again valid.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2110
7.6.8 Configuration of the CMOs

Settings in the configuration editor MP number


Channels
Kinematics
CfgCMO
[Key name of the collision object]
primitives 119401
dontTest 119402
active 119403
property 119404
name 119405
CfgCMOCylinder
[Key name of the cylinder]
dir 119101
bottomCenter 119102
radius 119103
height 119104
name 119105
CfgCMOCuboid
[Key name of the cuboid]
vertex 119201
edgeLengths 119202
name 119203
CfgCMOPlane
[Key name of the plane]
axis 119301
value 119302
type 119303
name 119304
CfgCMOMesh3D
[Key name of the M3D object]
filename 124801
name 124802

As mentioned above, CMOs can be described using four geometric basic


objects, the so-called geometric primitives. These geometric primitives are
cylinders, cuboids, planes (obsolete) or Mesh3D objects (M3D file). They are
described using the CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane,
CfgCMOMesh3D configuration objects and transformations. These individual
geometric primitives can then be combined with each other in the CfgCMO
configuration object to describe complex collision bodies. These CfgCMO
objects are inserted as collision-monitored objects in the kinematics chain.
It is possible to use uniform kinematics on machines with and without
software option #40. CMOs are ignored on machines without software option
#40.

Attention

This means that an error message does not appear if DCM is not available.
Even if there are CMOs in the kinematics description, there is no protection
against collisions without software option #40 (DCM).

2111 HEIDENHAIN Technical Manual TNC 640


Proceed as follows to define CMOs:
 Describe all required basic objects or geometric primitives using the
CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane and CfgCMOMesh3D
configuration objects.
 Create a key name for the desired geometric primitive under
CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane and CfgCMOMesh3D. Key names
must be unique.
 Open the CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane or CfgCMOMesh3D
configuration object and create a key name for the desired geometric
primitive. Key names must be unique.
 Describe the geometric primitive with the corresponding parameters. In the
example below, the two geometric primitives RoundTable1 and
STable_Body1.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2112
"Assembling" CMOs can then be assembled from these four geometric primitives. The
CMOs geometric primitives can be combined in the primitives list parameter of the
CfgCMO configuration object. These geometric primitives within a CMO are not
tested among themselves for collisions.
In the primitives list parameter you can also enter references to coordinate
transformations CfgKinSimpleTrans to position the local coordinate system in
which the primitives are defined. The coordinate transformations in a CMO
description are only effective within the respective CMO description,
however. There they are effective for all subsequent objects, however.
This makes it possible in just one object-description file
 to describe rotated and unrotated objects,
 to describe multiple objects after a rotation that all have the same position
then, and
 to shift the datum and then perform a rotation.
Transformations in the CMO descriptions must always occur before the
definition of objects. These transformations only serve to describe the position
and orientation of the CMOs, and do not need to be canceled in order to
describe the further kinematics of the machine. If there is a transformation at
the end of a definition table it is without effect.

Note

The coordinate transformations within a CMO (configuration object) are


only effective within the CMO description.

Creating a new  Open the CfgCMO configuration object. Insert a new CMO and specify a key
CMO name for the CMO.
 Open the CMO. Via the selection menu of the primitives list parameter,
select the geometric primitives that are to describe the CMO. If necessary
you can also enter references to CfgKinSimpleTrans.
With the dontTest list parameter, you can define a list of CMOs or geometric
primitives that do not have to be monitored for collisions with the current
CMO, see page 2117. This may be the case if the CMOs cannot collide with
each other, for example due to the design. You can enter whole CMOs or
individual collision objects within another CMO in the list:
 Open the dontTest list parameter of the CMO for which you want to define
the collision exclusions. Add the CMOs or collision objects to the list of
objects that cannot collide with the selected CMO.

2113 HEIDENHAIN Technical Manual TNC 640


Machine MP_dir
parameters Direction of the cylinder axis
Available from NCK software version: 597110-06.
Format: Selection menu
Options: X, Y, Z
With this entry you specify the positive direction of the cylinder
axis (geometric primitive) in the local coordinate system, which
is given by the previous coordinate transformations.
Default: X
Access: LEVEL3
Reaction: RUN

MP_axis
Alignment of the limit plane
Available from NCK software version: 597110-06.
Format: Selection menu
Options: X, Y, Z
The half-space is limited by a plane. The plane is perpendicular
to the coordinate axis of the local coordinate system as given in
axis. You define the alignment of the local coordinate system
through previous transformations in the CMO description (or in
the kinematic chain).
Default: X
Access: LEVEL3
Reaction: RUN

MP_value
Position of the limit plane
Available from NCK software version: 597110-06.
Format: Number
Input: –999 999 999 to 999 999 999 [mm] with max. 9 decimal places
Here you enter the intersection of the limit plane with the
coordinate axis from the MP_axis attribute.
Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

MP_type
Alignment of the half space
Available from NCK software version: 597110-06.
Format: Selection menu
Options: LimitMin
The control reports a collision if other CMOs encroach on the
half-space in negative direction of the coordinate axis given in
axis.
LimitMax
The control reports a collision if other CMOs encroach on the
half-space in positive direction of the coordinate axis given in
axis.
Default: LimitMin
Access: LEVEL3
Reaction: RUN

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2114
MP_radius
Diameter of the object (cylinder)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 999 999 999 [mm] with max. 9 decimal places
This entry specifies the diameter of the object ("cylinder"
geometric primitive)
Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

MP_height
Height of the object (cylinder)
Available from NCK software version: 597110-06.
Format: Number
Input: 0 to 999 999 999 [mm] with max. 9 decimal places
This entry specifies the height of the body ("cylinder" form
primitive) in the axis direction specified in MP_dir.

Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

MP_edgeLengths
Edge lengths of the cuboid
Format: Array [0 to 2]
Input: Numerical value
–999 999 999 to 999 999 999 [mm] with max. 9 decimal places
With this entry you define the edge lengths of the cuboid along
the positive coordinate axes. You can also enter negative values
to describe edge lengths in negative direction.
Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

MP_bottomCenter
Shifts the center point of the cylinder floor surface in the local
coordinate system
Available from NCK software version: 597110-06.
Format: Array [0 to 2]
Input: Numerical value
–999 999 999 to 999 999 999 [mm] with max. 9 decimal places
With this entry you describe the alignment of the center point
of the cylinder floor surface in the local coordinate system. You
define the alignment of the local coordinate system through
previous coordinate transformations in the CMO description (or
in the kinematic chain).
Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

2115 HEIDENHAIN Technical Manual TNC 640


MP_vertex
Shifts a corner of the cuboid in the local coordinate system
Available from NCK software version: 597110-06.
Format: Number
Input: –999 999 999 to 999 999 999 [mm] with max. 9 decimal places
With this entry you describe the alignment of the cuboid in the
local coordinate system. You define the alignment of the local
coordinate system through previous coordinate transformations
in the CMO description (or in the kinematic chain).
Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

MP_name
Name displayed in the event of collision
Available from NCK software version: 597110-06.
Format: String
Input: Name of the cylinder, cuboid, half space or Mesh3D object
(max. 32 characters)
With this entry you define a descriptive name for the object. If
the object collides, this name is displayed in an error message
on the screen. Multiple objects can have the same name.
Default: –, Optional parameter
Access: LEVEL3
Reaction: RUN

MP_filename
File path to an M3D file
Available from NCK software version: 597110-09.
Format: String
Input: Path (260 characters max), e.g. %OEM%/config/models/
sample.m3d
You define the placement of the object through the previous
coordinate transformations in the CMO description (or in the
kinematic chain).
Default: –
Access: LEVEL3
Reaction: RUN

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2116
Collision exclusions Definition of collision exclusions:
In order to avoid unnecessary calculations, collisions which cannot occur due
to the physical realities of the machine can be excluded from each other in the
kinematics description by using the dontTest list parameter of the CfgCMO
configuration objects. This is useful since it saves processing time and avoids
unnecessary reductions in the feed rate in the manual operating modes. The
dontTest list parameter may contain geometric primitives or CfgCMO
configuration objects.
By tendency, it is advantageous to model objects using CMOs and then add
complete CMOs to the exclusion lists rather than the individual parts. This
makes the exclusion list easier to read and reduces the probability that the list
contains wrong entries.
Use the MP_active machine parameter to specify in general whether a CMO
should be considered during collision monitoring.

Attention

Danger of collision:
Excluded objects will no longer be monitored for collision.

2117 HEIDENHAIN Technical Manual TNC 640


Special case: Tool with the predefined CMO name "Tool"
In some cases, it can be necessary to exclude the tool from monitoring for
collision with certain machine components (e.g. tool and tool carrier relative to
portal for B heads). For mechanical reasons a collision between these
components is impossible, but the tool is also permanently monitored for
collision with all objects. For example, if the distance between the tool and a
machine component with which it cannot collide becomes too small, this
could already lead to a reduced feed rate. In this case the tool can be excluded
according to the "Exclusion table" method described above by using the "Tool"
name to remove this possibility of collision from monitoring.
The name "Tool" and names starting with "_tool" are internally reserved for the
TNC. Please take care not to use these names for your own CMOs.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2118
Machine MP_primitives
parameters List of references to objects of this CMO
Available from NCK software version: 597110-06.
Format: Selection menu
Options: Geometric primitives: CfgCMOCylinder, CfgCMOCuboid,
CfgCMOPlane, CfgCMOMesh3D and transformations
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_dontTest
List of CMOs not to be tested
Available from NCK software version: 597110-06.
Format: Selection menu
Options: Collision objects: CfgCMO or geometric primitives:
CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane and CfgCMOMesh3D
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_active
Include objects (CMOs) in the collision calculation
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TRUE
CMO is included in the collision calculation.
FALSE
CMO is not included in the collision calculation.
Default: TRUE
Access: LEVEL3
Reaction: RUN

MP_name
Name displayed in the event of collision
Available from NCK software version: 597110-06.
Format: String
Input: Max. 32 characters
Name of the CMO. If this CMO collides with another collision
object, this text will be displayed in an error message. Multiple
collision objects can have the same name.
Default: –, optional parameter
Access: LEVEL3
Reaction: RUN

2119 HEIDENHAIN Technical Manual TNC 640


7.6.9 DCM – Additional settings / information / PLC modules

Hiding the TT when During tool measurement with a TT, the CMO protecting the TT can
measuring tools automatically be excluded from collision monitoring.
A CMO that has been identified correspondingly will then automatically be
excluded during the execution of touch probe cycles TCH PROBE 30/31/32/33
or 480/481/482/483. The CMO of the touch probe is identified by the entry
TT_Probe in the MP_property machine parameter.
The CMO identified in this way will be excluded from collision monitoring
before the beginning of the touch probe cycle. At the end of the cycle or when
the cycle is canceled, the CMO will automatically be included in collision
monitoring again.
Another possibility for excluding an identified CMO from collision monitoring
is to use the function FN 17: SYSWRITE ID 990. The function
FN 17: SYSWRITE ID 990 NR6 = 1 causes switching to input X13. The CMO is
then excluded from collision monitoring for as long as X13 is active.
The following must be kept in mind:
 You can use TT_Probe for only one CMO.
 If a touch probe cycle is canceled with the EXTERNAL STOP soft key, the
tool (TT) should be retracted in the Manual Operation mode before pressing
the INTERNAL STOP soft key. The INTERNAL STOP soft key results in the
CMO being included in collision monitoring again, and the tool would then
be immobilized by collision monitoring. DCM would trigger an error
message reporting a distance of < 2 mm. The tool (TT) can then not be
retracted until collision monitoring has been switched off.
 After retraction from the measuring point, the tool (TT) must be located
sufficiently far from the area for which protection is active again. After
retraction, the distance must be > 5 mm.
During the execution of a relevant touch probe cycle, the TS touch probes are
also automatically hidden from collision monitoring and are then activated
again. For TS touch probes this is done without special identification of the
CMO.

MP_property
Special settings for CMOs
Available from NCK software version: 597110-06.
Format: Selection menu
Options: TT_Probe
Identifies the CMO as TT tool touch probe. This CMO is
deactivated for collision monitoring during a TT touch probe
cycle. Only one CMO in the kinematics description can be
marked TT_Probe.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2120
DCM and DCM also monitors axis motions that are controlled through the handwheel.
handwheel motions During program run, however, the handwheel is not active.
Handwheel controlled motions with active DCM can only be executed and
monitored when program run is stopped with External Stop or with the
Single block operating mode. If an offset is defined for handwheel
superimposition (via M118 or in the Global Program Settings) after the
External Stop, this offset is considered by collision monitoring when the NC
program run is continued. This behavior also applies to the virtual tool axis VT.

DCM with counter The changes in position of manually-operated counter axes in the Manual
axes Operation and El. Handwheel operating modes are detected by the collision
monitoring. However, counter axes and controlled axes may not be moved
simultaneously if collision monitoring is to be effective.
In the Positioning with MDI, Program Run – Single Block and Program Run
– Full Sequence machining modes, the counter axes may only be moved at
standstill, M strobe, etc., in order to ensure protection by DCM against
collisions.
The NC axes can then also be moved in the machining modes while being
protected against collision.

Attention

If you position manually-operated counter axes during execution of an NC


program or during an individual NC block (during calculation of path
interpolations), the new positions of the counter axes cannot be detected
or considered by DCM. There is no protection against collisions.

2121 HEIDENHAIN Technical Manual TNC 640


PLC modules Module 9063 Deactivate and activate collision monitoring
With PLC module 9063, you can influence the status of DCM collision
monitoring in the program run modes of operation.
Constraints:
 During program run, collision monitoring can only be deactivated during an
NC strobe.
 PLC module 9064 enables you to interrogate the status of collision
monitoring for the current operating mode.
 It may occur that more than one PLC cycle is executed between activation/
deactivation and feedback from the PLC Module 9064.
Call:
PS B/W/D/K <Mode>
0: Collision monitoring active/inactive during program run
PS B/W/D/K <Action>
0: Deactivate collision monitoring
1: Activate collision monitoring
CM 9063
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> or <Action>
ErrorCode parameter
8 Call was during manual operation mode or
during reference run
21 Call was during program run without strobe
signal
45 Collision monitoring has already been
programmed
58 No NC channel or multi-channel system
configured

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2122
Module 9064 Status information for collision monitoring
With Module 9064 you interrogate whether collision monitoring is active in the
currently selected operating mode. The module was expanded by Mode 1.
Constraints:
 Collision monitoring is not active in the Reference Run mode.
 Not possible with multi-channel systems
Call:
PS B/W/D/K <Mode>
0: Configured status (depends on module 9063 and soft
key)
1: Status in the current mode of operation (0 in Reference
Run mode)
CM 9064
PL B/W/D <Status information>
0: Monitoring not active
1: Monitoring active
Error code:

Marker Value Meaning


NN_GenApiModule 0 Status ascertained
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode> parameter
ErrorCode 58 No NC channel or multi-channel system
configured

2123 HEIDENHAIN Technical Manual TNC 640


7.6.10 Using KinematicsDesign on the control
The KinematicsDesign PC tool is also available on the TNC 640. The
The KinematicsDesign version on the TNC 640 supports you in optimizing,
adjusting and changing the kinematics model of your machine. The working
space and the collision objects of the active kinematics can be displayed and
edited. The range of features of the version installed on the control is
restricted to the features required by the control.
Thanks to tool tips that appear when you mouse over the options, the
software is self-explaining.

Note

HEIDENHAIN recommends to define kinematics models and, in particular,


collision objects, with the PC version of KinematicsDesign.
KinematicsDesign is available for download to registered users on the
Internet in the HEIDENHAIN FileBase.
The KinematicsDesign version on the TNC 640 supports you in optimizing,
adjusting and changing the kinematics model of your machine.
M3D Converter is not available on the control, see page 2101.

Starting To start the KinematicsDesign tool, press the MOD key. Enter the code
KinematicsDesign number 95148 and open KinematicsDesign in the MOD dialog by pressing
Advanced Setup and the KINEMATICS soft key.
To switch between KinematicsDesign and the regular screen of the control,
press the screen switch-over key.

Attention

 When you use the KinematicsDesign version on your control, you edit
and change the active kinematics of your machine. The changes made
immediately become effective in the active kinematics.
 The KinematicsDesign software is not a replacement for testing collision
monitoring on the machine.

Note

KinematicsDesign – further information


For further information on how to use and configure
KinematicsDesign, please see the online help of this PC tool.

January 2015 7.6 DCM - Dynamic Collision Monitoring (Option #40) 2124
7.7 Pallet management

Configuring a pallet The OEM can expand the pallet table with his own table columns:
table
 If needed, define additional columns through System/TableSettings in the
configuration editor, See "Tables" on page 2429.
 Define the prototype in the directory PLC:\PROTO with the file name
extension .P.
 Configure the prototype under CfgTablePrototype.

Field names The following types of fields are used in the pallet table:
 Mandatory fields: Values must be entered.
 Optional fields: Values can be entered. They have a fixed, predefined
meaning for the NC.

Name Meaning
TYPE Mandatory field:
Definition of the entry
 PAL = Pallet
 PGM = NC program
 FIX = Setup
NAME Mandatory field:
Name of the pallet or the NC program.
NC program names without paths are searched for in the
directory with the pallet file.
Permit only decimal numbers, so that you can interrogate the
pallet's name in the change macro with FN18: SYSREAD.
DATUM Optional field:
Name of the datum table.
Datum tables without paths are searched for in the directory with
the pallet tables.
PRESET Optional field:
Definition of the preset by entering a number from the preset
table
LOCATION Optional field:
Location of pallet.
If the LOCATION column is used, an NC program can be run only
if this column contains the entry MA (= pallet for the machine) for
this pallet.
LOCK Optional field:
Lines containing any entry in this column will not be run.
If more than one program or pallet is to be run, the next
permitted line is used. Unlocked lines in a locked pallet are also
skipped.
The TNC 640 updates the tool usage file automatically once you
have finished editing the entry.

2125 HEIDENHAIN Technical Manual TNC 640


Executing a pallet
table
Settings in the configuration editor MP
number
PalletSettings
CfgPalletBehaviour
stopAt 202101
editTableWhileRun 202102
System
Paths
CfgSystemCycle 102600
OEM_PALPG_EPILOG
OEM_PALPG_FIX_CHNG
OEM_PALPG_PAL_CHNG
OEM_PALPG_PROLOG
CfgTablePath
PALLET
[Path of the current pallet table]

The pallet table is selected and started with PGM MGT like a normal part
program in the Program Run, Single Block and Program Run, Full Sequence
operating modes.
The execution of pallet tables results in a call of the pallet control cycle. You
will find a flow chart of this system cycle under "Pallet control cycle" on
page 2571. You can start a macro, depending on the type of the current entry.
 Under Paths/CfgSystemCycle, define the entry points for NC macros in
the context of pallet machining:
 Pallet entry of the PAL type:
Call the OEM_PALPG_PAL_CHN macro, if the path is configured
 Fixture entry of the FIX type:Call the
OEM_PALPG_FIX_CHNG macro, if the path is configured
 Program entry of the PGM type:Call the
OEM_PALPG_PROLOG macro, if the path is configured
 After execution of the NC program (with type PGM):Call the
OEM_PALPG_EPILOG macro, if the path is configured
 With MP_stopAt, configure whether the processing of the pallet table
should be stopped
 Determine with MP_editTableWhileRun whether the current pallet table
should be editable with the EDIT PALLET soft key in the Program Run,
Single Block and Program Run, Full Sequence operating modes.
Through the PLC you can graphically display the tool changer status either in
the small PLC window or the Python masks and enable the user to control the
tool changer through PLC soft keys.
With Module 9035 you can interrogate the active line of the pallet file, and with
Modules 9090 or 9281 you select a certain line in the pallet table. Unlike
Module 9090, a datum shift or datum setting can be executed immediately
with Module 9281.

January 2015 7.7 Pallet management 2126


The path of the current pallet table is automatically entered under
CfgTablePath with the key name PALLET. In this way you can always access
the currently open pallet table through SQL statements with the key PALLET.
Example of a pallet table:

NR TYPE NAME DATUM PRESET


0 PAL 120 2
1 FIX 121 4
2 PGM PART1.H
3 PGM PART2.H
4 PAL 130 NULL1.D
5 PGM PART3.H
6 PGM PART3B.H 7
[END]

Line 0:
The pallet with the name 120 is defined. The NC macro for changing the pallet
is activated. The current datum is datum no. 2 from the preset table.
Line 1:
A fixture with the name 121 is defined on the pallet with the name 120. The
current datum no. 4 from the preset table is activated.
Line 2:
The fixture holds an unmachined part to be machined with the NC program
PART1.H.
Line 3:
The fixture holds a second unmachined part to be machined with the NC
program PART2.H.
Line 4:
The pallet with the name 130 is defined. The NC macro for changing the pallet
is activated. The datum table NULL1.D is active.
Lines 5 and 6:
The pallet holds two unmachined parts which are to be machined together in
one setup with the NC programs PART3.H and PART3B.H. The current datum is
datum no. 7 from the preset table.

2127 HEIDENHAIN Technical Manual TNC 640


Machine MP_stopAt
parameters Specifies when the pallet processing stops
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Nowhere
Pallet processing is never stopped
EveryRecord
The pallet processing is stopped after every line
EveryPallet
The pallet processing is stopped after every pallet
EndOfTable
The pallet processing is stopped at the end of the pallet table
Default: EndOfTable
Access: LEVEL1
Reaction: RUN

MP_editTableWhileRun
Specifies whether the current pallet table is editable during
program run
Available from NCK software version: 597110-01.
Format: Selection menu
Options: TRUE
The current pallet table is editable in the Program Run operating
modes
FALSE
The current pallet table cannot be edited
Default: TRUE
Access: LEVEL1
Reaction: RUN

PLC modules Module 9090 Select a line in the pallet table


With this module, you set the cursor on a particular line of the pallet table in
the selected Program Run, Full Sequence operating mode. If the TNC 640 is
in another mode, the selection will be made when the control switches to the
Program Run, Single Block or Program Run, Full Sequence operating mode.
The selection is possible only as long as no pallet file has been started.
Call only in a submit job or spawn job.
Call:
PS B/W/D/K <Line number in the pallet table>
CM 9090
PL B/W/D <Error code>
0: No error, line was selected
1: Module was not called in a spawn or submit job
2: Call during a running NC program
3: No pallet table selected in Full Sequence
4: Line does not exist

January 2015 7.7 Pallet management 2128


Module 9281 Select a line in the pallet table
With Module 9281, you set the cursor on a particular line of the pallet table in
the selected Program Run, Full Sequence or Program Run, Single
Blockoperating mode. Datum shift and datum setting can be run immediately.
If the TNC 640 is in another mode, the selection will be made when the control
switches to the Program Run, Single Block or Program Run, Full Sequence
operating mode.
Constraints:
 Call only from within a submit/spawn job
 This job cannot be canceled with a CAN command while the module is being
processed in a submit/spawn job.
 Selection can only be made if a pallet table (*.P) has been selected as the
main program in the Single Block or Full Sequence operating modes.
 Selection is not possible with a running NC program.
 If an NC program is interrupted (during Single Block, for example) and a
pallet line is then selected by the PLC, the program nesting is lost (as when
the main program is reselected by the file manager).
Call:
PS B/W/D/K <Line number in the pallet table>
PS B/W/D/K <Mode>
Bit 0 – Shift the datum/set the datum
0: Do not run
1: Run immediately
Bit 1 – Shift the datum/set the datum
0: Do not run if the line is disabled by an entry in the
LOCK column
1: Run even if the line is disabled by an entry in the LOCK
column
CM 9281
PL B/W/D <Error code>
0: No error, line was selected
1: Call was not in a submit/spawn job
2: Call during a running NC program
3: No pallet table selected in Full Sequence
4: Line does not exist
5: Error during datum setting, in the datum table or pallet
table

2129 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (line was selected)
Error 1 Error code see
NN_GenApiModuleErrorCode and
<error code> above
NN_GenApiModule 1 Line does not exist in pallet file
ErrorCode 20 Call not in a submit/spawn job
21 Call during a running NC program
36 Called in smarT.NC or error during datum
setting, in the datum table or pallet table
56 No pallet table selected in Full Sequence

January 2015 7.7 Pallet management 2130


NC macro for  Under Paths/CfgSystemCycle and key name OEM_PALPG_PAL_CHNG,
changing pallets define the complete path name of the NC macro that is called during
and fixtures execution of a pallet entry (PAL).
 Under Paths/CfgSystemCycle and key name OEM_PALPG_FIX_CHNG,
define the complete path name of the NC macro that is called during
execution of a fixture entry (FIX).
In these macros you can request the current line or pallet name with FN18:
SYSREAD Qxxx = ID510 NR1 or NR2, respectively.
This NC macro also can be started from the PLC with Module 9280.
How to synchronize the current machine status and the look-ahead calculation
in an NC macro call, See "NC macros" on page 2564.

PLC module Module 9280 Start the NC macro (Run pallet entry)
Pallet change macros can be started with Module 9280.
Constraints:
 The NC macro must be defined under Paths/CfgSystemCycle with the key
name OEM_PALPG_PAL_CHNG.
 It can only be activated if the control is in the Program Run, Single Block or
Program Run, Full Sequence operating mode, a pallet table is selected, and
no macro or NC program or NC macro is running
(NN_ChnControlInOperation = 0).
 Not possible with multi-channel systems
 The module can only be called in a submit or spawn job.
Call:
PS B/W/D/K <Pallet number>
PS B/W/D/K <Line number>
CM 9280

2131 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (macro was started)
Error 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 7 The file entered under Paths/
ErrorCode CfgSystemCycle for the key name
OEM_PALPG_PAL_CHNG does not exist
8 Control is not in the Program Run, Single
Block or Program Run, Full Sequence
operating mode
20 Call not in a submit/spawn job
28 An NC program or NC macro is running
29 Selected file is invalid or does not exist
30 Key name OEM_PALPG_PAL_CHNG
under Paths/CfgSystemCycle does not
exist
36 Config object CfgSystemCycle does not
exist

NC macro at the  Under Paths/CfgSystemCycle, and the key name OEM_PALPG_PROLOG,


start of an NC define the complete path and name of the NC macro that is to be called at
program the start of an NC program that was started from the pallet table.

NC macro at the  Under Paths/CfgSystemCycle, and the key name OEM_PALPG_EPILOG,


end of anNC define the complete path and name of the NC macro that is to be called at
program the end of an NC program that was started from the pallet table.
How to synchronize the current machine status and the look-ahead calculation
in an NC macro call, See "NC macros" on page 2564.

January 2015 7.7 Pallet management 2132


7.8 Electronic Handwheel
The control supports:
 Handwheels that are connected to the serial handwheel input X23 of the
MC or, for controls, with HSCI to X23 of the machine operating panel.
 Handwheels with position encoders, which are connected to the position
encoder inputs of the MC.
You can connect the following handwheels to the handwheel input (X23) of
your control:
 One panel-mounted HR 130 or HR 330 handwheel, or
 One HR 410 portable handwheel
 One HR 520/HR 420 portable handwheel with display, or
 One HR 550 portable wireless handwheel with display
 Up to three HR 150 handwheels via HRA 110 handwheel adapter
For information about mounting and electrical connection, See "Handwheel
input" on page 460.
As an alternative, or additionally, you can connect the HR 180 handwheel to
the position encoder inputs of the MC.
 Define the type of handwheel, or the connection of the handwheel to the
control, in MP_type. If the handwheel is connected to a position encoder
input, the handwheel connection is described in the configuration object
CfgAxisHandwheel.
 If an HRA 110 is used, the axis-specific description of the counting direction
and the traverse per handwheel revolution is in the CfgAxisHandwheel
configuration object.

7.8.1 Serial handwheel

Settings in the configuration editor MP number


System
CfgHandwheel
type 100601
initValues 100602
incrPerRevol 100603
rasterPerRevol 100604
countDir 100605
sensitivity 100606
speedFactor 100607
feedFactor 100608
selectAxes 100610
plcInputs 100611
plcPlusMinus 100612
plcStartStop 100613
plcTeachIn 100614
plcCtrlKey 100615
lockPlcSoftkeys 100616
maxDelayRaster 100617
allowCharger 100618

2133 HEIDENHAIN Technical Manual TNC 640


Type of handwheel MP_type
Handwheel
Available from NCK software version: 597110-01.
Format: Selection menu
Options: NONE
No handwheel connected (value 0)
HRA110
HRA 110 handwheel adapter connected to X23 (value 1)
HR410
HR 410 connected to X23 (value 2)
HR332
HR 332 connected to X23 (value 3)
HR330
HR 330 connected to X23 (value 4)
HR130
HR 130 connected to X23 (value 5)
HR420
HR 420 connected to X23 (value 6)
HR520
HR 520 connected to X23 (value 7)
HR550
HR 550 connected to X23 (value 8)
Default: NONE
Access: LEVEL3
Reaction: RUN

Handwheel Enter the initialization values for the serial handwheels HR 410 and HRA 110
initialization with HR 150 in MP_initValues. During startup, the control transfers the
initialization values to the handwheel.
Information about the initialization values:
 HR 410: See "HR 410 portable handwheel" on page 2151
 HRA 110 with HR 150: See "HR 150 panel-mounted handwheels with HRA
110 handwheel adapter" on page 2167
 HR 130, HR 420, HR 520 and HR 550: No initialization values required for
these models

MP_initValues
Initialization values for handwheel
Available from NCK software version: 597110-01.
Format: Array [0 to 7]
Input: 0 to 255
Default: 0
Access: LEVEL3
Reaction: RUN

January 2015 7.8 Electronic Handwheel 2134


Evaluation of Define the evaluation of the handwheel pulses in the following parameters:
handwheel pulses
 MP_incrPerRevol: Number of increments per handwheel revolution
 MP_rasterPerRevol: Detent steps per handwheel revolution, which must
be configured for a handwheel with detent to ensure proper functioning. If
MP_rasterPerRevol is 0, handwheel detent is not supported by the
software, and therefore incorrect positioning movements might occur.
HEIDENHAIN handwheels typically feature 100 detent steps per revolution.
 MP_countDir: Direction for handwheel input

MP_incrPerRevol
Increments per handwheel revolution
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to max. value
0: Standard value for HEIDENHAIN handwheel (20 000
increments)
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_rasterPerRevol
Detent steps per handwheel revolution
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to max. value
0: Handwheel without detent
100: Standard value for HEIDENHAIN handwheel with detent
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

MP_countDir
Counting direction for handwheel
Available from NCK software version: 597110-01.
Format: Selection menu
Options: positive
Positive counting direction
negative
Negative counting direction
Default: positive
Access: LEVEL3
Reaction: RUN

2135 HEIDENHAIN Technical Manual TNC 640


Threshold Shock or vibrations can cause a slight motion at the handwheel and produce
sensitivity an unintentional axis movement.
 In MP_sensitivity, enter a threshold sensitivity, in order to avoid
unintentional traverse motion.

MP_sensitivity
Sensitivity for electronic handwheel
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 10 000 [pulses]
Default: 10 [pulses]
Access: LEVEL3
Reaction: RUN

Handwheel with For handwheels with manual axis-direction keys (e.g. HR 410, HR 520,
manual axis- HR 550), you define three feed rates for three velocity levels in
direction keys MP_feedFactor. These entries refer to the feed rate entered in
MP_manualFeed (CfgFeedLimits). In the parameter MP_speedFactor you
define three transmission ratios for the distance traversed per handwheel
revolution configured in MP_distPerRevol.

MP_speedFactor
Handwheel transmission ratio
Available from NCK software version: 597110-02.
Format: Array [0 to 2]
Input: [0] = First transmission ratio in [%]
[2] = Second transmission ratio in [%]
[3] = Third transmission ratio in [%]
Distance per handwheel revolution:
Transmission ratio · CfgAxisHandwheel/distPerRevol
Default: [0] = 1
[1] = 10
[2] = 100
Access: LEVEL3
Reaction: RUN

MP_feedFactor
Manual feed rates in the Electronic Handwheel mode
Available from NCK software version: 597110-01.
Format: Array [0 to 2]
Input: 0 to 100 [%]
[0] = First feed rate in [%]
[1] = Second feed rate in [%]
[2] = Third feed rate in [%]
Default: 1, 10 and 100 [%]
Access: LEVEL3
Reaction: RUN

Note

MP_feedFactor is only valid in the El. Handwheel operating mode, but then
for all manual axis-direction keys including the manual axis-direction keys of
the operating panel.

January 2015 7.8 Electronic Handwheel 2136


In MP_initValues you define whether a short-circuit test is to be performed
on the permissive buttons. If cross-circuit-proof evaluation of the permissive
buttons is used, the PLC input of the inverted signal in channel B (normally
closed contact instead of normally open contact) must also be configured in
MP_inpNoInverseB.

MP_initValues
[3]: Cross-circuit-proof handwheel
(compare to iTNC 530: MP7645.3)
Available from NCK software version: 597110-06.
Format: Array
Input: [3] = 0: Channel A, normally open contact; channel B, normally
open contact (not cross-circuit-proof)
[3] = 1: Channel A, normally open contact; channel B, normally
closed contact (cross-circuit-proof)
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

Use MP_selectAxes to specify which axes are to be controlled with the


handwheel configured under MP_type. If, with a handwheel with axis keys
(e.g. HR 410, HR 520, HR 550), you evaluate the keys through the NC, then
use MP_selectAxes to assign an axis key to an axis.

Note

MP_selectAxes only works for handwheels with axis keys (e.g. HR 410,
HR 520, HR 550) and the HR 150 panel-mounted handwheels (with the
HRA 110 handwheel adapter). The parameter has no function for panel-
mounted handwheels of the model HR 130—use the PLC Module 9036 for
the axis assignment.

2137 HEIDENHAIN Technical Manual TNC 640


MP_selectAxes
Selection of axes for the handwheel
Available from NCK software version: 597110-05.
Format: Array
Input: Selection of axes that can be moved with the handwheel.
For portable handwheels with axis keys, e.g. HR 410,
HR 520, HR 550:
(with evaluation of the keys by NC)
Make a list entry (e.g. X, Y, Z, A, C, S1, S2) for each axis key on
the handwheel. For handwheel superimpositioning it is also
possible to use the VT_Axis (virtual tool axis) for the active tool-
axis direction. The sequence of the list sets the assignment to
the axis keys X, Y, Z, IV, V on the handwheel.
With HR 150 panel-mounted handwheels through HRA 110:
Handwheel on X1 of HRA 110: 1st list entry
Handwheel on X2 of HRA 110: 2nd list entry
Handwheel on X3 of HRA 110: The initialization parameters and
the position of the selection switch set which list entry is to be
used.
With HR 130 panel-mounted handwheel:
Do not define parameter. The axes are assigned via the PLC
program (e.g. Module 9036).
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

Note

MP_selectAxes is evaluated while the control starts up. If the axis


assignment of the handwheel is changed via Module 9036 while the control
is running, the PLC program has priority and temporarily overwrites the
setting of MP_selectAxes.

January 2015 7.8 Electronic Handwheel 2138


Disable handwheel Disable handwheel pulses for specific axes with PP_AxHandwheelLocked.
Disable the handwheel pulses and axis-direction keys for all axes with
PP_GenHandwheelLocked. Movements that are started by the PLC program
are no longer influenced by the velocity level of the handwheel. It influences
only those movements that are started with the handwheel or the traverse
keys of the handwheel (if the handwheel is operated in NC mode).
If PP_GenHandwheelLocked is reset, axis-specific disabling of
PP_AxHandwheelLocked is effective again.

PLC operand / Description Type

PP_GenHandwheelLocked M
Disable handwheel motion
0: Enable handwheel motions for all axes
1: Disable handwheel motions for all axes
PP_AxHandwheelLocked M
Disable handwheel motion for specific axes
0: Enable handwheel motions for this axis
1: Disable handwheel motions for this axis

2139 HEIDENHAIN Technical Manual TNC 640


7.8.2 Handwheel at position encoder input

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHandwheel
input 400201
hsciCcIndex 400210
countDir 400202
distPerRevol 400203
incrPerRevol 400204
rasterPerRevol 400205
encoderSignal 400206
encoderFreq 400207
encoderResistor 400208
decToSoftLimit 400209

Handwheel
connection

Note

You define the handwheel parameters within the parameter set of an axis.
This permanently assigns the handwheel to this axis. You can assign the
handwheel to a different axis, for example, by changing to a different
parameter set.

Define the handwheel connection in the following parameters:


 MP_input: Assignment of handwheel to position encoder input
 MP_hsciCcIndex: Index of the CC controller unit to which the handwheel is
connected
 MP_EncoderSignal: 1 VPP or 11 µAPP signal
 MP_EncoderFreq: Maximum input frequency
 MP_EncoderResistor: Terminating resistor

January 2015 7.8 Electronic Handwheel 2140


MP_input
Connection of the encoder handwheel
Available from NCK software version: 597110-01.
Format: Selection menu
Options: none
No handwheel connected to position encoder input
X01 to X06
Handwheel connected to X01 to X06 of the MC
X35 to X38
Handwheel connected to X35 to X38 of the MC
X201 to X210
Handwheel connected to X201 to X210 of the CC
Default: none
Access: LEVEL3
Reaction: NOTHING

MP_hsciCcIndex
Index of the CC controller unit on the HSCI chain
Available from NCK software version: 597110-03.
Format: Number
Input: If more than one CC controller unit is used on the HSCI chain,
enter the CC index for the position encoder input to which the
handwheel is connected. Only the CCs are counted, other HSCI
devices such as
PLs are irrelevant.
If only one CC is used (TNC 620), enter the value 0.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_encoderSignal
Signal amplitude at position encoder input for handwheel
Available from NCK software version: 597110-01.
Format: Selection menu
Options: 1 Vpp
The input signal of the encoder is a 1 Vpp signal.
11 µA
The input signal of the encoder is an 11 µA signal.
This setting is not supported by the CC 61xx controller unit! If
the value is set nevertheless, the control outputs the
0400: 11 µA not supported error message.
TTL
The input signal of the encoder is a TTL signal.
Default: 1 Vpp, optional parameter
Access: LEVEL3
Reaction: NOTHING

2141 HEIDENHAIN Technical Manual TNC 640


MP_encoderFreq
Input frequency of position encoder input for handwheel
Available from NCK software version: 597110-01.
Format: Selection menu
Options: fast
Input frequency is 350 kHz
slow
Input frequency is 50 kHz
Default: fast, optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_encoderResistor
Terminating resistor of position-encoder input for handwheel
Available from NCK software version: 597110-01.
Format: Selection menu
Options: without
Without terminating resistor
120 Ohm
With terminating resistor
Default: without, optional parameter
Access: LEVEL3
Reaction: NOTHING

Evaluation of Define the evaluation of the handwheel pulses in the following parameters:
handwheel pulses
 MP_countDir: Counting direction of the handwheel for this axis. If a serial
handwheel or an HRA 110 is connected to X23, the counting direction can
be specified for each axis.
 MP_distPerRevol: Path of the axis per handwheel revolution. The value
applies to all connected handwheels, including serial handwheels at X23.
With this parameter a traverse per handwheel revolution for each axis can
be entered for HR 150 handwheels connected to HR 110. The value is
multiplied by the entry in MP_speedFactor (CfgHandwheel).
 MP_incrPerRevol: Number of increments per handwheel revolution
 MP_rasterPerRevol: Detent steps per handwheel revolution, which must
be configured for a handwheel with detent to ensure proper functioning. If
MP_rasterPerRevol is 0, handwheel detent is not supported by the
software, and therefore incorrect positioning movements might occur.
HEIDENHAIN handwheels typically feature 100 detent steps per revolution.
 MP_maxDelayRaster: Number of detent steps defined to limit the lag of
the axis. For handwheels with detent, a lag can arise if the handwheel is
turned faster than the axis can follow. With this parameter, the lag can be
limited to a maximum value. The actual lag can be calculated from the path
per handwheel revolution, the number of detent steps per revolution and
the selected limit

January 2015 7.8 Electronic Handwheel 2142


MP_countDir
Axis-dependent counting direction of the handwheel
Available from NCK software version: 597110-02.
Format: Selection menu
Options: The parameter applies both for the handwheel at the position
input and for the serial handwheel connected to X23.
positive
Counting direction is positive
negative
Counting direction is negative
Default: positive
Access: LEVEL3
Reaction: NOTHING

MP_distPerRevol
Axis traverse per handwheel revolution
Available from NCK software version: 597110-02.
Format: Number
Input: 0.000 000 001 to max. value in [mm] or [°] with max. 9 decimal
places
Applies for all connected handwheels (handwheel at position
input and at X23).
The value is multiplied by MP_speedFactor (CfgHandwheel).
Default: 1 [mm] or [°]
Access: LEVEL3
Reaction: NOTHING

MP_incrPerRevol
Increments per revolution of handwheel at encoder input
Available from NCK software version: 597110-01.
Format: Number
Input: 100 to 2 147 483 647 [incr.]
Default: 1024, optional parameter
Access: LEVEL3
Reaction: NOTHING

2143 HEIDENHAIN Technical Manual TNC 640


MP_rasterPerRevol
Detent steps per revolution of handwheel at encoder input
Available from NCK software version: 597110-01.
Format: Number
Input: Number of detent positions
0 to 2 147 483 647
0: Handwheel without detent
100: Standard value for HEIDENHAIN handwheel with detent
Default: 0, optional parameter
Access: LEVEL3
Reaction: NOTHING

MP_maxDelayRaster
Lag limit for electronic handwheel with detent
Available from NCK software version: 597110-09.
Format: Number
Input: Number of detent positions
1 to 100
Default: 100, optional parameter
Access: LEVEL3
Reaction: NOTHING

January 2015 7.8 Electronic Handwheel 2144


Handwheel The optional parameter MP_decToSoftLimit is used to specify a braking ramp
positioning up to for handwheel-positioning of the axis to the software limit switch. Limit the
software limit maximum axis speed with MP_decToSoftLimit such that no overshoot of the
switch axis occurs when the software limit switch is reached.
Proceed as follows to determine the value to be set for the
MP_decToSoftLimit parameter:
 Record the current speed of the axis v (N act) with the integrated
oscilloscope.
 During measurement with the oscilloscope, quickly move the axis to the
software limit switch with the axis handwheel.
The control uses the following formula for limiting the maximum possible
speed on reaching the software limit switch:

Vmax = 2 ⋅Distance
Abstand to
zusoftware limit switch
Software-Endschalter ⋅ MP_decToSoftLimit

 Experiment with various values for the parameter MP_decToSoftLimit and


compare the different oscilloscope results with each other.

MP_decToSoftLimit
Brake ramp for handwheel motions to the software limit switch
(MP_swLimitSwitchPos and MP_swLimitSwitchNeg)
Available from NCK software version: 597110-03.
Format: Number
Input: 0 to max. value in [m/s2] with up to 9 decimal places
For rotary axes, the brake ramp is specified in [1000°/s2].
0: Value from MP_maxAcceleration is used
Default: 0, optional parameter
Access: LEVEL3
Reaction: NOTHING

2145 HEIDENHAIN Technical Manual TNC 640


7.8.3 Traverse per handwheel revolution

Settings in the configuration editor MP number


System
CfgHandwheel
speedFactor 100607
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHandwheel
distPerRevol 400203

The distance covered by an axis per handwheel revolution depends on the


traverse per handwheel revolution and the handwheel transmission ratio.
 In MP_distPerRevol, define the distance traversed per handwheel
revolution for each axis moved by handwheel.
 In MP_speedFactor, define the handwheel transmission for three
transmission ratios.

MP_distPerRevol
Traverse per handwheel revolution
Available from NCK software version: 597 110-01.
Format: Number
Input: 0.000 000 001 to max. value [mm]
Default: 1 [mm]
Access: LEVEL3
Reaction: NOTHING

MP_speedFactor
Handwheel transmission ratio
Available from NCK software version: 597110-01.
Format: Array [0 to 2]
Input: 0 to 100 [%]
[0] = First ratio in [%]
[1] = Second ratio in [%]
[2] = Third ratio in [%]
Default: 1, 10 and 100 [%]
Access: LEVEL3
Reaction: RUN
The transmission ratio is set either at the control panel or directly on the
handwheel.

January 2015 7.8 Electronic Handwheel 2146


7.8.4 Assigning a handwheel to an axis
Module 9036 allows you to assign a handwheel connected to connection X23
to an axis (NC or PLC axis). The module also defines the transmission ratio.
Alternatively, for handwheels with axis keys, e.g. HR 410, HR 5xx, (with
evaluation of keys via the NC) or for three HR 150 via HRA 110, specify axis
assignment via MP_selectAxes, See "MP_selectAxes" on page 2138.
Use Module 9035 to find the axis to which the handwheel is assigned.
Module 9036 Write NC status information
The module modifies status information of the NC. The status information to
be modified is transferred via a function number.
 Select the handwheel axis function:
• The handwheel connected to connector X23 of the MC is assigned to
an axis.
• A change of the handwheel axis will not be visible immediately to a
Module 9035 query.
Module 9035 will have this new information at the earliest in the
subsequent PLC cycle.
 Set the handwheel transmission ratio:
• The handwheel transmission ratio is set.
• A change of the transmission ratio will not be visible immediately to a
Module 9035 query. Module 9035 will have this new information at the
earliest in the subsequent PLC cycle.
You can change the following status information:

Number of Function Value


the function
0 Handwheel subdivision X 0 to 10: Subdivision factors
1 Handwheel subdivision Y 0 to 10: Subdivision factors
2 Handwheel subdivision Z 0 to 10: Subdivision factors
3 Handwheel subdivision 0 to 10: Subdivision factors
IV(MP_axisKeyIV)
4 Handwheel subdivision 0 to 10: Subdivision factors
V(MP_axisKeyV)
5 Handwheel subdivision for 0 to 10: Subdivision factors
all axes
6 Select handwheel axis Index from CfgAxes/axisList
–1: Deselect all axes
998: Deselect all axes
999: Select virtual tool axis
7 Set the handwheel  0: Slow
transmission ratio  1: Normal
 2: Fast
8 Specify handwheel velocity 0.01 - 100 %
(as of SW as fraction of maximum
597110-08) value (in 0.01%)
9 Reserved –

2147 HEIDENHAIN Technical Manual TNC 640


Number of Function Value
the function
10 Limit value for jog increment 0.0001..50 mm or
–1: Cancel the limiting
–2: New jog increment =
minimum (programmed jog
increment / previous limit
value) and cancel limitation
11..19 Handwheel subdivision 0 to 10: Subdivision factors of
axes 1 to 9
22 Enable handwheel operation –
(as of SW for operating mode group 0..
597110-08)
23 Lock handwheel operation –
(as of SW for operating mode group 0..
597110-08)
24 Handwheel operation –
(as of SW conforms to machine
597110-08) operating mode for operating
mode group 0..
25 Lock configured encoder –
(as of SW handwheel of axis 0..
597110-08)
26 Release configured encoder –
(as of SW handwheel of axis 0..
597110-08)

Further constraints:
 Handwheel subdivision factors are limited to the smallest possible value in
accordance with the rapid traverse of the corresponding axis. This does not
result in an error message, however.
 Call codes 0 to 4 refer to the five axes assigned to the axis keys X/Y/Z/IV/V.
Call codes 11 to 19 refer to the internal axis numeration.
 The value for the jog increment limitation is transferred in [1/10000 mm].
 If a jog limitation is entered in the inch mode, the limitation value [degrees]
for rotary axes is calculated from the limitation value [mm] / 25.4.
Call:
PS B/W/D/K <Number of the status information>
PS B/W/D/K <Value to be written>
CM 9036
PL B/W/D <Error code>
0: Status written
1: Incorrect status code
2: Transferred value is out of range
3: Input disabled

January 2015 7.8 Electronic Handwheel 2148


Error code:

Marker Value Meaning


NN_GenApiModule 0 Status information was written
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Incorrect number of the status information
ErrorCode 3 Transferred value is outside the valid range
6 Entry disabled (e.g. through machine
configuration)

Module 9035 Read NC status information


The module reads status information of the NC. The status information to be
read is transferred via a function number.
The following handwheel information can be read:

Transferred number Return code


9 Handwheel axis Finds the axis which is assigned to the handwheel
connected to connection X23 of the MC.
–1: None or more than one
999: Virtual tool axis
>=0: Number of the machine axis
(Index from CfgAxes/axisList)
10 Handwheel axes bit-encoded Bit n: Machine axis <n> handwheel-controlled
Bit 31: Virtual tool axis handwheel-controlled
Handwheel subdivision factor
11 X key 0 to 10
12 Y key
13 Z key
14 IV key
15 V key
20 Speed for HR 410 0: Slow
1: Medium
3: Fast
–1: No global speed range set (undefined)
Handwheel subdivision factor
31 Axis 1 0 to 10
32 Axis 2
33 Axis 3
34 Axis 4
35 Axis 5
36 Axis 6
37 Axis 7
38 Axis 8
39 Axis 9

2149 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Number of the desired status information>
CM 9035
PL B/W/D <Status information>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information invalid
ErrorCode 20 Call not in a submit/spawn job
58 No NC channel or multi-channel system
configured

January 2015 7.8 Electronic Handwheel 2150


7.8.5 HR 410 portable handwheel
 In MP_type, set the type HR 410.
 In MP_initValues, define whether the keys on the handwheel are evaluated
by the NC or PLC.
 From NCK software version 597110-08 you can optionally specify via
MP_plcInputs for an HR 410 in NC mode whether the keys for axis
selection on the PLC inputs are be displayed or not.With the "IfActive"
setting, or if this is not defined, all keys are returned except the axis keys.
By setting the "Always" value, all keys including the axis keys are returned.

Initialization values for HR 410 handwheel:


 MP_initValues [0]:
• 0: Evaluation of the keys by NC, including LEDs, except for three
function keys
• 1: Evaluation of the keys by PLC
 Entry in MP_initValues [1 to 7]: Reserved

Keys evaluated by the NC: Keys evaluated by the PLC:


MP_initValues [0] = 0 MP_initValues [0] = 1

2151 HEIDENHAIN Technical Manual TNC 640


The function keys I173 to I175 are always evaluated by the PLC.
Assignment of axis keys:
 When the keys are evaluated by the NC, use MP_selectAxes to define the
assignment of axis keys (the key designations refer to the figure on the
previous page):
• X key: MP_selectAxes [0]
• Y key: MP_selectAxes [1]
• Z key: MP_selectAxes [2]
• IV key: MP_selectAxes [3]
• V key: MP_selectAxes [4]
 When the keys are evaluated by the PLC, the handwheel axis is selected
with Module 9036. This is the only case in which a PLC axis can be assigned
to the handwheel with Module 9036.
Use the three feed rates from MP_feedFactor to influence the feed rate when
you press an axis-direction key. You set the feed rate on the HR 410 (keys for
low feed rate, medium feed rate, and high feed rate).

MP_plcInputs
Evaluation of the handwheel keys
(compare with iTNC 530: MP7641, bit 5)
Available from NCK software version: 597110-08.
Format: Selection menu
Options: The parameter specifies the state in which the axis keys on the
handwheel are mapped to PLC inputs.
Handwheel HR 410 in NC mode:
IfActive or not defined
All keys except the axis keys are mapped to PLC inputs.
Always
All keys including axis keys are mapped to PLC inputs.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 7.8 Electronic Handwheel 2152


7.8.6 HR 420 portable handwheel

Settings  Set MP_type = HR 420


 In MP_rasterPerRevol define whether you are using an HR 420 with or
without detent.
In the following machine parameters you can define whether and how specific
keys on the handwheel are to be evaluated by the NC or PLC:
 By setting MP_plcInputs to "Always", the keys of the HR 420 or HR 5xx
(PLC operands I160 to I168) are also reported to the PLC if the HR is
inactive. In the PLC program this enables you to also evaluate the keys of
the HR 420 or HR 5xx (e.g. NC stop, spindle stop) if the handwheel is not
selected.
 Enter "TRUE" in MP_plcPlusMinus to have the PLC evaluate the direction
keys "+" and "–".
Select "FALSE" if the NC is to interpret pressing the "+" or "–" direction key
as manual traverse job for the selected axis. In this case the keys function
as if the PP_AxTraversePos and PP_AxTraverseNeg PLC operands had been
set for the selected axis.
 MP_plcStartStop enables you to specify whether the NC start and NC stop
keys of the handwheel should be evaluated in the PLC or via the NC. If you
select evaluation via the NC (MP_plcStartStop="FALSE"), the NC
automatically sets the PLC operand NN_ChnNcStartExtern when the NC
start key on the handwheel is pressed. If the NC stop key on the handwheel
is pressed, the NC sets the NN_ChnNcStopExtern PLC operand. The
spindle-start and spindle-stop functions must always be conducted by the
PLC.
 With MP_plcTeachIn or MP_plcCtrlKey, you specify whether evaluation of
the keys "Teach In" or "CTRL" should be automatically evaluated via the NC
("FALSE") or via the PLC.
 With the standard settings, the vertical soft keys (PLC soft keys) cannot be
used on the machine side while the HR 420 or HR 5xx handwheel is active.
Operating these soft-keys is only permitted if you enter the value "Never" in
MP_lockPlcSoftkeys.
Danger

In MP_lockPlcSoftkeys the value "Never" is only permitted to be entered


when no functions are located on the vertical soft-keys (PLC soft-keys) that
may cause danger to the operator (e.g. initiating an axis or spindle
movement).

2153 HEIDENHAIN Technical Manual TNC 640


All keys are evaluated by the NC. Certain keys are mapped to PLC operands.

F1 F2 F3 F4 F5

X Y Z IV V

↑ Handwheel ↓
active/
inactive

– Rapid +
traverse
(I162) (I160)
(I161)

Spindle
Start Teach In NC start
(I165) (I164) (I163)

Spindle
Stop Ctrl NC stop
(I168) (I167) (I166)

Activation and If the HR 420 is activated (via the handwheel key on the HR), a small pop-up
override window appears on the screen of the TNC and entries via the keys (keyboard
potentiometers and horizontal soft keys) are disabled. However, the override potentiometers
of the keyboard remain active.
The activation of the HR 420 can be disabled by PLC. If you set the marker
PP_GenHandwheelLocked, the message HR not allowed appears in the
handwheel's display. If the marker is set and the user presses the handwheel
activation key, the error message Wrong operating mode for handwheel
appears.
If the marker PP_GenHandwheelLocked is set when the handwheel is active,
the marker has no effect.
If the override potentiometers of the handwheel are to become active, then
this can only be done with the <Ctrl> + <handwheel symbol> key combination
on the HR 420.
If this key combination is pressed, then a selection menu appears on the
handwheel, in which the potentiometers to be activated must be selected.
 Display: Handwheel/ Operating panel
 Soft keys on the handwheel:
• Soft key F1: HW (potentiometers on the handwheel become active)
• Soft key F2: KBD (potentiometers on the operating panel become active)

January 2015 7.8 Electronic Handwheel 2154


If the override potentiometers on the handwheel are switched active, then the
message Handwheel override active also appears in the pop-up window on
the screen of the TNC, and the handwheel can only be deactivated if the
control of the override potentiometers is returned to the operating panel. If
you try to deactivate the HR 420 while it has control over the override, then a
window appears requesting that you first deactivate the handwheel’s control
over the override.
The PLC runtime system supports override potentiometers at up to four
machine operating panels or HR 420/HR 5xx handwheels. To use this, enter in
MP_device the key name of the operating panel or HR on which the override
potentiometer is located. For the potentiometers on the HR 420 and HR 5xx
display handwheels, you must enter individual key names under
CfgPlcOverrideDev, See "Override devices" on page 2170. For each override
potentiometer you can enter up to four different parameter sets with symbolic
key names Under CfgPlcOverride in MP_source . You can switch between
them with PLC Module 9132.
During start-up the NC always activates the first parameter set from
MP_source. If the operator switches to the overrides of the HR 420 or HR 5xx,
the NC always activates the second parameter set from MP_source.

Danger

Please note that the feed rate or spindle speed set becomes higher or
lower depending on the potentiometer setting.

MP_plcInputs
Evaluation of the handwheel keys
(compare to iTNC 530: MP7641, bit 5)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: The parameter specifies the state in which the axis keys on the
handwheel are mapped to PLC inputs.
Handwheels with display:
IfActive or not defined
The axis keys are mapped to PLC inputs only if the handwheel
has been switched on through the handwheel key.
Always
The axis keys are mapped to PLC inputs even if the handwheel
is inactive.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

2155 HEIDENHAIN Technical Manual TNC 640


MP_plcPlusMinus
"+" and "–" keys evaluated by the PLC
The parameter defines for handwheels with "+" and "–" keys
whether these are evaluated by the NC or PLC. The parameter
has no function for an HR 410 in the PLC mode.
(compare to iTNC 530: MP7641, bit 2)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: FALSE
The NC interprets pressing the "+" and "–" keys as manual
traverse jobs for the selected axis. The keys function as if the
markers PP_AxTraversePos or PP_AxTraverseNeg were set for
the selected axis.
TRUE
The "+" and "–" keys must be evaluated through the PLC.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

MP_plcStartStop
NC start and NC stop key evaluated through the PLC (only for
handwheels with display)
(compare to iTNC 530: MP7641, bit 3)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: FALSE
If the NC start key on the handwheel is pressed, the NC then
sets the NN_ChnNcStartExtern marker. If the NC stop key on
the handwheel is pressed, the NC then sets the
NN_ChnNcStopExtern marker.
TRUE
The NC start and NC stop keys of the handwheel must be
evaluated by the PLC.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

January 2015 7.8 Electronic Handwheel 2156


MP_plcTeachIn
TEACH IN key evaluated by the PLC (only for handwheels with
display)
(compare to iTNC 530: MP7641, bit 7)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: FALSE
The NC evaluates the TEACH IN key on the handwheel
automatically.
TRUE
The TEACH IN key on the handwheel must be evaluated by the
PLC.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

MP_plcCtrlKey
CTRL key evaluated by the PLC (only for handwheels with
display)
(compare to iTNC 530: MP7641, bit 8)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: FALSE
The NC evaluates the CTRL key on the handwheel
automatically.
TRUE
The CTRL key on the handwheel must be evaluated by the PLC.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

MP_lockPlcSoftkeys
Behavior of the vertical soft-key row when handwheel is active
(only for handwheels with display)
(compare to iTNC 530: MP7641, bit 9)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: IfActive
Disable the vertical PLC soft-key row if the handwheel is active.
Never
Do not disable the vertical PLC soft-key row if the handwheel is
active.
Default: IfActive, optional parameter
Access: LEVEL3
Reaction: RUN

Free soft-key For information about the freely definable soft-key menu for the HR 420,
definition for HR 5xx, see "Soft-key project file for HR 420, HR 5xx" on page 2064.
HR 420, HR 5xx

2157 HEIDENHAIN Technical Manual TNC 640


7.8.7 HR 520 portable handwheel
With the HR 520, HEIDENHAIN is introducing the first handwheel of the new
generation HR 5xx. Unlike its predecessor model HR 420, the new HR 520
features a 6th axis key, which can be configured, for example, for selecting the
"virtual tool axis." The HR 520 also offers 6 LEDs, which can be controlled by
PLC operands. For example, these LEDs can be used for optical confirmation
of menu-driven switching processes on the machine. In addition, it is possible
to scan all handwheel keys from the PLC and use them accordingly in the PLC
program.
The handwheel can be fastened to the machine using the magnetic holding
pads on the rear of the handwheel or an optionally available mount
(ID 591 065-xx).
The HR 520 handwheel is available in versions with or without detent.
The HR 520 is connected with the same cables and adapters as the HR 420.
Power consumption of HR 520: 1 W

January 2015 7.8 Electronic Handwheel 2158


Settings  With MP_rasterPerRevol, specify whether you use an HR 5x0 with or
without detent.
 Whether and how specific keys on the handwheel are to be evaluated by the
NC or PLC can be configured with the same machine parameters as on the
HR 420, See "Settings" on page 2153.
All settings that can be defined in the machine parameters of the HR 420 can
also be used for the HR 520. The PLC operands of the HR 420 also match
those of the HR 520.
The six LEDs of the HR 5x0 can be controlled by the specified PLC outputs
O96 to O101.

F1 F2 F3 F4 F5

X Y Z

IV V VI

↑ Handwheel ↓
active/
inactive

– Rapid +
traverse
(I162) (I160)
(I161)

Spindle Teach In NC start


Start
(I165) (I164) (I163)
LED LED LED
(O96) (O97) (O98)

Spindle Ctrl NC stop


Stop
(I168) (I167) (I166)
LED LED LED
(O99) (O100) (O101)

2159 HEIDENHAIN Technical Manual TNC 640


7.8.8 HR 550 handwheel with wireless transmission
Another product of the new HR 5xx handwheel family, the HR 550FS wireless
handwheel for the TNC 640, is now available in addition to the HR 520.
Support of electronic handwheels is standard on the TNC 640. They are
connected to X23 of the machine operating panel.
A wireless handwheel system consists of the HR 550FS mobile part and the
HRA 551FS handwheel adapter. The HR 550FS has a rechargeable battery for
mobile operation on the machine. During operation it continuously
communicates via radio with the HRA 551FS handwheel adapter, which
communicates directly with the control via a serial cable connection.
The HRA 551FS handwheel adapter, which functions both as receiving and
charging station for the mobile part, features an M23 connector system for
connection to the control via a standard handwheel adapter. If the wireless
handwheel system is damaged, the dummy plug for the emergency stop
circuit (ID 271 958-03) can be used so that the operational readiness of the
machine can be restored quickly.
To ensure the necessary and unambiguous assignment of the HR 550FS to
the HRA 551FS, a pairing is created during commissioning. Once they have
been paired, a wireless handwheel and a handwheel adapter can only be
operated with the assigned device. As a precautionary measure, paired
devices must be marked by the stickers (in five different colors) included in the
items supplied so that they can be identified visually (the soft-key label strip
for the mobile part must have the same color as the round sticker for the
handwheel adapter). After successful pairing, they must be affixed to the
wireless handwheel system. The available colors are gray, blue, red, green and
yellow.
The wireless handwheel system can be used in many different places thanks
to the 2.4 GHz ISM radio band, which is freely accessible almost all over the
world. The HR 550FS complies with the internationally accepted standards.
For radio communication, the HEIDENHAIN HR 550FS uses 2.4 GHz ZigBee
transmission technology with a special HEIDENHAIN communications
protocol.

January 2015 7.8 Electronic Handwheel 2160


HR 550 handwheel The HR 550FS wireless handwheel must always be used together with the
with wireless HRA 551FS handwheel adapter. The handwheel and the handwheel adapter
transmission communicate with each other via radio transmission. The handwheel adapter
is connected to X23 of the control system via the connecting cable.
When the handwheel is located in the HRA, contacts on the HRA and on the
rear of the HR are used to communicate via serial data transmission instead of
via radio transmission. The function of the HR 550FS remains the same,
regardless of whether it communicates via radio transmission or via the
handwheel adapter.
The HRA handwheel adapter features an integrated charger for the handwheel
batteries. In addition, the safety-related signals (emergency stop, permissive
buttons) are translated into relay contacts through the HRA. They must be
used to connect the emergency stop button and the permissive buttons of the
handwheel to the control and the associated safety circuits.

Danger

If more than one control with a portable HR 550FS handwheel is located in


a factory hall, a room or a working area, the handwheels must be identified
by unique color markings. The color marking must be applied to the
handwheel and the associated machine tool at a clearly visible location. The
marking on the handwheel and the machine tool must enable the machine
operator to identify unambiguously which handwheel belongs to which
machine tool. The color marking must ensure that no confusion occurs. A
set of different markers is included with the wireless handwheel.
In addition, the machine operator must be informed that he must ensure/
verify every time before using the handwheel that he uses the correct
handwheel for the respective machine tool.

If the machine operator moves with the HR too far away from the HRA, a
vibration alarm announces that transmission is weak before the machine
operator has actually left the radio range. If the machine operator leaves the
radio range anyway, or if radio communication is interrupted for other reasons,
the HRA relay contacts for emergency stop and for the permissive buttons will
open. You must ensure through appropriate wiring that this triggers an
emergency stop on the control.
HEIDENHAIN also recommends that you always place the wireless
handwheel into the HRA 551FS adapter when you are not using it. This
prevents you from confusing the different handwheels. It also ensures that
the handwheel battery is recharged and prevents an unexpected emergency
stop reaction triggered by an empty battery.

2161 HEIDENHAIN Technical Manual TNC 640


When using a wireless handwheel and the HRA handwheel adapter at X23,
you must ensure that the assignment between the handwheel and the HRA
is unambiguous. The wireless handwheel serial number and the HRA serial
number are used for mutual assignment. When the control to which the HR
and the HRA are connected is switched on for the first time, both units
exchange their serial numbers and store them. This process is called "pairing."
To do this, the wireless handwheel must be located in the HRA. If this is the
case, the HR and the HRA communicate only over the serial interface.
Both serial numbers (HRA and HR) will then also be saved in the control. If you
remove the HR from the HRA during the initialization process, the process will
be canceled and a corresponding error message will be issued.
During the emergency stop test and when the connection to the wireless
handwheel is set up, the system ensures that only the HR and the HRA are
addressed, whose serial numbers have been assigned unambiguously to each
other. If a difference is found in one of the comparisons of serial numbers, the
connection will be terminated. During this entire process the relays in the AP
for the emergency stop and the permissive buttons remain open.

January 2015 7.8 Electronic Handwheel 2162


Switching the To switch the HR 550FS off or on, press the CTRL key and the medium soft
HR 550FS on/off key simultaneously. When switching the HR 550FS on, you must also press
one of the two permissive buttons. The HR 550FS does not run a power-up
test and can therefore not be used until a permissive button has been pressed.
During the power-up test, the background illumination of the HR 550FS is
active, but the display remains blank. The permissive buttons are tested at the
end of the power-up test. None of the permissive buttons may be pressed at
this time. In the event of error, an error message appears on the display,
informing you that a permissive button is pressed. As a result, the power-up
test cannot be completed. The display is filled with characters as soon as the
power-up test has been completed successfully, and the "OFF-LINE" message
appears on the display. If an error is found during the power-up test, an error
message appears on the display and the service department must be
informed.
The handwheel is configured in a menu that you open by pressing the SET UP
WIRELESS HANDWHEEL soft key. You find this soft-key in the Save/Edit
Program operating mode after pressing the MOD key on the second soft-key
bar, if "HR550" is entered in MP_type. The following functions are available for
configuration:
 Assigning the handwheel to a specific handwheel holder
 Setting the transmission channel
 Analyzing the frequency spectrum for determining the optimum
transmission channel
 Select transmitter power
 Statistical information on the transmission quality
For configuring the HR 550FS handwheel, refer to the chapter "Configuring the
HR 550FS Wireless Handwheel" in the User's Manual for the control.

Note

Configuration options for the soft-key on the HR 550FS are the same as on
the HR 520(FS).

After the wireless handwheel has been configured and switched on, it can be
activated via the handwheel activation key. Machine operation then switches
from the machine operating panel to the handwheel. The machine tool builder
must ensure through the PLC program that the machine can be operated by
only one operating unit at any one time. Machine operating panel and
handwheel must never be active at the same time. The display of the wireless
handwheel and the display on the screen inform the operator when the
wireless handwheel is active.

2163 HEIDENHAIN Technical Manual TNC 640


Settings  Set MP_type = HR550
 With MP_rasterPerRevol, specify whether you use an HR 5x0 with or
without detent.
 Whether and how specific keys on the handwheel are to be evaluated by the
NC or PLC can be configured with the same machine parameters as on the
HR 420, See "Settings" on page 2153.
 If required, you can allow the use of an additional charger in the optional
machine parameter MP_allowCharger.
All settings that can be defined in the machine parameters of the HR 420 can
also be used for the HR 550FS. The PLC operands of the HR 420 also match
those of the HR 550FS.
All keys of the HR 5x0 are evaluated by the NC. Certain keys are mapped to
PLC markers. The six LEDs of the HR 5x0 can be controlled through the
specified PLC outputs.

F1 F2 F3 F4 F5

X Y Z

IV V VI

↑ Handwheel ↓
active/
inactive

– Rapid +
traverse
(I162) (I160)
(I161)

Spindle Teach In NC start


Start
(I165) (I164) (I163)
LED LED LED
(O96) (O97) (O98)

Spindle Ctrl NC stop


Stop
(I168) (I167) (I166)
LED LED LED
(O99) (O100) (O101)

January 2015 7.8 Electronic Handwheel 2164


With MP_allowCharger = TRUE, the message Place handwheel in charger
will not appear for the wireless handwheel HR 550FS if the handwheel reports
power supply by any HRA 551FS adapter. This allows you to fit multiple
HRA 551FS handwheel adapters to a machine, but only one of them will serve
as the actual radio transceiver for the HR 550FS. For this purpose, these
HRA 551FS adapters, which are solely used as chargers, can be connected via
the standard connecting cables (such as ID 749368-xx, ID 749369-xx,
ID 296466-x) to any desired X23 connector of the MB or X29 connector of the
MC. These HRA 551FS adapters may not be entered into the MP
configuration for handwheels. Only the HRA 551FS adapter that is used as the
radio transceiver for the HR 550FS handwheel must be configured in the MP
configuration for handwheels.
The HW in charger message in the handwheel configuration dialog, even with
MP_allowCharger = TRUE, means that both the power supply and the serial
connection from the HRA 551FS adapter to the HR 550FS handwheel are
available.

2165 HEIDENHAIN Technical Manual TNC 640


Information in the The general procedure for the configuration of the HR 550FS handwheel is
handwheel described in the TNC 640 User's Manual.
configuration
To access the handwheel configuration dialog, proceed as follows:
dialog
 Press the MOD key
 Shift the soft-key row
 Press the SET UP WIRELESS HANDWHEEL soft key

HEIDENHAIN generally recommends that in Channel setting you manually


define the radio channel to be used. To select a vacant radio channel, please
follow the information provided in this document. We advise against using the
Best channel setting because it does not allow planning for the radio
environment, and therefore unexpected disturbances during the operation of
the wireless handwheel system may occur.
To find the best radio channel it is also possible to analyze the frequency
spectrum.

January 2015 7.8 Electronic Handwheel 2166


7.8.9 HR 150 panel-mounted handwheels with HRA 110 handwheel adapter
 In MP_type, select HRA110
 Use MP_selectAxes [0,1] to define the assignment of the first and second
handwheel (connections X1 and X2 on the HRA 110).
 Use MP_selectAxes [2] and the initialization values in MP_initValues to
define the assignment of the third handwheel (connection X3 on the HRA
110). The handwheel can be set either permanently to one axis or variably
through the step switch S2 on the HRA 110.
 Settings for a fixed assignment of the third handwheel:
• MP_selectAxes [2]: Enter axis
• MP_initValues [0]: No entry
• MP_initValues [1] = 4
• MP_initValues [2] = 1
 Settings for a variable assignment of the third handwheel:
• MP_selectAxes [2..4]: Enter axes for the third handwheel
• MP_initValues [0]: Define assignment of switch positions. See below.
• MP_initValues [1]: No entry
• MP_initValues [2] = 0

Note

 Through the config object CfgAxisHandwheel you can specify for each
axis the counting direction and the distance per handwheel revolution. To
do so, open the config object CfgAxisHandwheel in the parameter set
of the desired axis. Enter the values in MP_countDir and
MP_distPerRevol.
 The parameters MP_incrPerRevol, MP_rasterPerRevol and
MP_countDir (from System/CfgHandwheel) apply globally for all
handwheels connected to the HRA 110. The values in
CfgAxisHandwheel overwrite these global values.

2167 HEIDENHAIN Technical Manual TNC 640


Initialization of the Initialization values for HRA 110 handwheel adapter:
handwheel adapter
 MP_initValues[0] – Assignment of the third handwheel:
• 0: Switch position 1 – axis in MP_selectAxes [2]
Switch position 2 – axis in MP_selectAxes [3]
Switch position 3 – axis in MP_selectAxes [4]
• 1: Switch position 1 – axis in MP_selectAxes [0]
Switch position 2 – axis in MP_selectAxes [1]
Switch position 3 – axis in MP_selectAxes [2]
Switch position 4 – axis in MP_selectAxes [3]
Switch position 5 – axis in MP_selectAxes [4]
• 2: Switch position 3 – axis in MP_selectAxes [2]
Switch position 4 – axis in MP_selectAxes [3]
Switch position 5 – axis in MP_selectAxes [4]
 MP_initValues [1] – for permanent assignment of the third handwheel, the
following applies:
• 1: Axis in MP_selectAxes [0]
• 2: Axis in MP_selectAxes [1]
• 4: Axis in MP_selectAxes [2]
• 8: Axis in MP_selectAxes [3]
• 16: Axis in MP_selectAxes [4]
 MP_initValues [2] – assignment of the third handwheel:
• 0: Axis selection switch as defined in MP_initValues[0]
• 1: Permanently as defined in MP_initValues[1]
 Entry in MP_initValues [3 to 7]: Reserved
Switch position 1 on the HRA 110 corresponds to the left stop.

Assignment of The tables below list the assignments of switch positions of S1 and S2 to the
switch positions to PLC inputs I160 to I175.
PLC inputs
The two switches work with a 0 V logic circuit.
Example: If switch S1 is in position 3, input I162 is logically 0, and the inputs
I160, I161, I163 to I167 are logically 1.
Step switch 1

Switch position PLC input


1 (at the left stop) I160
2 I161
3 I162
4 I163
5 I164
6 I165
7 I166
8 (at the right stop) I167

January 2015 7.8 Electronic Handwheel 2168


Step switch 2: Axis selection switch

Switch position PLC input


1 (at the left stop) I168
2 I169
3 I170
4 I171
5 I172
6 I173
7 I174
8 (at the right stop) I175

2169 HEIDENHAIN Technical Manual TNC 640


7.9 Override

7.9.1 Override devices

Settings in the configuration editor MP number


System
PLC
CfgPlcOverrideDev
[Key name of override device]
source 104301
device 104305
mode 104302
values 104303

The control supports the following override devices on up to four machine


operating panels or handwheels with display (HR 5xx/HR 420):
 Up to three potentiometers
 Group of keys (you can use two machine operating keys for setting the
override value).
The input values of the override devices (potentiometer setting or key input)
are evaluated as follows:
 DISCRETE:
The control converts the input values into a maximum of 64 discrete
override values.
 LINEAR:
The control interpolates the input values linearly between the minimum and
maximum override value from MP_values. These values should correspond
to the labeling on the machine operating panel. If only one value is entered
in MP_values, it is assigned to the maximum value and the minimum value
is assumed to be 0 %. If no value is entered, the control additionally uses
150 % for the maximum value.
 CURVE:
The control uses a curve to convert the lower input values into override
values. In this way you can achieve a finer resolution of the lower override
values. Higher input values are again interpolated linearly.
Define the override devices as follows:
 For each override device, add a data record in
CfgPlcOverrideDev and assign a key name.
 Define the source for the override device in MP_source:
OVR1: Feed-rate override input F on the rear side of the TE.
OVR2: Spindle-speed override input S on the rear side of the TE.
OVR3: Rapid-traverse override input E on the rear side of the TE.
KEY: : Group of keys
PLC: Value is set by the PLC program as the API signal from the
spindle or NC channel. If no value is transmitted by the PLC
program, the PLC tries to read the override source from the
IOC file.

January 2015 7.9 Override 2170


 In MP_device, define the machine operating panel or handwheel on which
the override source is located.
MOP1 to MOP4: 1st to 4th machine operating panel
HR1: active handwheel
As an alternative, the specification can be made in the*.IOCP file.
 In MP_mode, define the evaluation of the override inputs.
 In MP_values, define the discrete override values or the interpolation points
of the curve.

MP_source
Selection of configurable source for override values
Available from NCK software version: 597110-01.
Format: Selection menu
Options: OVR1
Potentiometer 1
Feed-rate override input F on the rear side of the TE.
OVR2
Potentiometer 2
Spindle-speed override input S on the rear side of the TE.
OVR3
Potentiometer 3
Rapid-traverse override input E on the rear side of the TE.
KEY
Group of keys
PLC
The PLC program sets the value as API signal from the spindle
or the NC channel. If no value is transmitted by the PLC
program, the PLC tries to read the override source from the
IOCP file.
Default: OVR1
Access: LEVEL3
Reaction: NOTHING

MP_device
Device (machine operating panel or handwheel)
Available from NCK software version: 597110-06.
Format: Selection menu
Options: MOP1 to MOP4
1st to 4th MB machine operating panel
HR1
Active handwheel
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

2171 HEIDENHAIN Technical Manual TNC 640


MP_mode
Evaluation of override values
Available from NCK software version: 597110-01.
Format: Selection menu
Options: DISCRETE
The key inputs or potentiometer settings are converted in up to
64 discrete override values from MP_values.
LINEAR
The input from the override device is interpolated linearly
between the minimum and maximum override value from
MP_values.
CURVE
The input values of the override device are converted using the
curve defined in MP_values.
You define the curve with up to 64 interpolation points in
MP_values. The input values of the override device are again
interpolated linearly above the last interpolation point specified.
If no curve is defined in MP_values, the control uses a standard
curve.
Default: DISCRETE
Access: LEVEL3
Reaction: NOTHING

MP_values
Discrete values or interpolation points for curve
Available from NCK software version: 597110-01.
Format: Array [0 to 63]
Input: 0.00 to 100.00 [%]
The meaning of the parameter depends on MP_mode:
MP_mode = DISCRETE: Enter override values for a maximum
of 64 key inputs or potentiometer settings.
MP_mode = LINEAR:
The input from the override device is interpolated linearly
between the minimum and maximum override value entered
here. These values should correspond to the labeling on the
machine operating panel. If only one value is entered in
MP_values, it is assigned to the maximum value and the
minimum value is assumed to be 0 %. If no value is entered, the
control additionally uses 150 % for the maximum value.
MP_mode = CURVE:
Define a curve with up to 64 interpolation points. The override
values are taken from the curve. Linear interpolation is again
effective above the last interpolation point specified.
Default: No value, optional parameter
Access: LEVEL3
Reaction: NOTHING

January 2015 7.9 Override 2172


7.9.2 Override functions

Settings in the configuration editor MP number


System
PLC
CfgPlcOverrideS
[Key name of spindle]
minimal 104401
maximal 104402
source 104403
Channels
ChannelSettings
[Key name of machining channel]
CfgThreadSpindle
sourceOverride 113603

Speed override  In the parameter object CfgPlcOverrideS, create a parameter set for each
spindle to which a spindle speed override is to apply.
 For each override potentiometer you can enter up to four different
parameter sets with symbolic key names in MP_source . You can switch
between them with PLC Module 9132.
During start-up the NC always activates the first parameter set from
MP_source. If the operator switches to the overrides of the HR 420 or
HR 5xx, the NC always activates the second parameter set from
MP_source.
 Use MP_sourceOverride to define which potentiometer is to be effective
during thread cutting for speed and feed rate.

MP_minimal
Minimum value for override
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [%] with up to 2 decimal places
Default: 0
Access: LEVEL3
Reaction: NOTHING

MP_maximal
Maximum value for override
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 200 [%] with up to 2 decimal places
Default: 150
Access: LEVEL3
Reaction: NOTHING

2173 HEIDENHAIN Technical Manual TNC 640


MP_source
Source for override values
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Key name for override device from CfgPlcOverrideDev
Default: PotentiometerS
Access: LEVEL3
Reaction: NOTHING

Override potenti- The potentiometer adjusted with MP_sourceOverride is effective during


ometer during thread cutting for shaft speed and feed rate.
thread cutting

Note

If you are migrating from the iTNC 530:


Use MP_sourceOverride = Spindle Potentiometer to define the
iTNC 530-compatible setting for the override during thread cutting. In
milling, the feed rate during thread cutting is usually controlled with the
spindle speed override.

MP_sourceOverride
Effective override potentiometer for feed rate during thread
cutting
Available from NCK software version: 597110-05.
Format: Selection menu
Options: SpindlePotentiometer
(iTNC 530-compatible setting)
During thread cutting, the potentiometer is effective for the
spindle speed knob. The potentiometer for the feed rate
override is disabled.
FeedPotentiometer
(previous behavior of the TNC 640)
During thread cutting, the potentiometer is effective for the
feed rate knob. The potentiometer for the spindle speed
override is disabled.
Default: No value, optional parameter
Access: LEVEL1
Reaction: RUN

PLC operands The percentage adjusted with the speed override is entered by the NC in
NN_SpiOverrideInput and PP_SpiOverride.
You can change the percentage through the PLC:
 Enter the desired percentage in PP_SpiOverride. The NC immediately
takes over the new value.

PLC operand / Description Type

NN_SpiOverrideInput D
Speed override set [%]
PP_SpiOverride D
Speed override entered by the PLC [%]

January 2015 7.9 Override 2174


Feed rate override

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgPlcOverrideF
minimal 201901
maximal 201902
source 201903

 In the channel-sensitive parameter object CfgPlcOverrideF, create a


parameter set for each machining channel (slide) to which a feed rate
override is to apply.

 For each override potentiometer, you can enter up to four different


parameter sets with symbolic key names in MP_source. You can switch
between them with PLC Module 9132.
During start-up, the NC always activates the first parameter set from
MP_source. If the operator switches to the overrides of the HR 420 or
HR 5xx, the NC always activates the second parameter set from
MP_source.

2175 HEIDENHAIN Technical Manual TNC 640


MP_minimal
Minimum value for override
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [%] with up to 2 decimal places
Default: 0 [%]
Access: LEVEL3
Reaction: NOTHING

MP_maximal
Maximum value for override
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 200 [%] with up to 2 decimal places
Default: 150 [%]
Access: LEVEL3
Reaction: NOTHING

MP_source
Source for override values
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Key name for override device from CfgPlcOverrideDev
Default: PotentiometerF
Access: LEVEL3
Reaction: NOTHING

Note

The feed rate override also applies to rapid traverse if the rapid traverse
override is not active.

PLC operands The percentage adjusted with the feed rate override is entered by the NC in
NN_ChnFeedOverrideInput and PP_ChnFeedOverride.
You can change the percentage through the PLC:
 Enter the desired percentage in PP_ChnFeedOverride. The NC
immediately takes over the new value.

PLC operand / Description Type

NN_ChnFeedOverrideInput D
Feed-rate override set [%]
PP_ChnFeedOverride D
Feed-rate override entered by the PLC [%]

January 2015 7.9 Override 2176


Rapid traverse
override
Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of the machining channel]
CfgPlcOverrideR
minimal 202001
maximal 202002
source 202003

 In the channel-sensitive parameter object CfgPlcOverrideR, create a


parameter set for each machining channel (slide) to which a rapid traverse
override is to apply.

MP_minimal
Minimum value for override
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [%] with up to 2 decimal places
Default: 0 [%]
Access: LEVEL3
Reaction: NOTHING

MP_maximal
Maximum value for override
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 200 [%] with up to 2 decimal places
Default: 150 [%]
Access: LEVEL3
Reaction: NOTHING

MP_source
Source for override values
Available from NCK software version: 597110-01.
Format: Selection menu
Options: Key name for override device from CfgPlcOverrideDev
Default: No value
Access: LEVEL3
Reaction: NOTHING
You can change the percentage through the PLC:
 Enter the desired percentage in PP_ChnRapidFeedOverride. The NC
immediately takes over the new value.

PLC operand / Description Type

NN_ChnRapidFeedOverrideInput D
Rapid traverse override set [%]
PP_ChnRapidFeedOverride D
Rapid traverse override entered by the PLC [%]

2177 HEIDENHAIN Technical Manual TNC 640


7.9.3 Compensation for potentiometers

Settings in the configuration editor MP number


System
PLC
CfgPlcPeriphery
overrideFullRatio 103406
override100Ratio 103411
overrideDelta 103407
overrideIntegDelta 103408

MP_overrideFullRatio allows you to compensate voltage losses.

MP_overrideFullRatio
Compensation for cable losses of the override potentiometer
Available from NCK software version: 597110-01.
Format: Number
Input: 0.5 to 1 with up to 3 decimal places
Default: 0.98 (Optional parameter)
Access: LEVEL3
Reaction: NOTHING
MP_override100Ratio is reserved for HEIDENHAIN.
Do not make any changes here!
Sets the position of the potentiometer to 100 % override. The value is given
as a fraction of the AD converter's maximum value, e.g. 0.6275 (equals 5/8) or
0.6667 (equals 2/3).
For some machine operating fields, this value can differ due to a different
adjustment of the AD converter.
If no value is given, the control uses the value 0.6275 (5/8).

MP_override100Ratio
Compensation for differing adjustment of the override
potentiometers
Format: Number
Input: 0.5 to 1 with up to 4 decimal places
Default: 0.6275 (optional parameter)
Access: LEVEL3
Reaction: NOTHING

Use MP_overrideDelta and MP_overrideIntegDelta to influence the


sensitivity of the override potentiometers. MP_overrideDelta suppresses
short-term fluctuations and MP_overrideIntegDelta compensates the signal
drift.

January 2015 7.9 Override 2178


MP_overrideDelta
Compensation for thermal noise in override potentiometers
Available from NCK software version: 597110-01.
Format: Number
Input: 0.0001 to 0.1 with max. 4 decimal places
Default: 0.0005 (optional parameter)
Access: LEVEL3
Reaction: NOTHING

MP_overrideIntegDelta
Compensation for thermal noise in override potentiometers
Available from NCK software version: 597110-01.
Format: Number
Input: 0.0001 to 1 with max. 4 decimal places
Default: 0.025 (optional parameter)
Access: LEVEL3
Reaction: NOTHING

2179 HEIDENHAIN Technical Manual TNC 640


7.10 Incremental jog positioning
 The "incremental jog positioning" function is switched on and off with the
INCREMENT OFF/ON soft key
 To position with incremental jog, press the axis-direction keys
(PP_AxTraversePos/PP_AxTraverseNeg)
With marker NN_OmgJogIncrement you can query the current state (See
"Operating modes" on page 1893).
Use Module 9036 (function 10) to limit the jog increment.
You can ascertain the current jog increment with Module 9035 (function 26).
With Module 9186 you can switch the incremental jog function on and off
through the PLC (See "Module 9186 Call a soft-key function" on page 2085).
Module 9036 Write NC status information
The module modifies status information of the NC. The status information to
be modified is transferred via a function number (also see "Module 9036 Write
NC status information" on page 2147).
Call parameter:

Number of Function Value


the function
10 Jog 0.0001 to 50 mm:
increment Jog increment limiting
limiting
–1; < –2; > 50:
Cancellation of jog increment limitation and
activation of the jog increment entered last
-2:
Cancellation of the jog increment limitation and
activation of the minimum from the jog
increment entered last and the last limitation

Call:
PS B/W/D/K <Number of the status information>
PS B/W/D/K <Value to be written>
CM 9036
PL B/W/D <Error code>
0: Status written
1: Incorrect status code
2: Transferred value is out of range
3: Input disabled

January 2015 7.10 Incremental jog positioning 2180


Error code:

Marker Value Meaning


NN_GenApiModule 0 Status information was written
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Incorrect number of the status information
ErrorCode 3 Transferred value is outside the valid range
6 Entry disabled (e.g. through machine
configuration)

Module 9035 Read NC status information


The module reads status information of the NC. The status information to be
read is transferred via a function number (also see "Module 9035 Read NC
status information" on page 2149).
Call parameter:

Number of the function Function


26 Read jog increment

Call:
PS B/W/D/K <Number of the desired status information>
CM 9035
PL B/W/D <Jog increment>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information invalid
ErrorCode 20 Call not in a submit/spawn job
58 No NC channel or multi-channel system
configured

2181 HEIDENHAIN Technical Manual TNC 640


7.11 Operating times and system times

7.11.1 Measuring operating times

Settings in the configuration editor MP number


System
CfgPlcOperTimes
displayPlcTimes 105001
resetPlcTimes 105002
resetNcTimes 105003
textNumber 105004

The control can measure up to 23 operating times (operating hours counter)


and store them in a file:

Operating time Meaning


TNCTIME Control on
MACHINETIME Machine on (NC operating time)
PROGTIME Program run (NC operating time)
PLCTIME0 to PLCTIME19 Freely definable PLC operating time

For all operating modes except Programming and Test Run:


 Press the MOD key and press the MACHINE TIME soft key.
 In MP_resetPlcTimes, specify the PLC operating times you can reset with
the code number 857282
 In MP_resetNcTimes, specify the NC operating times you can reset with
the code number 857282
 In MP_displayPlcTimes, define the operating times you want to display
 In MP_textNumber, define the dialog messages to be displayed for the
individual PLC operating times
The time is measured in seconds and is updated every minute during the run
time. When the control is switched off, no more than one minute is lost.
The NC starts and stops the NC operating hours counter (Control On, Machine
On and Program Run).
The PLC operating hours counters 1 to 20:
 Start with Module 9190.
 Stop with Module 9191.

January 2015 7.11 Operating times and system times 2182


All operating times are saved during a hard-disk backup.
Use the following modules to evaluate or change the operating times:
 Module 9190: Start the PLC operating hours counter
 Module 9191: Stop the PLC operating hours counter
 Module 9192: Transfer the operating hours counter
 Module 9193: Set the operating hours counter
 Module 9194: Alarm when operating times are exceeded

Note

When measuring the operating time in the Program Run mode, the
different operating mode groups are currently not distinguished.

2183 HEIDENHAIN Technical Manual TNC 640


Machine MP_displayPlcTimes
parameters Display PLC operating times
Available from NCK software version: 597110-01.
Format: String
Input: Binary value
Bit 0 to bit 19 represent PLC operating times 1 to 20
0: Do not display
1: Display
Default: %11111111111111111111
Access: LEVEL2
Reaction: NOTHING

MP_resetPlcTimes
Reset PLC operating times with the code number
Available from NCK software version: 597110-01.
Format: String
Input: Binary value
Bit 0 to bit 19 represent PLC operating times 1 to 20
0: Do not reset
1: Reset
Default: %00000000000000000000
Access: LEVEL2
Reaction: NOTHING

MP_resetNcTimes
Reset NC operating times with the code number
Available from NCK software version: 597110-01.
Format: String
Input: Binary value
Bit 0: "Control on" operating time—locked. Resetting not
possible
Bit 1: "Machine on" operating time
Bit 2: "Program run" operating time
0: Do not reset
1: Reset
Default: %000
Access: LEVEL2
Reaction: NOTHING
The dialog texts for the PLC operating hours counter are defined in the text file
%OEM%\plc\language\en (or languages other than English).

MP_textNumber
Dialogs for PLC operating times
Available from NCK software version: 597110-01.
Format: Array [0 to 19]
Input: [0] corresponds to the text for PLC time 1, etc.
In the text file for PLC dialogs, indicate the line number of the
dialog text (%OEM%\plc\language\en (or language other than
English)).
Default: 0
Access: LEVEL2
Reaction: NOTHING

January 2015 7.11 Operating times and system times 2184


PLC modules Module 9190 Start the PLC operating hours counter
The module activates one or more PLC operating hours counters. The control
measures the time that elapses until activation is completed. Use Module
9191 to cancel activation. Bits 0 to 19 of the transfer value represent the PLC
operating hours counters 1 to 20. For every bit set, the associated counter is
started.
Call:
PS B/W/D/K <PLC operating time>
Bit 0 to bit 19 corresponds to PLC operating time 1 to 20
CM 9190
Error code:

Marker Value Meaning


NN_GenApiModule 0 PLC operating time started
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter
ErrorCode <PLC operating time>

Module 9191 Stop the PLC operating hours counter


The module stops one or more PLC operating hours counters. The time
measured by the control is saved. Bits 0 to 19 of the transfer value represent
the PLC operating hours counters 1 to 20. For every bit set, the associated
counter is stopped.
Call:
PS B/W/D/K <PLC operating time>
Bit 0 to bit 19 correspond to PLC operating times 1 to 20
CM 9191
Error code:

Marker Value Meaning


NN_GenApiModule 0 PLC operating time stopped
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter
ErrorCode <PLC operating time>

2185 HEIDENHAIN Technical Manual TNC 640


Module 9192 Transfer the operating hours counter
The module reads the given PLC or NC operating hours counter.
The current value is transferred in seconds. If the value is greater than
2 147 483 648 (approx. 69 years), a negative number will be transferred.
Call:
PS B/W/D/K <Number of the operating time>
-3: Control on
-2: Machine on
-1: Program run
0 to 19: PLC operating time counters 1 to 20
CM 9192
PL B/W/D <Current time [s]>
–1: Error
Error code:

Marker Value Meaning


NN_GenApiModule 0 PLC operating time was read
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter
ErrorCode <Number of operating time>
20 Call not in a submit/spawn job

Module 9193 Set the operating hours counter


The module overwrites the given PLC or NC operating hours counter. The old
value is lost irretrievably.
For the NC operating time counter the value should only be modified in
exceptional cases (e.g. when exchanging a control).
The time for Control on cannot be overwritten.
Transfer values greater than 2 147 483 648 seconds (approx. 69 years) as a
negative number.
Call:
PS B/W/D/K <Number of the operating time>
-3: Control on
-2: Machine on
-1: Program run
0 to 19: PLC operating times 1 to 20
PS B/W/D/K <New time [s]>
CM 9193
Error code:

Marker Value Meaning


NN_GenApiModule 0 Operating time was overwritten
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter
ErrorCode <Number of operating time>
20 Call not in a submit/spawn job

January 2015 7.11 Operating times and system times 2186


Module 9194 Alarm when operating time exceeded
The module activates a monitoring function in the NC, which sets a PLC
marker when the given maximum time for a PLC or NC operating hours
counter is exceeded. The marker is set the first time the maximum time is
exceeded, and then cyclically once per minute.
The marker can be delayed by max. 59 s the first time it is set. All values
greater than 2 147 483 648 (approx. 69 years) must be transferred as negative
numbers.
If you enter the value zero as the alarm threshold, the function is deactivated.
Call only in a submit job or spawn job.
Call:
PS B/W/D/K <Number of the operating time>
-3: Control on
-2: Machine on
-1: Program run
0 to 19: PLC operating times 1 to 20
PS B/W/D/K <Alarm threshold [s]>
PS B/W/D/K <Number of the alarm marker>
CM 9194
Error code:

Marker Value Meaning


NN_GenApiModule 0 Alarm function activated
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for parameter
ErrorCode <Number of operating time>
4 Invalid value for parameter
<Number of alarm marker>
20 Call not in a submit/spawn job

2187 HEIDENHAIN Technical Manual TNC 640


7.11.2 Date/time
Implement the settings for date and time as follows:
 Open the taskbar at the bottom of the screen using the cursor
 Press the green HEIDENHAIN button to open the JH menu.
 Select the Settings menu item
 Select the Date/time menu item
or:
 Open the MOD dialog via the MOD key
 In the Settings and Information window select the System settings entry
 Select the Set system time entry or press the SET DATE/TIME soft-key

 Carry out the desired settings


 Confirm the settings with OK
You can specify the following other settings:
 Local time or time of the control
 Time zoneConversion between summer and winter time is implemented
automatically when setting the time zone When setting another time zone,
the current time is automatically set and the UTC time remains the same
 Synchronization via NTP server
This setting should be selected when an NTP server is in the control
network that serves as the template for the control time

January 2015 7.11 Operating times and system times 2188


7.12 Tool changer
You control the tool changer through PLC outputs.
If the tool changer is to be driven by controlled axes, use the PLC axes See
"PLC axes" on page 1132. You can also control the tool changer through
proximity switches.
 Save the information about the tool in the tool table and the information
about the tool changer in the pocket table.
Tool management (replacement tool, tool life, etc.) is handled by the NC. PLC
modules or operands provide you with the information necessary for driving
the tool changer.

7.12.1 Tool table and pocket table


You can edit the tool table in the machining modes of operation:
 Press the TOOL TABLE soft key
From the tool table you can call the pocket table (see the User's Manual):
 Press the POCKET TABLE soft key
Usually, the current tool table is named TOOL.T, the pocket table is
TOOL_P.TCH. Both files are saved in the directory TNC:\TABLE\.
Definition of the tool table and pocket table:
In the machine configuration, define the views for the tables through the table
filter. With the filters, you define which columns in the tool table and pocket
table are to be displayed in which order.
You can define a view that is active by default if the tables are opened by soft
key in the Machine operating modes. See "Configuring table filters" on
page 2453 for information on how you can define further views (e.g.
selectable via soft key).

Settings in the configuration editor MP number


System
TableSettings
CfgTableFilter 106000
T.DEFAULT
TCH.DEFAULT

2189 HEIDENHAIN Technical Manual TNC 640


In the NC software's factory default condition there is no default filter
configured for the tool table T.DEFAULT. Proceed as follows to adapt the
standard view of the tool table:
 In the config object TableSettings/CfgTableFilter, enter the key name
T.DEFAULT.
 With MP_select, define the columns and the sequence for display.
Example:
MP_select : T,NAME,L,R,R2,TYP
 With MP_exclude you can reverse the logic of MP_select from a positive or
negative list.
 If you want to define a default view for the pocket table as well, repeat the
steps, this time using the key name TCH.DEFAULT for the pocket table.
With Modules 9092, 9093, 9094 and 9096 you can read the tool table and the
pocket tables and overwrite them.
With Module 9350 you can read data from the tool table selected for program
run, and with Module 9351 you can write data to the current tool table.
With Module 9304 you can copy the OEM values from the pocket table
(columns p1..p5).
You can lock and unlock the pocket table with Module 9300 if they are to be
edited with Module 9305, 9306, 9341 or 9342. After you are finished editing,
you must unlock the pocket table with this module.
If Module 9305, 9306, 9341 or 9342 is called while a T-strobe is pending, the
run-time lock, performed by the PLC runtime system, will be unlocked in the
pocket table for the rows relevant to the T-strobe. However, as of NC SW
597110-09, it is no longer necessary to call Module 9300 beforehand.
If an input field is open in the editor at the time the modules are called, this
field is closed automatically.
In the status display you can press the STATUS TOOL soft key to display the
active tool data.

January 2015 7.12 Tool changer 2190


Elements of the tool The following data fields are available in the tool table TOOL.T. If required, you
table can extend the tool table by its own columns, See "Inserting or deleting
additional columns in/from an existing table" on page 2460.

Data field Meaning Value range Column Length Data type


width in
bytes
T Tool number 0.0 – 32767.9 8 4 FLOAT
NAME Tool name 32 characters 32 32 STRING
L Geometry, length ±99999.9999 [mm/inches] 12 4 FLOAT
R Geometry, length ±99999.9999 [mm/inches] 12 4 FLOAT
R2 Geometry radius 2 ±99999.9999 [mm/inches] 12 4 FLOAT
DL Length allowance ±999.9999 [mm/inch] 9 4 FLOAT
DR Radius allowance ±999.9999 [mm/inch] 9 4 FLOAT
DR2 Radius allowance 2 ±999.9999 [mm/inch] 9 4 FLOAT
TL Tool status: L: Locked (1 = L) 3 4 UINT
RT Find replacement tool, 0.0 – 32767.9 8 4 FLOAT
TIME1 Maximum tool life 0 – 99999 [min] 6 4 FLOAT
TIME2 Maximum tool age for 0 – 99999 [min] 6 4 FLOAT
TOOL CALL
CUR_TIME Current tool age 0 – 9999.99 [min] 9 4 FLOAT
TYPE Tool type  0: MILL, milling cutter 5 4 UINT
 1: DRILL, drill
 2: TAP, tapping tool
 3: REAM, reamer
 4: CENT, NC center drill
 5: CSINK, countersinker
 6: TSINK, piloted
counterbore
 21: TCHP, touch probe
 29: TURN: lathe tool
DOC Comment 32 characters 32 32 STRING
PLC PLC status %00000000 – %11111111 10 4 BIN
LCUTS Tooth length ±9999.9999 [mm/inches] 12 4 FLOAT
ANGLE Maximum plunge angle 0.0 – 90.0 [°] 8 4 FLOAT
CUT Number of teeth 0 – 99 4 4 UINT
LTOL Wear tolerance for length 0 – 0.9999 7 4 FLOAT
RTOL Wear tolerance for radius 0 – 0.9999 7 4 FLOAT
R2TOL Wear tolerance for radius 0 – 0.9999 7 4 FLOAT
2
DIRECT Cutting direction  0: + 7 4 FLOAT
 –1: –
R-OFFS Tool offset: Radius ±9999.9999 [mm/inches] 12 4 FLOAT
L-OFFS Tool offset: Length ±9999.9999 [mm/inches] 12 4 FLOAT
LBREAK Breakage tol.: length 0 – 3.2767 7 4 FLOAT
RBREAK Breakage tol.: radius 0.0 – 0.9999 7 4 FLOAT

2191 HEIDENHAIN Technical Manual TNC 640


Data field Meaning Value range Column Length Data type
width in
bytes
NMAX Maximum spindle speed 0 – 999999 [1/min] 10 4 FLOAT
LIFTOFF Lift-off allowed?  0: N (= no) 8 4 UINT
 1: Y (= yes)
TP_NO Number of the touch 0–9 7 4 UINT
probe
T-ANGLE Point angle ±180.00 [°] 8 4 FLOAT
LAST_USE Timestamp of last use hh:mm:ss dd:mm:yyyy 20 20 STRING
PTYP Tool type for pocket table 0 – 99 5 4 UINT

January 2015 7.12 Tool changer 2192


Elements of the The following data fields are available in the turning-tool table
turning-tool table TOOLTURN.TRN. If required, you can extend the tool table by adding user-
defined columns, See "Inserting or deleting additional columns in/from an
existing table" on page 2460:

Data field Meaning Value range Column Lengt Data


width h in type
bytes
T Tool number 0.0 – 32767.9 8 4 FLOAT
NAME Tool name 32 characters 32 32 STRING
ZL Tool length 1 ±9999.9999 [mm/inches] 12 4 FLOAT
XL Tool length 2 ±9999.9999 [mm/inches] 12 4 FLOAT
YL Tool length 3 ±9999.9999 [mm/inches] 12 4 FLOAT
DZL Oversize in tool ±9999.9999 [mm/inches] 12 4 FLOAT
length 1
DXL Oversize in tool ±9999.9999 [mm/inches] 12 4 FLOAT
length 2
DYL Oversize in tool ±9999.9999 [mm/inches] 12 4 FLOAT
length 3
RS Cutting radius ±9999.9999 [mm/inches] 12 4 FLOAT
TO Tool orientation 1–9 6 4 UINT
Angle of Orientation angle of ±360.0 [°] 8 4 FLOAT
orientatio the spindle
n
T-ANGLE Tool angle 0 – 179.9999 [°] 12 4 FLOAT
P-ANGLE Point angle 0 – 179.9999 [°] 12 4 FLOAT
CUTWIDTH Width of recessing ±9999.9999 [mm/inches] 12 4 FLOAT
tool
TYPE Type of turning tool  11: ROUGH, roughing tool 7 4 UINT
 12: FINISH, finishing tool
 14: THREAD, threading tool
 15: RECESS, recessing tool
 21: BUTTON, button tool

2193 HEIDENHAIN Technical Manual TNC 640


Elements of the In the basic configuration of the control (factory default setting), the
pocket table TOOL.TCH pocket table contains the following pre-configured columns:

Data field Meaning Value range Column Length Data type


width in
bytes
P Pocket number 0.0 – 99.9999 8 8 STRING
T Tool number 1 – 99999 6 4 UINT
TNAME Tool name 16 characters 16 16 STRING
RSV Pocket reserved R: Reserved (1 = R) 4 4 UINT
ST Special tool S: Special tool (1 = S) 4 4 UINT
F Fixed pocket F: Fixed pocket (1 = F) 4 4 UINT
L Pocket locked L: Locked (1 = L) 4 4 UINT
DOC Pocket comment 16 characters 32 32 STRING
PLC PLC status %00000000 – %11111111 10 4 BIN
P1 Value for evaluation in ±9999.9999 [mm/inches] 12 4 FLOAT
the PLC
P2 Value for evaluation in ±9999.9999 [mm/inches] 12 4 FLOAT
the PLC
P3 Value for evaluation in ±9999.9999 [mm/inches] 12 4 FLOAT
the PLC
P4 Value for evaluation in ±9999.9999 [mm/inches] 12 4 FLOAT
the PLC
P5 Value for evaluation in ±9999.9999 [mm/inches] 12 4 FLOAT
the PLC
PTYP Tool type for pocket table 0 – 99 5 4 UINT
LOCKED_ Lock pocket above 0 – 99999 13 4 UINT
ABOVE
LOCKED_ Lock pocket below 0 – 99999 13 4 UINT
BELOW
LOCKED_ Locks the pocket at left 0 – 99999 13 4 UINT
LEFT
LOCKED_ Locks the pocket at right 0 – 99999 13 4 UINT
RIGHT
LAST_USE Timestamp of last use hh:mm:ss dd:mm:yyyy 20 20 STRING
S1 Value for evaluation in 16 characters 16 16 STRING
the PLC
S2 Value for evaluation in 16 characters 16 16 STRING
the PLC

January 2015 7.12 Tool changer 2194


Module 9092 Search for an entry in the tables selected for execution (.T/
.D/.TCH)
Prerequisite for table: M status must be set.
The entry or value sought is given as a natural number, shifted by the number
of decimal places that can be entered.
As return code the function replies with the number of the line in which the
value was found.
It is possible, for example, to look for the vacant pocket (corresponds to T0) in
the pocket table.
If you wish to look for more occurrences of the same value, you must enter
the line number of the last occurrence plus one as the starting line.
Call:
PS B/W/D/K <File type>
0: *.T file (tool table)
1: *.D file (datum table)
2: *.TCH file (pocket table)
PS B/W/D/K <Element value>
PS B/W/D/K <Element number>
*.T file
0: Tool length (L)
1: Tool radius (R)
2: Reserved
3: Replacement tool (RT); (–1= not defined)
4: Reserved
5: TIME 1
6: TIME 2
7: CURRENT TIME
8: Tool radius 2 (R2)
9: Oversize for tool length (DL)
10: Oversize for tool radius (DR)
11: Oversize for tool radius 2 (DR2)
12: Tool locked (TL); (0: No, 1: Yes)
13: Number of the tool teeth (CUT)
14: Wear tolerance for tool length (LTOL)
15: Wear tolerance for tool radius (RTOL)
16: Cutting direction of the tool (DIRECT); (0:+; 1: –)
17: PLC status (PLC)
18: Tool offset for tool length (TT:LOFFS)
19: Tool offset for radius (TT:ROFFS); ($7FFF FFFF = R)
20: Breakage tolerance for tool length (LBREAK)
21: Breakage tolerance for tool radius (RBREAK)
22: Tooth length (LCUTS)
23: Plunge angle (ANGLE)
24: Tool number
25: Tool index (only for reading)
26: PLC value (PLC-VAL)
27: Probe center offset in reference axis (CAL-OF1)
28: Probe center offset in minor axis (CAL-OF1)
29: Spindle angle during calibration (CAL-ANG)
30: PTYP
31: Maximum shaft speed for this tool
32: Lift-off function
33: OEM (P1)

2195 HEIDENHAIN Technical Manual TNC 640


34: OEM (P2)
35: OEM (P3)
36: (TANGLE)
37: (PITCH)
38: Wear tolerance for tool radius 2 (R2TOL)
39: Time stamp (LAST_USE)
40: Numerical value for type of tool (TYP)
41: Chatter detection active / not active
*.D file:
0: Shift in axis 1
1: Shift in axis 2
2: Shift in axis 3
3: Shift in axis 4
4: Shift in axis 5
5: Shift in axis 6
6: Shift in axis 7
7: Shift in axis 8
8: Shift in axis 9
*.TCH file:
0: Tool number (T);
(–1, if no tool is entered)
1: Special tool (ST);
(0: No, 1: Yes)
2: Fixed pocket (F);
(0: No, 1: Yes)
3: Locked pocket (L);
(0: No, 1: Yes)
4: PLC status (PLC)
5: ptyp
6: rsv (Bit 0==1: Pocket reserved)
7: p1
8: p2
9: p3
10: p4
11: p5
PS B/W/D/K <Line number for beginning of search>
CM 9092
PL B/W/D <Line number (in case of error –1)>
PL B/W/D <Error number>
0: No error. Element was found.
1: Call was not in a submit or spawn job
2: File type does not exist
3: No file of the entered type was found with M status
4: Line number not in file
5: Incorrect element number
6: Element value not found

January 2015 7.12 Tool changer 2196


Error code:

Marker Value Meaning


NN_GenApiModule 0 No errors
Error 1 Error code in NN_GenApiModuleErrorCode
or in <error number> see above
NN_GenApiModule 2 Invalid value for <File type> or <Element
ErrorCode number> parameter
7 Error while reading from the file
20 Call not in a submit/spawn job
36 Error while opening the file

Module 9093 Read data from tables selected for program run (.T/.D/.TCH)
Prerequisite for table: M status must be set.
You transfer the line number (i.e. tool number for *.T, vector number for *.D
or pocket number for *.TCH) and the number of the element to be read.
The value is given as a natural number, shifted by the number of decimal
places that can be entered.
The module must be called in a submit/spawn job.
Call:
PS B/W/D/K <File type (see Module 9092)>
PS B/W/D/K <Line number>
PS B/W/D/K <Element number (see Module 9092)>
CM 9093
PS B/W/D <Element value>
PL B/W/D <Error number>
0: No error
1: Call was not in a submit/spawn job
2: File type does not exist
3: No file of the entered type was found with M status
4: Line number not in file
5: Incorrect element number
6: Field in the table contains no value
7: Field in the table contains invalid/unconvertible value
8: Error while reading a table file (e.g invalid format)

2197 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
or in error number see above
NN_GenApiModule 2 Invalid value for <File type> or <Element
ErrorCode number> parameter
7 Error while reading from the file
20 Call not in a submit/spawn job
36 Error while opening the file
41 File type for the element is not supported

January 2015 7.12 Tool changer 2198


Module 9350 Read data from the tool table
Module 9350 reads the contents of a line in the table selected for program run
with the status M.
The value is read as an integer, shifted by the number of decimal places that
can be entered.
The module must be called in a submit/spawn job.
Call:
PS B/W/D/K <Tool number>
PS B/W/D/K <Tool index>
≤ 0: Main entry
PS B/W/D/K <Element number>
0: Tool length L
1: Tool radius R
2: Not used
3: Replacement tool (–1 if not defined)
4: Not used
5: Maximum tool age TIME1
6: Maximum tool age at TOOL CALL TIME2
7: Current tool age CUR.TIME
8: Tool radius 2 R2
9: Oversize for tool length DL
10: Oversize for tool radius DR
11: Oversize for tool radius 2 DR2
12: Tool locked TL (0=No, 1=Yes)
13: Number of tool teeth CUT.
14: Wear tolerance in length LTOL
15: Wear tolerance in radius RTOL
16: Cutting direction DIRECT. (0=+; 1=–) (0 = "+", 1 = "–")
17: PLC status PLC
18: Tool offset for length TT: L-OFFS
19: Tool offset for radius TT: R-OFFS
20: Break tolerance for length LBREAK
21: Break tolerance for radius RBREAK
22: Tooth length LCUTS
23: Maximum plunge angle (ANGLE)
24: Tool number
25: Tool index
26: PLC value PLC-VAL
27: Probe center offset in reference axis CAL-OF1
28: Probe center offset in minor axis CAL-OF2
29: Spindle angle during calibration CAL-ANG
30: Tool type PTYP
31: Maximum speed NMAX
32: Retract tool LIFTOFF
33: Value for PLC (P1)
34: Value for PLC (P2)
35: Value for PLC (P3)
36: Point angle for tool types DRILL and CSINK
(T-ANGLE)
37: Thread pitch for tool type TAP (PITCH)
38: Wear tolerance for tool radius 2 (R2TOL)
39: Time stamp (LAST_USE)
40: Numerical value for type of tool (TYP)

2199 HEIDENHAIN Technical Manual TNC 640


41: Chatter detection active / not active
CM 9350
PL B/W/D <Element value>
PL B/W/D <Error number>
0: No error, element value was read
1: Module was not called in a spawn or submit job
2: File type does not exist
3: No tool table with status M
4: Line number does not exist
5: Incorrect element number

You might also like