You are on page 1of 2839

Preliminary

Technical Manual

TNC 640

NC software
34059x-06

September 2015
2 HEIDENHAIN Technical Manual TNC 640
Content

1 Update Information
1.1 General information..........................................................................21

1 Update Information No. 4


1.1 Overview............................................................................................23
1.1.1 Released service packs .......................................................23
1.1.2 Released NC Software ........................................................23
1.2 NC software 34059x-06.....................................................................24
1.2.1 Important changes as compared to previous versions........24
1.2.2 Notes on software updates.................................................28
1.2.3 Description of the new functions ........................................31

2 Introduction
2.1 Meaning of the symbols used in this manual ................................45
2.2 Would you like any changes, or have you found any errors?.......45
2.3 Proper and intended operation........................................................45
2.4 Trained personnel .............................................................................45
2.5 General information..........................................................................46
2.5.1 HSCI interface .....................................................................49
2.6 Overview of Components ................................................................50
2.6.1 MC main computer, HDR hard disk and SIK .......................50
2.6.2 CC 61xx controller units ......................................................65
2.6.3 UEC 11x(FS), UMC 11x(FS) controller unit with
integrated inverter and PLC.................................................67
2.6.4 PLC input/output systems with HSCI interface...................69
2.6.5 SPI expansion modules .......................................................73
2.6.6 PSL 13x low-voltage power supply unit ..............................74
2.6.7 Screen BF 7xx .....................................................................76
2.6.8 Keyboard units: TE 73x, TE 74xx.........................................77
2.6.9 Machine operating panel, MB 7xx.......................................80
2.6.10 HSCI adapter for PLB 6001 (FS) OEM-specific
machine operating panel .....................................................81
2.6.11 Handwheels ........................................................................82
2.6.12 IPC 6641—Industrial PC for Windows ................................89
2.6.13 Industrial Thin Clients ITC 7xx .............................................90
2.6.14 Key symbols for the TNC 640 ............................................92
2.6.15 Key symbols for HR 510....................................................100
2.6.16 Touch probes.....................................................................102
2.6.17 MS 110, MS 111 installation kit ........................................105
2.6.18 Other accessories .............................................................106
2.6.19 Documentation..................................................................107

September 2015 3
2.7 Short description ............................................................................108
2.7.1 User functions ...................................................................121
2.8 Software ..........................................................................................122
2.8.1 Software identification ......................................................122
2.8.2 PLC software ....................................................................123
2.8.3 Additional control loops or software options.....................123
2.8.4 NC software exchange on the TNC 640 ...........................132
2.8.5 Installing a Service Pack ....................................................142
2.8.6 Special features of the software .......................................143
2.8.7 HEROS 5 operating system ..............................................145
2.8.8 Functional safety (FS) ........................................................156
2.8.9 Monitoring hardware changes ..........................................157
2.8.10 Data backup ......................................................................158
2.9 Released NC Software....................................................................159

3 Mounting and electrical installation


3.1 General information........................................................................161
3.1.1 Safety precautions ............................................................161
3.1.2 Degrees of protection .......................................................162
3.1.3 Electromagnetic compatibility ...........................................163
3.1.4 ESD protection ..................................................................164
3.2 Environmental conditions ..............................................................166
3.2.1 Storage and operating temperatures ................................166
3.2.2 Heat Generation and Cooling ............................................168
3.2.3 Limit values for ambient conditions ..................................169
3.2.4 Installation elevation..........................................................169
3.2.5 Mounting position of components in the electrical
cabinet...............................................................................170
3.2.6 Mounting position of UMC 111 (FS) .................................171
3.2.7 Mounting position of UEC 11x (FS) ...................................172
3.2.8 Mounting position of MC 7422, MC 7522, MC 7222,
MC 6222 ...........................................................................173
3.2.9 Mounting position of MC 7532 .........................................174
3.2.10 Mounting position of BF 750.............................................175
3.2.11 Mounting position of BF 760.............................................176
3.2.12 Mounting position of PLB 6xxx .........................................177
3.3 Handling the HDR hard disk...........................................................178
3.4 Mounting the Solid State Disk (SSD)............................................179
3.5 Overview of components ...............................................................180
3.6 HSCI..................................................................................................187
3.6.1 Introduction .......................................................................187
3.6.2 Topology............................................................................191
3.6.3 HSCI interface ...................................................................192

4 HEIDENHAIN Technical Manual TNC 640


3.7 TNC 640 connection overview .......................................................193
3.7.1 Designation of the MC and IPC main computer units.......193
3.7.2 MC 7522............................................................................194
3.7.3 MC 7532............................................................................195
3.7.4 MC 6241............................................................................196
3.7.5 MC 6242............................................................................197
3.7.6 MC 6341............................................................................198
3.7.7 MC 6542............................................................................199
3.7.8 MC 6541, MC 6641...........................................................200
3.7.9 IPC 6641............................................................................201
3.7.10 ITC 755 Industrial Thin Client ............................................203
3.7.11 ITC 750 Industrial Thin Client ............................................204
3.7.12 ITC 760 Industrial Thin Client ............................................205
3.7.13 Model numbers for the CC controller units.......................206
3.7.14 CC 6106.............................................................................206
3.7.15 CC 6108.............................................................................207
3.7.16 CC 6110.............................................................................208
3.7.17 UMC 111 FS......................................................................209
3.7.18 UEC 11x with DC-link connection .....................................210
3.7.19 UEC 11x FS with DC-link connection ................................212
3.7.20 General information on the PLB 6xxx................................214
3.7.21 PLB 62xx ...........................................................................218
3.7.22 PLB 62xx FS ......................................................................218
3.7.23 PLB 61xx ...........................................................................219
3.7.24 PLB 61xx FS ......................................................................219
3.7.25 PLD-H and PLA-H I/O modules .........................................220
3.7.26 VS 101 ...............................................................................225
3.8 Supply voltages in the HSCI system .............................................226
3.8.1 Current consumption of the HSCI components ................229
3.8.2 X90: +24 V NC output of the UxC 11x(FS) ........................231
3.8.3 X101: NC power supply.....................................................232
3.8.4 Power supply of the CC 61xx............................................233
3.8.5 PSL 13x low-voltage power supply unit ............................239
3.9 MS 110 / MS 111 installation kit for double-row configuration.249
3.9.1 General information...........................................................249
3.9.2 Double-row configuration ..................................................250
3.9.3 Connection overview.........................................................252
3.10 UxC 11x (FS): Power supply and motor connection....................256
3.10.1 UMC 111 FS......................................................................256
3.10.2 UEC 11x (FS) .....................................................................260
3.11 UxC 11x(FS): Meaning of the LEDs................................................270
3.12 Power Supply for PLC Outputs......................................................271
3.13 Power supply for PLB 6xxx (FS).....................................................274
3.14 Meaning of the LED on PLB 6xxx ..................................................275
3.15 Power supply for control-is-ready signal......................................276
3.16 Drive controller, enabling ..............................................................277
3.17 Digital PLC inputs/outputs.............................................................278
3.17.1 UxC 11x (FS): Digital PLC inputs/outputs ..........................289
3.18 Analog PLC inputs/outputs............................................................296

September 2015 5
3.19 Field bus systems............................................................................299
3.19.1 PROFIBUS-DP ...................................................................299
3.19.2 PROFINET-IO ....................................................................302
3.19.3 PROFINET IO and Python .................................................308
3.20 IOconfig............................................................................................314
3.21 Buffer battery in MC 7xxx(T), MC 61xx(T) ....................................317
3.22 Buffer battery in MC 6441, MC 6541, MC 6641.............................319
3.23 Buffer battery of the MC 6542, IPC 6490 .......................................321
3.24 Buffer battery in MC 6240, MC 6241, MC 6341.............................323
3.25 Connecting the encoders ..............................................................325
3.25.1 Miscellaneous ...................................................................325
3.25.2 Input of position encoder .................................................326
3.25.3 Input of Speed Encoder ..................................................329
3.26 Connecting the motor power modules (only CC 61xx) ...............336
3.27 Analog nominal value output ........................................................337
3.27.1 CMA-H 04-04-00—Pin layout ............................................339
3.28 Touch probes...................................................................................342
3.29 Data interfaces ...............................................................................344
3.29.1 USB interface ....................................................................347
3.29.2 HDL interface ....................................................................348
3.30 MB 720 (FS) machine operating panel ..........................................349
3.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for
OEM-specific machine operating panel ........................................360
3.32 TE 730, TE 720 keyboard unit.........................................................374
3.33 TE 735 (FS) keyboard unit ..............................................................376
3.34 Keyboard unit, TE 740.....................................................................379
3.35 TE 745 (FS) keyboard unit ..............................................................381
3.36 BF 750 15-inch TFT display unit .....................................................384
3.37 BF 760 19-inch TFT display unit .....................................................386
3.38 Handwheel input.............................................................................389
3.38.1 HR 4xx (FS), HR 520 (FS) or HR 550 (FS) portable
handwheel.........................................................................389
3.38.2 HR 510 portable handwheel..............................................393
3.38.3 HR 520 FS, HR 510 FS, HR 410 FS safety-oriented
handwheels ......................................................................396
3.38.4 HR 550 FS wireless handwheel ........................................403
3.38.5 HR 130 panel-mounted handwheel...................................422
3.38.6 HRA 110 handwheel adapter ............................................423
3.39 CML 110 Capacitor Module ............................................................425
3.40 Connecting cables: Specifications.................................................427

6 HEIDENHAIN Technical Manual TNC 640


3.41 Dimensions ......................................................................................429
3.41.1 MC 6241............................................................................430
3.41.2 MC 6341, MC 6x51, IPC 6341 ..........................................431
3.41.3 MC 6541, MC 6641, IPC 6641 ..........................................432
3.41.4 MC 6242............................................................................433
3.41.5 MC 6542............................................................................434
3.41.6 MC 7522............................................................................435
3.41.7 MC 7532............................................................................436
3.41.8 MB 720 (FS) ......................................................................437
3.41.9 TE 720 / TE 730 .................................................................438
3.41.10 TE 735 (FS) ........................................................................439
3.41.11 TE 740 ...............................................................................440
3.41.12 TE 745 (FS) ........................................................................441
3.41.13 BF 750 ...............................................................................442
3.41.14 BF 760 ...............................................................................443
3.41.15 ITC 755 ..............................................................................444
3.41.16 ITC 750 ..............................................................................445
3.41.17 ITC 760 ..............................................................................446
3.41.18 CC 6106.............................................................................447
3.41.19 CC 6108 / CC 6110............................................................448
3.41.20 UMC 111 (FS)....................................................................449
3.41.21 UEC 113 (FS), UEC 111 (FS), UEC 112 (FS) ......................450
3.41.22 PL 6xxx (FS).......................................................................451
3.41.23 PLB 6001 (FS) or PLB 6002 FS..........................................452
3.41.24 PSL 130 .............................................................................453
3.41.25 PSL 135 .............................................................................454
3.41.26 MS 11x ..............................................................................455
3.41.27 Adapter Block for the Data Interface.................................456
3.41.28 USB hub ............................................................................457
3.41.29 Line drop compensator .....................................................458
3.41.30 KTY adapter connector ......................................................459
3.41.31 Handwheels ......................................................................460
3.41.32 Touch probes.....................................................................466
3.41.33 VS 101 camera system .....................................................481
3.41.34 CML 110............................................................................481
3.41.35 USB hub for operating panel (ID 582884-xx) .....................482
3.42 Grounding diagram for TNC 640 with modular
HEIDENHAIN inverter system and PSL 130 ..................................483
3.43 Grounding diagram for TNC 640 with modular HEIDENHAIN
inverter system and power supply unit integrated in UV(R)......484
3.44 Basic circuit diagram for TNC 640 .................................................485
3.45 TNC 640 cable overview, CC and MC in electrical cabinet..........487
3.46 TNC 640 cable overview, CC and MC in operating panel............488
3.47 TNC 640 cable overview, UEC and MC in electrical cabinet .......489
3.48 TNC 640 cable overview, UEC and MC in operating panel .........490
3.49 Cable overview for TNC 640—Accessories...................................491
3.50 Cable overview for TNC 640—Encoders .......................................492
3.51 Cable overview for TNC 640—Inverter system ............................493

September 2015 7
4 Machine parameters
4.1 General information........................................................................495
4.2 The Machine Parameters mode of operation...............................497
4.2.1 Call the configuration editor ..............................................497
4.2.2 Machine parameters, entering and changing ....................499
4.2.3 Accessing machine parameters via MP numbers.............512
4.2.4 Managing configuration files .............................................515
4.2.5 Sorting file content............................................................516
4.2.6 Attribute information .........................................................517
4.2.7 Access protection / options...............................................526
4.2.8 Update rules ......................................................................527
4.2.9 Removing syntax errors ....................................................547
4.2.10 Resets the update version ................................................547
4.2.11 Backup of parameters .......................................................548
4.2.12 Saving OEM-specific backup with the configuration
editor and restoring it ........................................................550
4.2.13 Resetting system settings ................................................550
4.3 User parameters..............................................................................552
4.3.1 Configuration of the user parameters ...............................553
4.3.2 Example: ...........................................................................559
4.3.3 XML commands for creating the layout files ....................561
4.4 The KeySynonym function.............................................................564
4.5 Allocation of configuration data ...................................................566
4.6 Structure of a parameter file..........................................................568
4.7 MP subfiles ......................................................................................571
4.7.1 Syntax of machine-parameter subfile................................571
4.7.2 Loading and editing MP subfile with the configuration editor572
4.7.3 Activating the MP subfile via the PLC ...............................575
4.7.4 Activating MP subfiles during system start-up .................578
4.7.5 Displaying/editing data records in the configuration
editor .................................................................................579
4.8 Reading and writing machine parameters in the NC program ..581
4.8.1 Reading machine parameters in the NC program
(CFGREAD)........................................................................581
4.8.2 Writing machine parameters in the NC program
(CFGWRITE) ......................................................................585
4.9 Reading or changing machine parameters via PLC modules .....587
4.10 Parameter sets, switching..............................................................602
4.11 List of machine parameters ...........................................................613
4.11.1 "System" group..................................................................613
4.11.2 "Channels" group ...............................................................769
4.11.3 "Axes" group ......................................................................815
4.11.4 KeySynonym .....................................................................927
4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers ...928
4.12.1 Measuring systems and machine axes .............................928
4.12.2 Positioning and feedback control ......................................930
4.12.3 PWM interface (DSP) ........................................................934
4.12.4 Spindle control (1st spindle) ..............................................939
4.12.5 Integrated PLC ..................................................................941
4.12.6 Serial interface ..................................................................942
4.12.7 Touch probe ......................................................................942

8 HEIDENHAIN Technical Manual TNC 640


4.12.8 Tool touch probe for tool measurement............................943
4.12.9 KinematicsOpt...................................................................943
4.12.10 Tapping..............................................................................944
4.12.11 Display and programming..................................................944
4.12.12 Machining and program run ..............................................946
4.12.13 Hardware...........................................................................947

5 Modules and PLC operands


5.1 Overview of modules......................................................................949
5.2 Overview of the PLC operands ......................................................959
5.2.1 Groups of the PLC operands .............................................959
5.2.2 PLC operands of the General Data group..........................959
5.2.3 PLC Operands of the "Operating Mode Group" Group ......961
5.2.4 PLC Operands of the "Machining Channels" Group...........962
5.2.5 PLC operands of the Axis group........................................965
5.2.6 PLC operands of the Spindle group...................................967
5.2.7 PLC operands of the Axes and Spindles group .................969

6 Configuring the axes and spindle


6.1 Machine structure ...........................................................................973
6.1.1 Adapting the TNC 640 to the machine ..............................973
6.1.2 Definition of axes ..............................................................974
6.2 Machining channels, configuring ..................................................977
6.2.1 Configuring a machining channel ......................................977
6.2.2 Reference marks, traversing .............................................982
6.2.3 Returning to the contour (block scan) ...............................983
6.3 Configuration of axes .....................................................................987
6.3.1 Axis designations and coordinates ....................................989
6.3.2 Programmable axes...........................................................992
6.3.3 Physical axes .....................................................................996
6.3.4 Display of axes on the screen .........................................1008
6.3.5 Kinematic properties of axes...........................................1014
6.3.6 Manually operated axis (counter axis) .............................1016
6.3.7 Introducing a new NC axis ..............................................1018
6.4 Encoders ........................................................................................1030
6.4.1 Type of position encoder.................................................1030
6.4.2 Signal period of encoders................................................1034
6.4.3 Distance-coded reference marks ....................................1044
6.4.4 Connecting the encoders ................................................1046
6.4.5 Connecting the encoders, PWM output on the CC 61xx 1048
6.4.6 Connecting the encoders to the UEC 11x.......................1053
6.4.7 Defining the traverse direction ........................................1055
6.4.8 Encoder monitoring .........................................................1059
6.4.9 Linear and torque motors ................................................1064
6.5 Analog drives.................................................................................1067
6.6 Reading and writing axis information ........................................1069
6.6.1 Axis information, reading.................................................1069
6.6.2 Writing axis information—activating and deactivating
axes .................................................................................1077

September 2015 9
6.7 Traverse ranges.............................................................................1088
6.7.1 Configuring traverse ranges ............................................1089
6.7.2 Switchover traverse range ..............................................1096
6.7.3 Machines with several working spaces / alternating
table machining ...............................................................1097
6.7.4 Milling heads, changing...................................................1100
6.7.5 Compare with: Traverse range switchover / head
change with iTNC 530 and TNC 640 ...............................1103
6.8 Software limit switches ...............................................................1104
6.8.1 Overwrite software limit switches ..................................1105
6.9 Lubrication pulse...........................................................................1106
6.10 PLC axes.........................................................................................1107
6.10.1 Synchronizing Functions (option 135) ............................1122
6.10.2 Hirth coupling ..................................................................1137
6.11 Axis-error compensation..............................................................1140
6.11.1 Backlash compensation ..................................................1141
6.11.2 Linear axis error compensation .......................................1146
6.11.3 Nonlinear axis error compensation..................................1148
6.11.4 Compensation of thermal expansion ..............................1155
6.11.5 Compensation of static friction .......................................1157
6.11.6 Compensation of sliding friction......................................1158
6.12 Machine kinematics ......................................................................1161
6.12.1 Configuring the machine kinematics ...............................1164
6.12.2 Reading / changing the kinematics in the NC program ...1185
6.12.3 Finding/activating kinematics through the PLC ...............1187
6.12.4 Kinematic switch-over .....................................................1189
6.12.5 Tool-carrier kinematics descriptions ................................1192
6.12.6 Temperature compensation in the kinematics................1202
6.12.7 KinematicsOpt.................................................................1210
6.13 Tilting and swivel axes .................................................................1218
6.13.1 "Tilt working plane" function (software option 8) .............1218
6.13.2 Virtual tool axis (VT) .........................................................1224
6.14 Parallel axes...................................................................................1225
6.15 Gantry/synchronized axes ...........................................................1227
6.15.1 Gantry axes .....................................................................1228
6.15.2 Master-slave torque control ............................................1239
6.15.3 Brake test for synchronized axes ....................................1247
6.16 Reference marks............................................................................1251
6.16.1 Definition.........................................................................1251
6.16.2 Reference marks, traversing ...........................................1252
6.16.3 Defining the process of traversing the reference marks.1256
6.16.4 "Traverse Reference Points" operating mode..................1267

10 HEIDENHAIN Technical Manual TNC 640


6.17 The control loop ............................................................................1270
6.17.1 Block diagram of control loop..........................................1270
6.17.2 Relation between jerk, acceleration, velocity and
distance ...........................................................................1271
6.17.3 Geometry filter ................................................................1273
6.17.4 Feed-rate smoothing .......................................................1276
6.17.5 Nominal position value filter ............................................1279
6.17.6 Look-ahead ......................................................................1291
6.17.7 Advanced Dynamic Prediction (ADP) ..............................1310
6.17.8 Interpolator ......................................................................1312
6.17.9 Position controller............................................................1313
6.17.10 Activating and deactivating position control loops ..........1323
6.17.11 Feed-rate enable..............................................................1327
6.17.12 Speed controller ..............................................................1328
6.17.13 Filters in the speed controller and position controller
when using the CC 61xx .................................................1332
6.17.14 Filter order for separate low-pass filter in the speed
controller on the CC 61xx and CC 424: ..........................1338
6.17.15 Dynamic determination of load .......................................1339
6.17.16 Peculiarities in weakened-field operation with
CC 61xx and CC 424 .......................................................1344
6.17.17 Active damping of low-frequency oscillations .................1346
6.17.18 Acceleration feedforward control ....................................1348
6.17.19 IPC, holding torque, following error in the jerk phase .....1351
6.17.20 HSCI: Switching drives on and off, enabling the drive
controller .........................................................................1356
6.17.21 Current controller ............................................................1365
6.17.22 Braking the drives in case of an EMERGENCY STOP
and a power failure..........................................................1371
6.17.23 Limiting the power, braking power and torque ...............1373
6.17.24 Controller parameters for manual traverse......................1383
6.17.25 Controller parameters for analog axes ............................1384
6.17.26 Weakened field operation ...............................................1395
6.17.27 Motor with wye/delta switchover ...................................1406
6.17.28 Speed-dependent switching of the PWM frequency ......1409
6.17.29 LIFTOFF function.............................................................1412
6.17.30 Torque Ripple Compensation (TRC) ................................1415
6.17.31 Torsion compensation .....................................................1418
6.17.32 Crossover Position Filter (CPF)........................................1420
6.17.33 Dynamic Precision, Dynamic Efficieny ............................1423
6.17.34 AFC – Adaptive Feed Control (option 45) ........................1425
6.17.35 CTC – Cross Talk Compensation (option 141) ...............1445
6.17.36 Position Adaptive Control (PAC), option 142 ...................1451
6.17.37 Load Adaptive Control (LAC), option 143 ........................1452
6.17.38 Motion Adaptive Control (MAC), option 144 ...................1468
6.17.39 Active Chatter Control (ACC), option 145).......................1470
6.17.40 AVD – Active Vibration Damping (option 146) .................1473
6.17.41 KinematicsComp (software option 52) –introduction ......1475
6.17.42 KinematicsComp (software option 52) –
configuration....................................................................1485

September 2015 11
6.18 Monitoring functions ....................................................................1494
6.18.1 Monitoring the drives ......................................................1494
6.18.2 Monitoring the drives ......................................................1496
6.18.3 Position monitoring .........................................................1498
6.18.4 Movement monitoring ....................................................1504
6.18.5 Standstill monitoring .......................................................1506
6.18.6 Positioning window .........................................................1507
6.18.7 Temperature monitoring .................................................1511
6.18.8 I2t monitoring ..................................................................1515
6.18.9 Current utilization of drive motors ..................................1526
6.18.10 Status of HEIDENHAIN hardware and software .............1528
6.18.11 Motor brake.....................................................................1532
6.18.12 Emergency stop monitoring............................................1544
6.18.13 Monitoring functions when using the CC 61xx and CC 424 1555
6.18.14 EN 13849-1 on the TNC 640 with HSCI without
functional safety (FS).......................................................1557
6.19 Spindles .........................................................................................1558
6.19.1 Configuring spindles........................................................1558
6.19.2 Spindle in position control loop .......................................1560
6.19.3 Spindle in speed control..................................................1572
6.19.4 Filtering the acceleration values......................................1580
6.19.5 Controlling the spindle ....................................................1581
6.19.6 Switching the operating modes ......................................1597
6.19.7 Analog axis/spindle with unipolar motor .........................1600
6.19.8 Spindle Synchronism (option 131)...................................1602
6.19.9 Spindle of the kinematic model.......................................1606
6.19.10 Gear shifting....................................................................1607
6.19.11 Tapping............................................................................1607
6.19.12 Alternating operation of several spindles ........................1612
6.19.13 C-axis operation...............................................................1614
6.19.14 Volts-per-hertz control mode ...........................................1616
6.19.15 Tools with gears..............................................................1619
6.19.16 Advanced spindle interpolation (option 96) .....................1621
6.20 Turning operations on milling machines (option 50) ................1622
6.20.1 Toggling between milling and turning modes .................1623
6.20.2 Aligning the workpiece coordinate system and the
tool (Cycle 800) ...............................................................1631
6.21 Measuring the imbalance, monitoring the imbalance,
balancing........................................................................................1638
6.21.1 Unbalance in turning operations......................................1638
6.21.2 Overview of functions .....................................................1639
6.21.3 Applicability of the unbalance detection..........................1642
6.21.4 Unbalance calibration ......................................................1642
6.21.5 Machine parameters for measuring the unbalance.........1644

12 HEIDENHAIN Technical Manual TNC 640


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 CC61 xx 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 ............................................1667
6.22.9 Configure HEIDENHAIN drive components via
electronic keyboard .........................................................1670
6.22.10 Field orientation...............................................................1672
6.22.11 Field angle determination on the CC 61xx ......................1675
6.22.12 Reading or setting the field angle via the PLC ................1689
6.23 Commissioning .............................................................................1691
6.23.1 Tables for power modules, supply modules and motors 1691
6.23.2 Field orientation...............................................................1708
6.23.3 Preparation ......................................................................1708
6.23.4 Commissioning of digital axes.........................................1714
6.23.5 Commissioning of analog axes........................................1731
6.23.6 Configuring the nominal position value filter and
look-ahead parameters ....................................................1752
6.23.7 Commissioning the digital spindle...................................1774
6.24 Integrated oscilloscope ................................................................1779
6.24.1 Fundamentals..................................................................1779
6.24.2 Preparing a recording ......................................................1783
6.24.3 Recording signals ............................................................1787
6.24.4 Analyzing the recording ...................................................1789
6.24.5 Saving and loading recordings.........................................1791
6.24.6 Operation via NC program...............................................1792
6.24.7 Circular interpolation test with the integrated
oscilloscope.....................................................................1794
6.24.8 Configuring the colors of the oscilloscope display ..........1795
6.25 Diagnosis with the online monitor (OLM) ..................................1799
6.25.1 Introduction .....................................................................1799
6.25.2 Using the OLM................................................................1800
6.25.3 Screen layout...................................................................1802
6.25.4 Group of NC axes ............................................................1805
6.25.5 Group of spindle commands ...........................................1825
6.25.6 Group of NC channels .....................................................1827
6.25.7 Hardware group...............................................................1833
6.25.8 Group of drive commands...............................................1846
6.25.9 Auxiliary group.................................................................1847
6.25.10 PLC group........................................................................1853
6.25.11 Queue trace.....................................................................1856
6.25.12 Frequent causes of error .................................................1858
6.26 Block diagram for TNC 640 with CC 61xx...................................1859

September 2015 13
7 Machine interfacing
7.1 Display and operation...................................................................1861
7.1.1 General settings for the display screen...........................1861
7.1.2 Settings for soft key rows ...............................................1864
7.1.3 Settings for 3-D simulation graphics ...............................1865
7.1.4 Position and status display ..............................................1866
7.1.5 Unit of measurement for display and operation ..............1874
7.1.6 Conversational language .................................................1875
7.1.7 File management ............................................................1878
7.1.8 Format for NC programs .................................................1879
7.1.9 Settings for the Programming mode of operation ..........1880
7.1.10 Defining the output path for the function FN16: F-PRINT ... 1887
7.1.11 Binary file management ..................................................1888
7.1.12 Access rights to drives and directories ...........................1890
7.1.13 Code numbers.................................................................1892
7.1.14 Programming station mode.............................................1896
7.1.15 Operating modes / control operation in the operating
mode group.....................................................................1900
7.1.16 Retraction after power failure .........................................1908
7.1.17 Control operation in the machining channel ....................1910
7.1.18 Error messages and log files...........................................1931
7.1.19 PLC pop-up window........................................................1963
7.1.20 TNCguide – context-sensitive help system (user
documentation) ...............................................................1966
7.1.21 Table editor .....................................................................1977
7.1.22 Machine zero point..........................................................1983
7.1.23 Cycles..............................................................................1988
7.1.24 Diagnostic functions........................................................1992
7.1.25 Bus Diagnosis .................................................................2016
7.1.26 HwViewer .......................................................................2022
7.1.27 Window manager (XFCE) ................................................2027
7.1.28 Remote Desktop Manager (software option 133) ..........2029
7.1.29 ITC 7xx—Connection and configuration ..........................2054
7.2 Small PLC window........................................................................2061
7.3 PLC soft keys .................................................................................2065
7.3.1 soft key resource file.......................................................2066
7.3.2 Soft-key project file for HR 420, HR 5xx .........................2073
7.4 Switching the control on/off .......................................................2075
7.4.1 Starting up the control.....................................................2075
7.4.2 Shutting down the control...............................................2080
7.5 Keystroke simulation....................................................................2090
7.5.1 Control keyboard .............................................................2090
7.5.2 Machine operating panel.................................................2097

14 HEIDENHAIN Technical Manual TNC 640


7.6 DCM—Dynamic Collision Monitoring (Option 40) .....................2098
7.6.1 DCM—Monitoring the working space for collisions........2098
7.6.2 Limited DCM—important notes ......................................2099
7.6.3 CMO—Collision Monitored Object..................................2104
7.6.4 DCM with M3D (Mesh3D) ..............................................2106
7.6.5 DCM – Function and operation........................................2114
7.6.6 Optimizing the DCM performance ..................................2117
7.6.7 Integration of CMOs in the kinematics ...........................2119
7.6.8 Configuration of the CMOs .............................................2120
7.6.9 DCM—Additional settings / information / PLC modules .2129
7.6.10 Using KinematicsDesign on the control ..........................2135
7.7 Pallet editor ...................................................................................2136
7.8 Electronic handwheel ...................................................................2143
7.8.1 Serial handwheel .............................................................2143
7.8.2 Handwheel at position encoder input..............................2150
7.8.3 Traverse per handwheel revolution .................................2156
7.8.4 Assign a handwheel to an axis ........................................2157
7.8.5 HR 410 portable handwheel............................................2161
7.8.6 HR 510 portable handwheel............................................2163
7.8.7 HR 420 portable handwheel............................................2165
7.8.8 HR 520 portable handwheel............................................2170
7.8.9 HR 550 handwheel with wireless transmission ..............2172
7.8.10 HR 150 panel-mounted handwheels with HRA 110
handwheel adapter..........................................................2179
7.9 Override .........................................................................................2182
7.9.1 Override devices .............................................................2182
7.9.2 Override functions...........................................................2186
7.9.3 Compensation for potentiometers ..................................2192
7.10 Incremental jog positioning .........................................................2194
7.11 Operating times and system times .............................................2196
7.11.1 Operating time recording ................................................2196
7.11.2 Date/time.........................................................................2201
7.12 Tool changer..................................................................................2202
7.12.1 Tool table and pocket table .............................................2202
7.12.2 Automatic tool recognition ..............................................2241
7.12.3 Tool Usage Test ..............................................................2242
7.12.4 Controlling the tool changer ............................................2248
7.12.5 Extended tool management ............................................2260
7.13 Touch probe...................................................................................2282
7.13.1 Using the touch probes ...................................................2287
7.13.2 Touch probe cycles .........................................................2295
7.13.3 Tool measurement ..........................................................2298
7.13.4 Nominal position value filters during measurement
with TS and TT ................................................................2311
7.14 Visual Setup Control (software option 136) ...............................2313
7.14.1 Fundamentals..................................................................2313
7.14.2 Hardware.........................................................................2314
7.14.3 Commissioning................................................................2315
7.14.4 Adapting the PLC ............................................................2319

September 2015 15
8 PLC programming
8.1 PLC functions.................................................................................2321
8.1.1 The API 3 and API 4 symbolic memory interfaces..........2328
8.1.2 HEIDENHAIN PLC basic program ...................................2338
8.1.3 Selecting the PLC programming mode of operation .......2341
8.1.4 PLC main menu...............................................................2342
8.1.5 File management ............................................................2344
8.1.6 The API DATA function ...................................................2345
8.1.7 The WATCH LIST function ..............................................2347
8.1.8 The I/O-FORCE LIST .......................................................2350
8.1.9 The TABLE function ........................................................2352
8.1.10 The TRACE function........................................................2355
8.1.11 The COMPILE Function ..................................................2358
8.1.12 The EDIT function ...........................................................2359
8.2 PLC Compiler .................................................................................2362
8.2.1 Configuration file for the PLC compiler ...........................2362
8.2.2 Conditional compilation ...................................................2367
8.3 Configuring PLC input/output systems ......................................2369
8.4 Operands........................................................................................2371
8.4.1 Overview of operands.....................................................2371
8.4.2 Operand Addressing (Byte, Word, Double Word) ...........2376
8.4.3 Detecting array overflow ................................................2376
8.4.4 Timers and counters ......................................................2377
8.4.5 HEIDENHAIN time components (from
NC-SW 597110-10) .........................................................2387
8.4.6 Fast PLC inputs ...............................................................2396
8.5 Data organization..........................................................................2398
8.5.1 Data organization on the HDR hard disk .........................2398
8.5.2 Data organization on the SSDR hard disk........................2398
8.5.3 Encrypted PLC Partition (PLCE:) .....................................2399
8.5.4 Compressing graphic files ...............................................2408
8.5.5 Configuring the displayed drives and directories in
the file manager ..............................................................2409
8.5.6 PLC system files .............................................................2411
8.6 M Functions (M Strobe)................................................................2420
8.6.1 Assigning M functions to the machining channels .........2420
8.6.2 Configuration of M functions ..........................................2421
8.6.3 Overview of M functions of the TNC ..............................2429
8.7 S function (S strobe).....................................................................2434
8.7.1 Assigning S functions to the machining channels...........2434
8.7.2 Configuration of S function .............................................2435
8.8 T functions (T strobe) ...................................................................2447
8.8.1 Assigning T functions to the machining channels...........2447
8.8.2 Configuration of T functions ............................................2448
8.9 Alias functions (Alias strobe) .......................................................2457
8.9.1 Assigning alias functions to the machining channels ......2457
8.9.2 Configuration of alias functions .......................................2458
8.10 General settings for the PLC run-time system...........................2460
8.11 Python settings (option 46)..........................................................2463

16 HEIDENHAIN Technical Manual TNC 640


8.12 Tables .............................................................................................2466
8.12.1 Notes on the tables .........................................................2467
8.12.2 Table types of the TNC 640.............................................2469
8.12.3 Creating a new table type ...............................................2472
8.12.4 Freely definable tables ....................................................2487
8.12.5 Configuring table filters ...................................................2489
8.12.6 Defining a table prototype ...............................................2494
8.12.7 Creating a new table with the file manager ....................2496
8.12.8 Inserting or deleting additional columns in/from an
existing table ...................................................................2497
8.12.9 Removing column names and column descriptions........2499
8.12.10 Defining the path for OEM tables ...................................2499
8.12.11 Symbolic names for tables ..............................................2500
8.12.12 Editing tables via the PLC ...............................................2502
8.12.13 Access to tables via SQL commands..............................2518
8.12.14 PLC modules for the SQL statements ............................2533
8.13 Data transfer NC => PLC, PLC => NC...........................................2551
8.13.1 Introduction .....................................................................2551
8.13.2 Data transfer NC program = PLC ("FN19: PLC =" or
"FN29: PLC ="..................................................................2552
8.13.3 Q parameters ..................................................................2554
8.13.4 Data transfer NC program <=> NC (FN17:
SYSWRITE and FN18: SYSREAD) ...................................2557
8.13.5 Data transfer machine parameters => PLC ....................2592
8.13.6 Data transfer PLC operand <=> NC program .................2596
8.13.7 Access to data from the NC program..............................2602
8.14 NC macros .....................................................................................2603
8.14.1 CANCEL cycle .................................................................2607
8.14.2 INIBLOCK cycle...............................................................2608
8.14.3 INICYCLE cycle ...............................................................2609
8.14.4 INIPROG cycle.................................................................2610
8.14.5 Pallet control cycle ..........................................................2610
8.14.6 PROGEND cycle..............................................................2613
8.14.7 PROGSELECT cycle ........................................................2613
8.14.8 TOOLCALL cycle.............................................................2614
8.14.9 TOOLDEF cycle...............................................................2618
8.14.10 STARTUP cycle ...............................................................2621
8.14.11 Calling OEM macros with the TT cycle ...........................2623
8.15 Program creation ..........................................................................2624
8.15.1 ASCII editor .....................................................................2624
8.15.2 Program structure ...........................................................2625
8.15.3 Program Structure ...........................................................2626
8.16 Commands.....................................................................................2627
8.16.1 Overview .........................................................................2627
8.16.2 LOAD (L)..........................................................................2630
8.16.3 LOAD NOT (LN)...............................................................2632
8.16.4 LOAD TWO'S COMPLEMENT (L–) .................................2634
8.16.5 LOAD BYTE (LB) .............................................................2635
8.16.6 LOAD WORD (LW)..........................................................2635
8.16.7 LOAD DOUBLE WORD (LD) ...........................................2636
8.16.8 ASSIGN (=) ......................................................................2636
8.16.9 ASSIGN BYTE (B=)..........................................................2637
8.16.10 ASSIGN WORD (W=) ......................................................2638
8.16.11 ASSIGN DOUBLE WORD (D=) .......................................2638

September 2015 17
8.16.12 ASSIGN NOT (=N) ...........................................................2639
8.16.13 ASSIGN TWO'S COMPLEMENT (=–) .............................2639
8.16.14 SET (S).............................................................................2640
8.16.15 RESET (R)........................................................................2641
8.16.16 SET NOT (SN)..................................................................2642
8.16.17 RESET NOT (RN).............................................................2643
8.16.18 AND (A) ...........................................................................2644
8.16.19 AND NOT (AN) ................................................................2646
8.16.20 OR (O) .............................................................................2647
8.16.21 OR NOT (ON) ..................................................................2648
8.16.22 EXCLUSIVE OR (XO) .......................................................2650
8.16.23 EXCLUSIVE OR NOT (XON) ............................................2652
8.16.24 ADDITION (+) ..................................................................2653
8.16.25 SUBTRACTION (–)...........................................................2654
8.16.26 MULTIPLICATION (X)......................................................2654
8.16.27 DIVISION (/).....................................................................2655
8.16.28 REMAINDER (MOD) .......................................................2656
8.16.29 INCREMENT (INC) ..........................................................2656
8.16.30 DECREMENT (DEC) ........................................................2657
8.16.31 EQUAL TO (==)...............................................................2657
8.16.32 LESS THAN () ..................................................................2658
8.16.33 GREATER THAN (>) ......................................................2659
8.16.34 LESS THAN OR EQUAL TO (=).......................................2660
8.16.35 GREATER THAN OR EQUAL TO (>=)...........................2661
8.16.36 UNEQUAL (<>) .............................................................2662
8.16.37 AND [ ] (A[ ]) ....................................................................2663
8.16.38 AND NOT [ ] (AN[ ]) .........................................................2665
8.16.39 OR [ ] (O[ ]) ......................................................................2665
8.16.40 OR NOT [ ] (ON[ ]) ...........................................................2665
8.16.41 EXCLUSIVE OR [ ] (XO[ ]) ................................................2665
8.16.42 EXCLUSIVE OR NOT [ ] (XON[ ]) .....................................2665
8.16.43 ADDITION [ ] (+[ ]) ...........................................................2666
8.16.44 SUBTRACT [ ] (–[ ]) ..........................................................2667
8.16.45 MULTIPLY [ ] (x[ ]) ...........................................................2667
8.16.46 DIVIDE [ ] (/[ ])..................................................................2667
8.16.47 REMAINDER [ ] (MOD[ ]) ................................................2667
8.16.48 EQUAL TO [ ] (==[ ])........................................................2668
8.16.49 LESS THAN [ ] (<[ ]).......................................................2669
8.16.50 GREATER THAN [ ] (>[ ]) ...............................................2669
8.16.51 LESS THAN OR EQUAL TO [ ] (<=[ ]) ...........................2669
8.16.52 GREATER THAN OR EQUAL TO [ ] (>=[ ])....................2669
8.16.53 NOT EQUAL TO [ ] (<>[ ]) .............................................2669
8.16.54 SHIFT LEFT (<<)............................................................2670
8.16.55 SHIFT RIGHT (>>) .........................................................2671
8.16.56 BIT SET (BS)....................................................................2672
8.16.57 BIT CLEAR (BC)...............................................................2673
8.16.58 BIT TEST (BT) ..................................................................2674
8.16.59 PUSH DATA ONTO THE DATA STACK (PS) ...................2675
8.16.60 PULL DATA FROM THE DATA STACK (PL) ....................2676
8.16.61 PUSH LOGIC ACCUMULATOR ONTO THE DATA
STACK (PSL)....................................................................2676
8.16.62 PUSH WORD ACCUMULATOR ONTO THE DATA
STACK (PSW) ..................................................................2677
8.16.63 PULL LOGIC ACCUMULATOR FROM THE DATA
STACK (PLL)....................................................................2677

18 HEIDENHAIN Technical Manual TNC 640


8.16.64 PULL WORD ACCUMULATOR FROM THE DATA
STACK (PLW) ..................................................................2678
8.16.65 UNCONDITIONAL JUMP (JP) .........................................2678
8.16.66 JUMP IF LOGIC ACCUMULATOR = 1 (JPT)...................2679
8.16.67 JUMP IF LOGIC ACCUMULATOR = 0 (JPF)...................2680
8.16.68 CALL MODULE (CM) ......................................................2680
8.16.69 CALL MODULE IF LOGIC ACCUMULATOR = 1 (CMT)..2680
8.16.70 CALL MODULE IF LOGIC ACCUMULATOR = 0 (CMF)..2681
8.16.71 END OF MODULE, END OF PROGRAM (EM)................2682
8.16.72 END OF MODULE IF LOGIC ACCUMULATOR = 1 (EMT).. 2682
8.16.73 END OF MODULE IF LOGIC ACCUMULATOR = 0 (EMF).. 2682
8.16.74 LABEL (LBL) ....................................................................2682
8.17 INDEX register (X register)...........................................................2683
8.18 Commands for string processing ................................................2685
8.19 LOAD string (L)..............................................................................2687
8.20 ADD string (+) ................................................................................2687
8.21 STORE string (=)............................................................................2687
8.22 OVERWRITE string (OVWR) .........................................................2688
8.23 EQUAL TO command for string processing (==)........................2689
8.24 LESS THAN command for string processing () ..........................2689
8.25 GREATER THAN command for string processing () ..................2689
8.26 LESS THAN OR EQUAL TO command for string processing (=) ... 2690
8.27 GREATER THAN OR EQUAL TO command for string
processing (>=) .............................................................................2690
8.28 NOT EQUAL command for string processing () .........................2691
8.29 Modules for String Processing ....................................................2692
8.30 Submit programs ..........................................................................2696
8.31 Calling the submit program (SUBM)...........................................2697
8.32 Interrogating the status of a submit program (RPLY)...............2697
8.33 Canceling a submit program (CAN) ............................................2698
8.34 Cooperative multitasking.............................................................2700
8.34.1 Starting a parallel process (SPAWN) ...............................2700
8.34.2 Control of events.............................................................2700
8.35 Constants field (KF).......................................................................2707
8.36 Program structures .......................................................................2708
8.36.1 IF ... ELSE ... ENDI structure ...........................................2709
8.36.2 REPEAT ... UNTIL structure ............................................2709
8.36.3 WHILE ... ENDW structure..............................................2710
8.37 CASE Branch..................................................................................2711
8.38 Linking files....................................................................................2712
8.39 USES statement (USES)...............................................................2712
8.40 GLOBAL Statement (GLOBAL) ....................................................2714
8.41 EXTERN statement (EXTERN) .....................................................2714
8.42 PLC modules..................................................................................2715
8.42.1 Markers, bytes, words, and double words......................2715
8.42.2 Number conversion .........................................................2718

September 2015 19
9 Data interfaces
9.1 Introduction ...................................................................................2723
9.2 The Ethernet interface ..................................................................2724
9.3 Connecting the TNC 640 to the network ....................................2725
9.3.1 Settings at the TNC 640..................................................2725
9.3.2 DHCP server ...................................................................2734
9.3.3 Sandbox ..........................................................................2740
9.3.4 VNC settings ...................................................................2742
9.3.5 Configuring network access to other devices (mount) ...2752
9.3.6 Firewall............................................................................2756
9.4 HSCI interface................................................................................2760
9.5 The USB interface of the TNC 640...............................................2762
9.6 The serial interface of the TNC 640 .............................................2767
9.6.1 RS-232-C/V.24 port..........................................................2767
9.7 Configuring the serial interface ...................................................2770
9.7.1 Control characters ...........................................................2770
9.7.2 Interfaces, configuring ....................................................2771
9.8 Data transmission protocols........................................................2784
9.8.1 Standard communications protocol.................................2784
9.8.2 Communications protocol with block check character....2786
9.8.3 LSV2 transmission protocol ............................................2789
9.9 Saving and loading files ...............................................................2790
9.10 External access administration....................................................2791
9.11 Configuring the control for TeleService 2.0 (or higher).............2792
9.12 Data transfer by PLC .....................................................................2795
9.12.1 PLC modules...................................................................2795

10 TNC 640 and Windows


10.1 General information and important notes .................................2807
10.2 IPC 6641—Industrial PC for Windows .........................................2807
10.2.1 Installing a Windows operating system ..........................2811

11 Error messages
11.1 DSP/NC error messages...............................................................2819
11.2 TNC 640 error messages during data transfer ...........................2820
11.3 Error messages of the file system ...............................................2821

12 Subject Index ........................................2823

20 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, con-
taining 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.

September 2015 1.1 General information 21


22 HEIDENHAIN Technical Manual TNC 640
1 Update Information No. 4

1.1 Overview

1.1.1 Released service packs

Attention

When needed, HEIDENHAIN prepares service packs for the various versi-
ons of the NC software. Registered customers can download these service
packs from the HEIDENHAIN FileBase on the Internet. Installation of a ser-
vice 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 requi-
red of the machine or the NC software again after having installed the ser-
vice pack.

The following service packs have been released for NC software 34059x-05:
 Service pack 1: 34059x-05 SP1 April 2015
 Service pack 2: 34059x-05 SP2 June 2015

1.1.2 Released NC Software


The following NC software has been released:
 NC software 340590-06 September 2015
 NC software 340591-06 September 2015

September 2015 1.1 Overview 23


1.2 NC software 34059x-06

1.2.1 Important changes as compared to previous versions


With NC software 34059x-06, many extensions, optimizations, and enhance-
ments were introduced for the TNC 640. Certain adjustments, such as impro-
ved compatibility with the iTNC 530, entail changes to the software as compa-
red to previous versions.
Below, you can find a short overview of changes that might require adjust-
ments to your PLC program or the machine configuration or that might change
the way you operate the TNC 640. Please review the changes listed here and
make all required adjustments to your PLC program, the machine configura-
tion or your machine manual.

Operation and NC  New: GOTO function in the Program Run, Single Block mode of opera-
programming tion
If the program runs in the Program Run, Single Block mode of operation
and has reached the end of a block, there are new ways of intervention for
the operator–compatible with the iTNC 530:
• The GOTO key now allows you to go to any other place in the NC pro-
gram, to switch-over the machine operating mode and to change Q
parameters. The soft keys for block skip and optional stops have now
been assigned functions.
• When program processing has reached the end of a block, the control-
in-operation signal (StiB) is displayed as a transparent red symbol. This
enables the operator to recognize that nearly the same operational opti-
ons exist as at standstill.
• If the user makes use of one of the new intervention functions, the look-
ahead calculation is aborted, but the OEM Cancel macro will not be run.
• For the PLC program, the new user intervention functions result in a
new workflow:
The control-in-operation symbol (NN_ChnControlInOperation) chan-
ges from TRUE to FALSE, but the NN_ChnProgCancel or
NN_ChnProgEnd markers are not set. In status 2, PLC Module 9429
returns a new substatus 1 (Program interrupted at end of block),
Module 9230 returns 4. Please review your PLC program with respect
to this new workflow and make any required adjustments.
 New: Compatibility with iTNC 530 for soft keys improved
In the Programming mode of operation, the soft key menu of the APPR/DEP
key now shows all functions in the first soft-key row.
Special feature for 15" screens:
The END soft key can be found in the second soft-key row.
In the soft key menu of the Tilt Working Plane function, you can press the
SELECT ANIMATION soft key to display animated help information for the
selected tilting function.
In the free programming of contours programming soft-key row, the new
START and START SINGLE soft keys are displayed. On 19" screens, this row
additionally includes the RESET+START soft keys.
All soft-key rows mentioned above now have a structure compatible with
the iTNC 530.

24 HEIDENHAIN Technical Manual TNC 640


Motion control and  Changed: Principle of operation of the feed rate override
DCM In previous software versions of the TNC 640, the feed rate override was
applied to the dynamic feed rate on the path. Now, the feed rate override is
applied to the programmed feed rate. This means that the operator can
reduce the feed rate to e.g. < 100% in order to find a feed rate that is as
constant as possible for workpieces where varying feed rates occur. Until
now, this was not possible on the TNC 640 because the dynamic feed rate
was reduced even in areas where the programmed feed rate was not rea-
ched at 100%. This new behavior is the same as on the iTNC 530.
 New: DCM tolerances can only be used with active ADP
Please note the following new constraint that applies to DCM (Dynamic Col-
lision Monitoring, option 40) configuration from NC software 34059x-06:
If DCM tolerances are activated(CfgDCM/maxLinearTolerance and
CfgDCM/maxAngleTolerance) and ADP (CfgHardware/setupADP) is not
active, then the TNC 640 displays the following error message: If the DCM
tolerances are used, ADP has to be active. In this case, activate the ADP
function with CfgHardware/setupADP = Premium. ADP ensures optimum
motion control for the TNC 640, but it changes the dynamic behavior of the
machine. Please refer to the information on ADP in this manual.

Machine  New: Programming station mode – simulation mode of the control wit-
configuration hout emergency stop circuit:
The settings of the machine parameter for programming station mode
(CfgMachineSimul/simMode) have been changed and extended as fol-
lows:
• CcOnly renamed to DriveSimul
• CcAndExt renamed to FullSimul
• DriveAndEmStopSimul added:
This setting allows you to operate the control with simulated drives and
without an emergency stop circuit. All configured PLC inputs and out-
puts must be connected properly.

Depending on the connected hardware, the TNC 640 automatically acti-


vates the programming station mode at startup:
• If no CC controller unit was detected, a HSCI-based control now auto-
matically activates the DriveSimul mode.
• If no system PL was detected, the DriveAndEmStopSimul is automati-
cally activated. This enables programming station mode with machine
operating panel, but without system PL.
• If neither a system PL nor a machine operating panel was detected, the
FullSimul module is automatically activated.
• Systems with functional safety (FS) do not support operation without
CC.
• The CfgMachineSimul/skipEmStopTest parameter has been remo-
ved. Switch-on of the drives without testing the emergency stop circuit
is no longer supported. Instead, you can use the DriveAndEmStopSimul
setting to operate the control with simulated drives and without emer-
gency stop circuit.
• The PLC program can use the PLC module 9035 to ascertain informa-
tion about the programming station mode (return code 111). For further
information, please refer to the documentation on module 9035.

September 2015 1.2 NC software 34059x-06 25


 Changed: Torque ripple compensation – parameter shifted
Until now, the parameters for torque ripple compensation were stored in
CfgControllerComp. This configuration object, however, is used for diffe-
rent other controller parameter sets and the entries are different for each
parameter set. However, torque ripple compensation may only exist once
per drive.
For this reason, the parameters for torque ripple compensation were shifted
from CfgControllerComp/compTorqueRipple to CfgServoMotor/mot-
TorqueRipple.

PLCprogramming  New: The pocket table can be read without previous locking
Previously, Module 9342 returned the error code 55 if the rows of the pok-
ket table could not be locked for the module call. From NC software 34059x-
06, the pocket table is read without previous locking. Whenever you relo-
cate tools in the pocket table, HEIDENHAIN recommends to protect the
consistency of the table data via Module 9300 for the duration of the entire
relocation process.
 New: Module 9356 – Mark tool as worn
By calling Module 9356, the PLC program can indicate that the tool currently
in use is worn and must be replaced. The tool is locked in the tool table. If
function M101 is active, the NC performs an automatic tool change. The
return codes of Module 9355 have been expanded in order to mark the exe-
cution of this explicit locking. The marker NN_ToolLifeExpired is set when
either the tool life has been exceeded or the tool was marked explicitly.
 Corrected: Incompatibilities in PLC module error codes
Due to incompatibilities with the iTNC 530, PLC modules 9120, 9121, 9125,
9221, 9227, 9260 and 9281 did not return the error codes listed in the docu-
mentation. These incompatibilities were removed, the PLC modules now
show the behavior described in the documentation. Overview of the error
codes changed:
• Module 9120: previously 9 instead of 1 and 9 instead of 2
• Module 9121: previously 9 instead of 1
• Module 9125: previously 9 instead of 1
• Module 9221: previously 9 instead of 1, 9 instead of 2, 9 instead of 21
• Module 9227: previously 9 instead of 1, 9 instead of 2, 9 instead of 21
• Module 9260: previously 99 instead of 20
• Module 9260: previously 99 instead of 20, previously 2 in all other cases
 Corrected: Modules 9118 and 9119 for Balluff tool identification
If Modules 9118 and 9119 detected a PLC error during access to the proces-
sor unit, the first return code to the PLC stack was set incorrectly. Instead
of the value -1 (PLC error), the modules used to return the value 0 (error-
free). This is no longer the case.
If the programmer forgot to set the number of relevant bytes for a data car-
rier in the machine configuration (default value: 0 bytes) and a job was sub-
mitted to the processor unit using this configuration, the processor unit did
not respond any longer and job processing might hang. If the value 0 is con-
figured for the number of bytes to be transmitted from and to a data carrier,
Modules 9118 and 9119 now report error code 1 in the
NN_GenModuleErrorCode PLC API word.

26 HEIDENHAIN Technical Manual TNC 640


 Corrected: Support of empty or missing string resources in PLC modu-
les 4074, 9082, 9103 and 9275
If a string with a reference to an empty or missing string resource was spe-
cified in a call of PLC Modules 9074, 9082, 9103 or 9275, then this reference
(#D<number> or #E<number>) was not replaced by an empty string and an
error was returned from the module. This incompatibility has been correc-
ted.
 Corrected: Behavior of Module 9410
The PLC Module 9410 wrongly continued to show the return code 3 (Last
spindle job still running) if, during the execution of this job, the NC took over
control of the spindle and later returned it to the PLC program during stand-
still. The problem has been corrected, Module 9410 now returns the correct
spindle status.
 Corrected: Module 9276 – Output of values to the log
In the output of arithmetic and logical PLC markers to the control log created
by Module 9276, only markers of the DWORD operand type were output
correctly.
The entries written to the log by Modules 9275 and 9276 are now formatted
in two lines as indicated in the documentation. The first line contains the text
of the identifier, the second line contains the text or markers.
 New: Management of access rights in the DNC server
For file access via Python or HEIDENHAIN DNC, a new access management
system is now available.
• External clients that use HEIDENHAIN DNC to access the control initi-
ally have the USER permission level. Together with the PLC password,
they are assigned the OEM permission level, and with the system pass-
word the SYSTEM permission level. For further information, please
refer to the HEIDENHAIN DNC documentation.
• For Python scripts, the permission level results from the directory
where the script is saved: Scripts saved under PLC: and PLCE: are assi-
gned the OEM permission level, scripts under SYS: are assigned the
SYSTEM permission level, all other scripts are assigned the USER per-
mission level.
• Access to the DataAccess data trees is controlled depending on the per-
mission level. Clients with USER permissions do not have access to the
interpolator, geometry calculations, and PLC data tree.

September 2015 1.2 NC software 34059x-06 27


1.2.2 Notes on software updates
Please note the following important information when you run an update from
NC software 34059x-05 to the new version 34059x-06:

Note

HEIDENHAIN recommends:
Before updating the NC software, perform a backup of the TNC 640 data
using TNCbackup.
Also save 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 this manual


in Chapter 2, "NC Software Exchange."

Note

Please note the information about the software update which is provided
on the following pages.

28 HEIDENHAIN Technical Manual TNC 640


Loading new At the first start-up of the TNC 640 after a software update, the machine con-
machine parame- figuration must be adjusted to match the new version of the NC software. The
ters TNC 640 displays the dialog window Software change recognized. Proceed
as follows:
 Press the ADAPT CONFIG. AUTOMAT. soft key to have the TNC 640 per-
form the required adjustments to the machine configuration automatically.
It is not necessary to enter a code number.
Alternatively proceed as follows if you want to review, and, if required, adjust
the changes in the configuration editor before applying them:
 Enter the code number 95148 for access to the machine configuration.
 Press the CONFIG. EDITOR soft key.
 Press the UPDATE RULES soft key. Review the rules displayed and com-
plete this step by pressing the END soft key.
 Press the CONFIG DATA soft key.
The TNC 640 now guides you through a number of dialog windows that help
you delete parameter objects.
All new machine parameters are marked with a symbol (white "N" on red back-
ground) in the tree view of the configuration editor. Changed machine parame-
ters are also marked with a symbol (white exclamation mark on red back-
ground). 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 press it again to exit the operating mode
Machine Parameter Programming
The control loads the new machine parameters and continues the boot pro-
cess.

Firmware update of After adjusting the machine configuration, you need to perform firmware
HSCI devices updates of the connected HSCI devices.
 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—other-
wise the TNC will require servicing!
After the update is finished, the TNC 640 displays another message on the
screen. For the changes to become effective, 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 143.

September 2015 1.2 NC software 34059x-06 29


Replacing the defi- The definition file of the symbolic programming interface API 3.0 has been
nition 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:
 Press the MOD key
 Enter the code number 807667 to switch to the PLC Programming mode of
operation-
 Press the PGM MGT key to open the file manager.
 Go 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.

Note

As an alternative, you can use the new API 4 symbolic memory interface.
If you want to convert your project to API 4, copy the new Api4Marker.def
definition file from the PLC:\proto\plc directory mentioned above to the
program directory of your PLC program and add it to your PLC project.
For further details on the new API 4 symbolic memory interface, please see
"The API 3 and API 4 symbolic memory interfaces" on page 2328.

30 HEIDENHAIN Technical Manual TNC 640


1.2.3 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-06.
For more detailed information about the function in this Technical Manual or
for references to the User's Manual, please refer to the page numbers indica-
ted in the brief descriptions.

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

Option Description ID
#136 VSC: Camera-based monitoring of the clamping 1099457-01
situation
Cycle-controlled optical check of the clamping situa-
tion in the working space

Changed software
option
Option Description ID
#18 HEIDENHAIN DNC 526451-01
(Communication with external Windows appli-
cations over the HEIDENHAIN DNC COM compo-
nent.)
Changed access control in the DNC server
Access control for the Ethernet-based communica-
tion via option 18 has been simplified. Access reali-
zed via the HEIDENHAIN DNC COM component
initially use the USER permission level. This permis-
sion level is the default. No password is required.
Thus, information that is accessible to users, such
as the tables on the TNC partition, is also accessible
via HEIDENHAIN DNC. In order to access the PLC
partition, the OEM permission level must be enab-
led. For this purpose, the PLC code number is requi-
red. The permission levels are changed directly
using HEIDENHAIN DNC. Control-based enabling is
not necessary.
For more details, please see the RemoTools SDK
documentation (online help).
Caution:
As a precaution, test all applications linked via HEI-
DENHAIN DNC after the software update to make
sure they run without errors. Also inform your part-
ners that use HEIDENHAIN DNC functionality as far
as you know.

September 2015 1.2 NC software 34059x-06 31


Operation, NC pro-
gramming and
technology

Note

Below is a brief overview of improvements for end users. Refer to the Con-
versational Programming User’s Manual or the User’s Manual for Cycle
Programming of the TNC 640 for more information.

 New: Pulsating rotational speed – NC syntax to reduce oscillations in


clamping situations that are sensitive to oscillations
With the new syntax, the spindle speed is varied in a sinusoidal manner
around the nominal speed value. Resonance or self-oscillations can thus be
suppressed with the correct settings.
NC syntax:
• FUNCTION S-PULSE P-TIME<Time in s> SCALE<Amplitude in %>
P-TIME = Duration of a full modulation run (oscillation period)
SCALE = Extent of modulation
• FUNCTION S-PULSE RESET deactivates this function
 Changed: Browser for the display of the TNCguide
The browser used to display the TNCguide was revised. This browser is also
used to display user-defined, machine manufacturer-specific CHM help files
for the machine operator. The revised browser should be entirely compati-
ble with its predecessor version. HEIDENHAIN recommends, however, that
you test your CHM help and CHM files in the revised browser.
 New: TCP/UDP port scan function
In the HEIDENHAIN HEROS 5 operating system, the programs "Portscan"
and "Portscan OEM" were added to the "Diagnostic" menu. This program can
be enabled manually or run automatically in a selectable time-slot pattern (5
min to 24 h). It will search for all open listening TCP and UDP ports and com-
pares them to four whitelists that can be stored in the system optionally:
See "HEROS 5 operating system" on page 145.
 Extended: Support of different keyboard layouts in HEROS 5
A new settings dialog named helocale was created and is located in the
HeROS menu under Language/Keyboard. With helocale, you can set the
user interface language of the operating system and set a keyboard layout
for each connected keyboard. The previous helanguage dialog was remo-
ved. For more information, See page 148..
 New: AFC-LOAD column in the tool table
The reference power in [%] of the nominal spindle power for AFC (Adaptive
Feed Control) can now be preset specifically for every tool in the AFC-LOAD
column of the TOOL.T tool table. After insertion of the tool, AFC will then
use this value for all controlled cuts with this tool.
If a value in AFC-LOAD exists in the TOOL.T tool table, it will always be used
for controlled cuts with this tool. If an additional settings file with controller
parameters named <NAME>.H.AFC.DEP exists for an NC program, the value
from AFC-LOAD will nevertheless be used for that tool and the value in
<NAME>.H.AFC.DEP will be overwritten by the value from AFC-LOAD. This way,
it is easy to make tool-specific changes to the AFC controller parameters in
the settings file, e.g. to reduce the reference power for a particular tool for
which no teach-in cut has been performed., see page 1425
 Changed: Locking of the tool table by editing
When you edit the tool table or tool management settings, the current table
row will be locked for any other access (e.g. updates of the tool life). If this
tool is then required in the current NC program, the TNC displays the mes-
sage "Tool table locked". Previously, editing used to lock the entire table, not
only the active table row.

32 HEIDENHAIN Technical Manual TNC 640


 Changed: Behavior of the feed-rate override function
From this software version, the feed-rate override behavior has changed if
the feed-rate override value is less than 100%. This makes the behavior
compatible with the iTNC 530.
• Behavior of this software version:
The feed-rate override only reduces the programmed feed rate.
• Previous behavior:
The feed-rate override function additionally reduced the feed rate calcu-
lated by the control, i.e. the feed rate of the actual motion in NC blocks
where the programmed feed rate was not reached, was also reduced
by the feed-rate override.
 New: Access to individual log files
Once you enter the OEM code number, the LOG: drive becomes available
in the file manager. From this drive, you can access all log files directly. Via
the LogExplorer, it is possible to evaluate the print output from Python pro-
grams.
 New: Name pattern of service files changed
Instead of a sequential number, a time stamp is now appended to service
file names.
 Extended: More tolerant diagnosis of PROFINET devices
If a PROFINET device, in order to report a manufacturer-specific diagnosis,
generates an alarm telegram that does not comply with the standard, the
NC software attempts to explicitly read out the current state of diagnosis of
the device again. If this is successful, the software continues to operate wit-
hout an error message.
 Extended: Oscilloscope recording of outputs via the CMA-H 04-04-00
analog module
From now on, it is possible to represent and record the analog output of
modules of the CMA-H 04-04-00 type using the internal oscilloscope or TNC-
scope.
 Extended: Support of speed encoders with incorrect phase position
In order to avoid misinterpreting signal interferences as reference pulses,
the TNC 640 used to ignore the reference pulses of speed encoders with
incorrect phase position (e.g. encoders with TTL signals). You can now para-
meterize the phase position check.
Individual bits of the word MotEncCheckOff are also evaluated for analog
axes. Bit 9 enables you to deactivate the monitoring of the phase position of
the reference pulse.
 Extended: Cycle 450 – The path to the storage table can now be confi-
gured
Until now, it was not possible to change the path to the storage table of
Cycle 450. Now, you can define the name and path to this table in the CfgTa-
blePath/DATA450 configuration data object. If the configuration data object
does not exist, it will be created automatically by Cycle 450 using the default
path (TNC:\table\DATA450.KD).
Log data is no longer saved in the text file TCHPR450.TXT, but in the file TCH-
PRAUTO.html.

September 2015 1.2 NC software 34059x-06 33


Machine  New: Tool-carrier kinematics description
configuration In the new KINEMATIC column, you can now assign a tool-carrier kinematics
description (*.cfx or *.cfg file) to each tool. It will be activated automatically
upon tool change. As a prerequisite, you need to define the insertion points
in the kinematics description of the machine using the new configuration
data object CfgKinToolSocket., see page 1192
 Changed: NC editor settings
For machines with traverse range switchover, it was necessary before to
set the CfgEditorSettings/useProgAxes parameter (Specify programma-
ble axes) to FALSE. From now on, you can set this parameter to TRUE (=
use defined axis configuration) even for those machines. The editor now
offers all axes that are used in at least one kinematic model of the machine.,
see page 1886
 New: Configuration of the kinematics viewer
Use the new MP_viewDirUpward and MP_viewDirRightward machine
parameters to specify the orientation of each kinematic model in the kine-
matics viewer of the control., see page 1171.
 Removed: machine parameter MP_kindOfRotAxis
From this software version, each axis with MP_isModulo = TRUE is auto-
matically considered as a rollover axis. For this reason, the
MP_kindOfRotAxis machine parameter has been removed. If
MP_isModulo = TRUE, the machine parameters in CfgRollOver are evalua-
ted for this axis. Thus, it is possible to switch over the modulo behavior of
an axis, e.g. when switching over the traverse range (using MP_isModulo
or CfgRollOver).
 New: Dual-head evaluation of two EnDat 2.2 encoders
In order to improve the compensation of eccentricity errors in rotary axes
with torque motor, it is possible to mount two encoders with EnDat 2.2
interface to an axis and to offset the value of one against the other, see page
1066.
 Changed: Reduction of the kv factor during the brake test
For the duration of the brake test, the kv factor is reduced automatically and
AVD is disabled in order to avoid low-frequency drive oscillations during the
test.
 New: Blocking the loading of positions for axes with EnDat
If the positions of the Endat axes differ by more than the value in
MP_endatDiff from the last saved position after powering up the control,
the "Load the current position?" dialog is displayed once the control is up and
running. This may for example be the case if an axis was moved while the
control was switched off. If the new machine parameter
MP_endatDiffFatal = TRUE (CfgReferencing/refAuxFunctions), then the
new position is not loaded, and a reset error is triggered when you confirm
the dialog, see page 1498.
 New: Reference axes with double reference run
With the machine parameter MP_doubleRefImmed = TRUE, the axis is
already considered to be referenced if the EnDat interface of the speed
encoder was used for referencing., see page 1266

34 HEIDENHAIN Technical Manual TNC 640


 Changed: Plausibility check between MP_posEncoderIncr and
MP_posEncoderDist
For speed encoders with EnDat interface, the value entered in
MP_posEncoderDist must be a multiple of the value entered in
MP_posEncoderIncr. For this reason, when correcting these parameters,
MP_posEncoderDist must be corrected by the same factor as
MP_posEncoderIncr. This will be checked by the TNC and a message will
be displayed if an error is found. For other encoders with an EnDat interface,
it is basically not possible to enter a multiple of MP_posEncoderIncr, i.e. a
multiple of the line count, in MP_posEncoderDist.
 New: Configuration of the braking behavior with M19
Use the new MP_M19MaxMode parameter in CfgFeedLimits to configure
the braking behavior with M19 above MP_M19MaxSpeed, see page 1565.
 New: Additional settings for LAC
From TNCopt 7.5, you can use additional options to specify in which situati-
ons controller parameter adaptation should be enabled, see page 1452.
 Changed: MP_refPosition can be changed without generating an error
message
Previously, changes made to the MP_refPosition machine parameter under
CfgReferencing caused the following error message to be displayed: "Posi-
tion error axis xx too large". This error message is no longer displayed and
you can change the machine parameter without causing an error message.
 Changed: Static coupling for a deactivated axis
The TNC now prevents you from erroneously configuring static coupling for
a deactivated axis (MP_type set to Static), as this is not permitted. A corre-
sponding error message will be displayed.
 New: Additional optional tolerances for DCM
For the configuration of DCM (Dynamic Collision Monitoring, software
option 40), three new machine parameters have been introduced. These can
be found under CfgDCM. To prevent end users from programming arbitrarily
high tolerances (Cycle 32), the OEM can restrict the maximum possible tole-
rance during machining with MP_maxLinearTolerance and
MP_maxAngleTolerance . This ensures that the optional manual oversize
configured in MP_manualOversize always complies with the set toleran-
ces. With MP_manualOversize, all CMOs are increased by the configured
oversize while TCPM or M128 is active.
The MP_maxLinearTolerance and MP_maxAngleTolerance attributes
can only be used with active ADP. Otherwise, a configuration error will be
shown , see page 2130.
 New: Active machine configuration in service file
In order to simplify diagnostics, the configuration data active at the time
when the service file is created is saved along with the complete machine
configuration in the service file.
 New: Backup copy saved before update rules are applied
Before the update rules are applied, the previous configuration data is saved
as a backup zip file in the PLC:\config.bak directory. Based on this backup
copy, the previous configuration can be restored using the configuration edi-
tor.
 New: Update rule for file operations
With the UpdFileOp update rule, you can copy rename, oder entirely delete
files. Before the rule is executed, the user is prompted to confirm or revoke
its execution in a dialog.

September 2015 1.2 NC software 34059x-06 35


 Extended: OEM files in service files
• In the control file used to add OEM-specific files to the service file, you
can now specify paths with blanks. These file paths must be enclosed
in double quotation marks.
• If you set the "-i" switch when selecting files with the FOLDER com-
mand, entering the file names is case-insensitive.
 New: Loading of MP subfiles at system start-up
With MP_portionFiles, you can activate MP subfiles already when the con-
trol starts up. These subfiles may contain reset parameters.
 New: Active machine configuration in service file
In order to simplify diagnostics, the configuration data active at the time
when the service file is created is saved along with the complete machine
configuration in the service file.
 New: Visual Setup Control – VSC (software option 136)
In combination with the camera system VS 101 (ID 1137063-01), the VSC
(Visual Setup Control) software option allows machine operators to visually
monitor the clamping situation using a cycle-based workflow.
 New: Restoring update rules for tables
From NC software version 34059x-06, the system tries, when downgrading
from a newer software version to an older version, to undo changes made
to tables due to update rules.See "Resetting table configuration to an older
NC version (NC software 34059x-06 and higher)" on page 139.
 Extended: Behavior of cycle 202 and 204 with BCD-encoded spindles
For BCD-encoded spindles, the MP_posEncoderType configuration data
object is not available. Since it is queried in cycles 202 and 204, however, an
error message used to be displayed.
In order to run these cycles with such a spindle, you can now specify an M
function (M5) that stops the spindle in CfgGeoCycle/mStrobeOrient. In
addition, you need to enter an OEM macro under System/Paths/CfgSy-
stemCycle/OEM_SPINDLEPOS that positions the spindle.

36 HEIDENHAIN Technical Manual TNC 640


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

MP Config object Parameter Description of change


number
100203 CfgMachineSimul MP_skipEmStopTest Parameter has been removed. The
simulation of drive motors and of
the emergency stop circuit can be
set using the
DriveAndEmStopSimul option of
the MP_simMode parameter.
100601 CfgHandwheel MP_type Selection value HR410 was rena-
med to HR510/HR410.
104701 CfgOemPosition MP_value The input range was increased from
+/–30 000 to +/– 200 000, see page
2593.
105410 CfgEditorSettings MP_useProgAxes The TRUE setting (= use defined
axis configuration) can now also be
used for machines with traverse
range switchover. The editor offers
all axes that are included in at least
one kinematic model of the
machine, see page 1886.
114106 CfgTT MP_probingSpeed The maximum value of the probe
feed rate was increased to 30 000
[mm/min].

300102 CfgAxis MP_isModulo This parameter can now be changed


at run time (NC syntax permitted,
NC-SYN).
300112 MP_advancedSettings usePmax2ForM19 (bit 5) was remo-
ved.
300202 CfgAxisPropKin MP_kindOfRotAxis This parameter was removed from
the machine configuration. The
function is now assigned to
MP_isModulo.
400005 CfgAxisHardware MP_posEncoderDist You can now enter a numerical
value or a formula for this parame-
ter.
400702 CfgEncoder MP_checkSignalLevel This parameter was removed
Monitor because it is no longer possible to
switch off amplitude monitoring for
safety reasons.
400703 MP_checkFrequency This parameter was removed
because the control no longer per-
mits amplitude monitoring to be
switched off.

September 2015 1.2 NC software 34059x-06 37


MP Config object Parameter Description of change
number
400802 CfgPosControl MP_servoLagMin1 The default value was changed to
0.5.
400803 MP_servoLagMax1 The default value was changed to
0.5.
400804 MP_servoLagMin2 The default value was changed to
2.0.
400805 MP_servoLagMax2 The default value was changed to
2.0.
401412 CfgController- MP_compTorqueRipple The parameter was removed from
Comp the machine configuration and repla-
ced with MP_motTorqueRipple .

38 HEIDENHAIN Technical Manual TNC 640


New machine parameters:

MP Config object Parameter Description


number
125400 CfgPortionFiles MP_portionsFiles List of MP subfiles that are to be
loaded during control start-up.
125601 CfgCameraApi MP_openShutter Name of a PLC marker for VSC.
125602 MP_openShutterAck Name of a PLC marker for VSC.
201008 CfgGeoCycle MP_restoreCoolant Define the behavior of M7 and M8 in
Cycles 202 and 204, see page 1991.
202906 CfgKinComposMo- MP_viewDirUpward Orientation of the 3-D view in the
del kinematics viewer (Z direction), see
page 1171.
202907 MP_viewDirRightward Orientation of the 3-D view in the
kinematics viewer (X direction), see
page 1171.
205303 CfgDCM MP_maxAngleTolerance Maximum angle tolerance for DCM
205305 MP_maxLinearTolerance Maximum linear axis tolerances for
DCM
205304 MP_manualOversize Manual oversize for DCM
205500 CfgKinToolSocket Definition of the insertion point for
the tool-carrier kinematics descrip-
tion in the kinematics chain, see
page 1192.
400022 CfgAxisHardware MP_posEncoderTwoHead Activation of the dual-head evalua-
tion, see page 1066.
400319 CfgFeedLimits MP_M19MaxMode Braking behavior with M19 above
MP_M19MaxSpeed, see page
1565.
400415 CfgReferencing/ MP_endatDiffFatal Disable position capturing for axes
refAuxFunctions with EnDat encoder, see page 1501.
400415 CfgReferencing/ MP_doubleRefImmed Axis with double reference run are
refAuxFunctions already referenced once the refe-
rence run with the speed encoder
has been performed, see page
1266.
401331 CfgServoMotor MP_motTorqueRipple Name of the file for TRC (torque
ripple compensation), see page
1417.
403409 CfgRTCoupling MP_limiter Limit for the result of the RTC for-
mula, see page 1130.

September 2015 1.2 NC software 34059x-06 39


Machine  New: Limit the result of the RTC formula
interfacing With the new MP_limiter parameter, you can limit the result of the RTC for-
mula calculation. The calculation result, applied to the axis in the form of a
position offset, is limited to the maximum value you enter here. This makes
it possible, for example during commissioning, to limit the results of an RTC
calculation to a maximum traverse path. See page 1130.
 New: FN17/FN18 functions, see page 2557:
• Error message during the probing procedure:
FN17: SYSWRITE ID355 NR 11
This function allows you to define if and in which situations an error
message will be displayed during the probing procedure.
 Enhanced: FN17/FN18 functions, see page 2557:
• Read file information:
FN18: SYSREAD ID56 NR 1 – Determines the number of rows in the sel-
ected tool table.
FN18: SYSREAD ID56 NR 2 – Determines the number of rows in the sel-
ected datum table.
FN18: SYSREAD ID56 NR 4 – Determines the number of rows in a freely
definable table that has been opened with FN26: TABOPEN. The function
returns the value –1.0 if no table is open at the time of reading.
• Software limit switch:
FN17: SYSWRITE ID230 NR 5
Before a software limit switch for a modulo axis can be enabled, you
must set both the upper and lower limits.
• CYCL DEF from macro or cycle:
FN17: SYSWRITE ID420 NR103 = 0
From now on, you can define a new machining cycle for the visible NC
program in a macro (or in the cycle itself). To do so, select the desired
cycle and export it to the visible NC program using the new function:
FN17: SYSWRITE ID420 NR103 = 0. See "Data transfer NC program <=>
NC (FN17: SYSWRITE and FN18: SYSREAD)" on page 2557.

40 HEIDENHAIN Technical Manual TNC 640


New PLC pro- Below you find a summary of the new PLC programming features:
gramming features

New API 4 symbolic As an alternative to the known API 3 symbolic memory interface, you can use
memory interface the new API 4 symbolic memory interface. API 4.0 makes it easier to imple-
ment PLC programs for machines where axes often change roles when used
as spindle or NC axis (e.g. switching the workpiece spindle between milling
and turning operations). The differentiation between the API markers in the
ApiAxis and ApiSpin data structures ends. Migration to the new interface is
not obligatory. The API 3 symbolic memory interface is retained. API 3 and API
4 are treated in the same way and will be supported permanently.
For further details on the new API 4 symbolic memory interface, please see
"The API 3 and API 4 symbolic memory interfaces" on page 2328.

Extensions of ope-  Extended: symbolic memory interface – mapping of API 3 operands to


rands API 4:

Mapping of markers from the API 3 PlcApiSpin data


structure to the PlcApi4Axis data structure (API 4)
PlcApiSpin (API 3) PlcApi4Axis
NN_SpiChannel NN_AxChannel
NN_SpiDriveReady NN_AxDriveReady
PP_SpiDriveOnRequest PP_AxDriveOnRequest
NN_SpiDriveOn NN_AxDriveOn
NN_SpiBrakeReleaseRequest NN_AxBrakeReleaseRequest
NN_SpiReferenceAvailable NN_AxReferenceAvailable
PP_SpiReferenceMarkSignal PP_AxReferenceEndPosition
PP_SpiEnable PP_AxFeedEnable
NN_SpiInMotion NN_AxInMotion
NN_SpiControl NN_AxPosControl
NN_SpiControlInPos NN_AxInPosition
NN_SpiStopExtern NN_AxStopExtern
– NN_AxSpindle

 New: Introduction of HEIDENHAIN time components


In addition to the existing PLC timers, the following HEIDENHAIN time com-
ponents, based on predefined PLC structures, are available:
• Extended pulse
• Remembered switch-on delay
• Switch-off delay
• Cyclic timer
The run time of the HEIDENHAIN time components can be configured using
the CfgPlcTimer entity or programmed directly in the PLC program. For fur-
ther details on the new time components and their use, please refer to "HEI-
DENHAIN time components (from NC-SW 597110-10)" on page 2387.

September 2015 1.2 NC software 34059x-06 41


PLC modules  Enhanced:
modified/enhanced Module 9035 – (Read NC Status Information)
New functions added, see page 1870.
• Function 111: Configuration of simulation mode (programming station
mode)
• Function 120: Status of the latest service files saving job issued by the
PLC (Module 9274)
 Extended:
Module 9046 – Copy controller data to the PLC memory
Further characteristic values added for parameter <Code for CC data>. See
page 1462.
 Extended:
Module 9047 – Reset or initialize controller algorithms
Further CC commands added. See page 1465.
Mode 1:
• 0: Switch inverter to full operation
• 1: Switch inverter to stand-by operation
 Extended:
Module 9048 – Query the operating states of axes
Additional new return codes, see page 1086:
• 9: Axis is located at or behind the negative limit switch
• 10: Axis is located at or behind the positive limit switch
 Extended:
Module 9221 – Start a PLC positioning movement
Module 9227 – Position auxiliary axes and NC axes
Alternative PLC positioning method for NC axes with bit 4=1:
• Behavior with bit 2=1: Position the NC axis with rapid traverse configu-
red (setting in MP_rapidFeed) and influence the positioning movement
via the rapid traverse override of the NC channel.
• Behavior with bit 4=1: Position the NC axis with the transferred feed
rate (limited by the setting in MP_maxFeed) and influence the posi-
tioning movement via the rapid traverse override of the NC channel.
 Extended:
Module 9277 – Write data to the OEM log
In its <Mode> parameter, Module 9277 now supports the specification of
additional formats in order to output the time stamp and text of a line in the
log. See page 1942.
• Bit 3 = 1: Time stamp and text are output in one line
 Extended:
Module 9355 – Query tool life
More return code have been added for the <Result> parameter so that blok-
king via the new Module 9356 can be marked.
See page 2224.
• 4: Tool explicitly marked as worn
• 5: Tool explicitly marked as worn and maximum tool life exceeded
• 6: Tool explicitly marked as worn and critical tool life exceeded
• 7: Tool explicitly marked as worn, maximum and critical tool life excee-
ded

42 HEIDENHAIN Technical Manual TNC 640


 Extended:
Module 9409 – Set status information of an operating-mode group
With Module 9409, you can now activate Single Block mode at any time. By
setting status information #3, it is possible, independently from the opera-
ting mode selected by the user, to force block-wise execution of the NC pro-
gram. See page 1905.

 Extended:
Module 9411 – Read actual spindle values (speed, coordinates)
Further values to be queried have been added to the <Spindle information>
parameter, see page 1074.
• 0: Index of the axis
• 13: Utilization of the drive
• 22: Information on tapping
• 23: Information on spindle synchronism
• 24: Information on the assignment of the components to an NC channel
• 25: Information on control via an NC channel
• 26: Information on handwheel operation
 Changed:
Module 9217 – Display pop-up window for messages
Text files can now be used with UTF-8 encoding or with ISO/IEC 8859-1
encoding. Conversion from ISO/IEC 8859-1 to UTF-8 is no longer obligatory.
Files with UTF-8 encoding should start with a byte order mark (BOM). If no
BOM is present, the control tries to detect the encoding automatically. The
information on return codes in the module description was revised. See
page 1964.
 Changed:
Module 9342 – Determine magazine and pocket number
Module 9342 used to return error code 55 if the rows in the pocket table
could not be locked for the module call. From this NC software version, the
pocket table is read without previously locking it. See page 2237.
Whenever relocating tools in the pocket table, HEIDENHAIN recommends
protecting the consistency of the table data via Module 9300 for the duration
of the entire relocation process.
 Corrected: iTNC 530 compatibility of PLC Modules improved
The following changes were made to Modules 9305, 9306, 9340 and 9341:
• When searching for a reserved pocket, Module 9340 accepts both
values 4 and 5 for the <Mode> parameter. In all cases, the system sear-
ches for a reserved pocket for the tool number given in the parameter.
• When searching for an assigned pocket, PLC API Module 9340 accepts
both values 8 and 9 for the <Mode> parameter. In any case, it searches
for the pocket assigned to the tool number given in the parameter.
• In Module 9341, you can also describe a pocket in magazine 0, associa-
ted with a spindle. This modifies the pocket table. The system will
adjust it to match the status of the runtime system and the NC channel,
if appropriate. In this case, the module will return an error if, at that time
the module is called, an NC program is being executed and the look-
ahead calculation is not synchronized by a strobe of the SYNC_CALC
category.
• If required, the modules 9305, 9306 and 9341 also correct the tool
name column in the pocket table.

September 2015 1.2 NC software 34059x-06 43


New PLC modules  Module 9199 – Measure PLC run times, trigger PLC run time errors
Module 9199 allows you to measure PLC run times in cyclic programs and
in spawn / submit jobs. Moreover, it is possible to trigger a PLC run time
error (PLC program timeout) via <Mode> 9 for testing purposes. See page
2322.
 Module 9274 – Generate service files
Module 9274 enables you to generate service files. This includes the option
to inform the end user by means of a dialog window if the new service file
contains NC data (i.e. possibly sensitive data). The dialog window display is
controlled via a bit in <parameter>. The dialog window is always displayed
in case of <Function=0>. See page 1947.
 Module 9346 – Query the CC data of an axis
Module 9346 enables you to query once the CC data of an axis. In contrast
to Module 9046, there is no cyclic data exchange. See page 1467.
 Module 9356 – Modify tool life information
Module 9356 is used to change the information about the lifetime of a tool
used in an NC channel.See page 2225.
 Module 9407 – Give tool number for an NC channel
With Module 9407, you can specify a default tool for an NC channel in the
PLC program. This module has been available for a long time. For a descrip-
tion, see the PLCdesign manual. The documentation in this manual has
been adapted accordingly. See page 2240.
 Module 9465 – Change options for the access to machine parameters
Use Module 9465 to change the behavior of the PLC runtime system when
accessing the machine parameters with Modules 9430, 9432, 9436, and
9438. See page 600.
 Module 9466 – Handling of machine parameter subfiles
Use module 9466 to load or unload subfiles containing machine parameters.
Compared to module 9034, it has an extended functionality. See page 577.

44 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 interrup-
tions 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 help us by sending your requests. You can reach us at:

tnc-oemdoc@heidenhain.de

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 HEIDEN-
HAIN components. Furthermore, electrical engineering work on the system
may be carried out only by trained electrical engineering technicians or per-
sons 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 engi-
neering.
 They must have appropriate safety equipment (clothing, measuring
systems).
 They should be skilled in first-aid practice.

September 2015 2.4 Trained personnel 45


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 bene-
fits:
 All the software is contained centrally in the NC; this means that the indivi-
dual 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 diagno-
sing feed drives as well as spindles.

The TNC 640 can be used to control up to 20 drive motors. These 20 digital
control loops can be used for axes and a maximum of 4 spindles at spindle
speeds of 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.

46 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 the
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 posi-
tion and shaft-speed encoders. EnDat 2.2, which is purely digital and compa-
tible 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 *)

September 2015 2.5 General information 47


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

48 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 net-
work. 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 configura-
tion 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 187.

September 2015 2.5 General information 49


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)
and either:
 CC 61xx
(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, MC 7522, platform. These new main computers MC 6541, MC 6542, MC 6641, MC
and MC 7532 7522, and MC 7532 are supported from 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 subse-
quent 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 hard-
ware" 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 soft-
ware, please follow the procedure described in "NC software exchange on
the TNC 640" on page 132.
In addition, please note the important information about the new NC soft-
ware 34059x-04, which is provided on the following pages.

Note

If you run the new NC software 34059x-04 with the previous main compu-
ters 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.

50 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 equipped with a PROFIBUS inter-
face: 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 hard-
ware 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 MC 6541, MC 6542, MC 6641, MC 7522, and MC 7532 main compu-


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

September 2015 2.6 Overview of Components 51


Main computer for
installation in the
electrical cabinet

MC 6541, MC 6641 main computers


MC 6541 main computer for instal-
lation in an electrical cabinet:
 CPU Intel Core i7-3 1.7 GHz
2 cores
 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
 Mass: 4 kg
 Supported from NC software
34059x-04

MC 6541 ID 1081185-xx

MC 6641 main computer for instal-


lation in an electrical cabinet:
 CPU Intel Core i7-3 2.1 GHz
4 cores
 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 Remai-
ning memory for system
data
HDR TNC 640 ID 617779-xx

52 HEIDENHAIN Technical Manual TNC 640


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

Field Bus 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

September 2015 2.6 Overview of Components 53


Previous main com-
puters for installa-
tion in the electrical
cabinet

Note

Main computers of type MC 62xx and MC 63xx are not supported from 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
 Mass: 4 kg
 Supported up to and including
NC software 34059x-02

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

54 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
 Mass: 4 kg
 Supported up to and including
NC software 34059x-02

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

September 2015 2.6 Overview of Components 55


Main computer for
integration in the
operating panel or
electrical cabinet

MC 6542 main computer


MC 6542 main computer for instal-
lation in the operating panel or
electrical cabinet:
 CPU Intel Core i7-3 1.7 GHz
2 cores
 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
 Mass: 4 kg
 Supported from NC software
34059x-04

MC 6542 ID 1081188-xx

56 HEIDENHAIN Technical Manual TNC 640


MC 7522 main computer
MC 7522 main computer with inte-
grated display for installation in an
operating panel:
 CPU Intel Core i7-3 1.7 GHz
2 cores
 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
 Mass: 7.5 kg
 Supported from 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 Remai-
ning memory for system
data
SSDR TNC 640
ID 810288-xx

September 2015 2.6 Overview of Components 57


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

Field Bus 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

58 HEIDENHAIN Technical Manual TNC 640


MC 7532 main computer
MC 7532 main computer with inte-
grated display for installation in an
operating panel:
 CPU Intel Core i7-3 1.7 GHz
2 cores
 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
 19" screen
 Resolution: 1280 x 1024 pixels
 10 horizontal soft keys, 8 + 10
vertical soft keys for PLC
 Mass: 9.4 kg
 Supported from SW 34059x-04

MC 7532 ID 1124449-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 Remai-
ning memory for system
data
SSDR TNC 640
ID 810288-xx

September 2015 2.6 Overview of Components 59


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

Field Bus 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

60 HEIDENHAIN Technical Manual TNC 640


Previous main com-
puter model for
integration in the
operating panel or
electrical cabinet

Note

Main computers of type MC 62xx are not supported from NC software ver-
sion 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 RS-232-C
 Mass approx. 4 kg
 Supported up to and including
SW 34059x-02

MC 6242
ID 804780-xx

MC 6242 with Profibus


ID 804786-xx

September 2015 2.6 Overview of Components 61


HDR for TNC 640

HDR hard disk for TNC 640 ID


Export version (MC 6x41) 617779-56
Standard version (MC 6x41) 617779-06

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 Contents 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-56
Standard version (MC 6x42, MC 7522) 810288-06

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 Contents 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.

62 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, MC 63xx as well as for 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
W/o options Incl. Incl. Incl.
Active control loops

option 8 options #8 options 8, 9


Active axis options

CC 6106 + CC 6108

and #9 and 50
(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.

September 2015 2.6 Overview of Components 63


SW option: Control- Further control loops can be enabled either as groups or individually. The com-
loop groups bination 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 additio- In addition to the control loops of the basic version and the control-loop
nal control loops groups, up to eight individual control loops can be enabled through software
options. These can also be enabled in addition to the control-loop groups:

SW option: Additional control loops: ID


#0: 1st additional control loop 354540-01
#1: 2nd additional control loop 353904-01
#2: 3rd additional control loop 353905-01
#3: 4th additional control loop 367867-01
#4: 5th additional control loop 367868-01
#5: 6th additional control loop 370291-01
#6: 7th additional control loop 370292-01
#7: 8th 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

64 HEIDENHAIN Technical Manual TNC 640


2.6.2 CC 61xx controller units

CC 6106 Controller unit with HSCI inter-


face 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 Vpp or EnDat 2.2)
 6 position encoder inputs
(1 Vpp or EnDat 2.2)
 2 SPI expansion slots
 Power supply through UV(R) power sup-
ply unit
 Mass: 4.1 kg

CC 6106 ID 662636-xx

September 2015 2.6 Overview of Components 65


CC 6108 Controller unit with HSCI inter-
face 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 sup-
ply unit
 Mass: 4.7 kg

CC 6108ID 662637-xx

CC 6110 Controller unit with HSCI inter-


face 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 sup-
ply unit
 Mass: 4.8 kg

CC 6110ID 662638-xx

66 HEIDENHAIN Technical Manual TNC 640


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

UEC 11x with DC-link connection


Controller unit with integrated inverter and
PLC for up to 6 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
 Connections for 3 axes + spindle
(UEC 111) or
connections for 4 axes + spindle
(UEC 112) or
connections for 5 axes + spindle
(UEC 113 FS)
 Additional DC-link connection on the
front for PSL 130
 Connection for additional braking resi-
stor
 Connection for motor holding brakes
 Connection for TS and TT touch probes if
the first PLB is in the HSCI chain
 1 SPI expansion slot
 UEC 11x: 38 PLC inputs, 23 PLC outputs
(expandable via PL 61xx)
 UEC 11xFS: 38 PLC inputs, 28 PLC out-
puts, 8 free FS inputs, 8 free FS outputs
(expandable via PL 61xx)
 Integrated power supply unit 24 V NC /
3.5 A for supplying the HSCI compon-
ents
 Mass approx. 14 kg
UEC 111 with 4 control loops
ID 1081002-xx
UEC 112 with 5 control loops
ID 1081003-xx
UEC 113 with 6 control loops
ID 828471-xx

UEC 111FS with 4 control loops


ID 1075825-xx
UEC 112FS with 5 control loops
ID 1075826xx
UEC 113FS with 6 control loops
ID 1075826xx

September 2015 2.6 Overview of Components 67


UMC 111FS
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 sup-
ply module.
Integrated functional safety.
It is equipped with:
 HSCI interface
 UMC 111FS: Integrated functional
safety (FS)
 4 speed encoder inputs
 Motor connection for 4 axes
 Connection for external DC-link voltage
 1 SPI expansion slot
 38 single-channel PLC inputs
(expandable via PL 61xx)
 28 single-channel PLC outputs
(expandable via PL 61xx)
 8 dual-channel PLC inputs
(expandable via PL 61xx FS)
 8 dual-channel PLC outputs
(expandable via PL 61xx FS)
 Mass approx. 11 kg

UMC 111 FS with 4 control loops


ID 664231-xx

Identification Example: ID MC 6542:


of MC 6xxx,
MC 75xx, CC 61xx,
UEC 11x, UMC 1xx
1081188-01
BasicIDNo. Variant

The basic ID number indicates hardware differences.


This first digit of the variant number indicates hardware changes.

68 HEIDENHAIN Technical Manual TNC 640


2.6.4 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 con-
trol, 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 UEC11x is used.
 Available with 4, 6 or 8 slots
 HSCI interface
 Connections for TS and TT touch probes
 Safety-relevant PLC inputs/outputs
For an overview of the available I/O modu-
les. See "I/O modules" on page 71
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

September 2015 2.6 Overview of Components 69


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 an overview of the available I/O modu-
les. See "I/O modules" on page 71
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

70 HEIDENHAIN Technical Manual TNC 640


I/O modules I/O modules are available with digital and analog inputs and outputs. For par-
tially 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 dual-channel digital
inputs and 8 dual-channel digital outputs
 PLD-H 08-04-00 FS:
I/O module with 8 dual-channel digital
inputs and 4 dual-channel digital 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 supply voltage (+ 24 V DC)
and GND (0 V)

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


Dual-channel version: I/O module with 4
digital inputs (channels A and B), 4 digital
outputs as high-side outputs (channel B)
and 4 digital outputs as low-side outputs
(channel A)

PLD-H 04-04-00 HSLS FSID 746706-xx

September 2015 2.6 Overview of Components 71


PLA-H xx–xx–xx
Analog I/O module:
 PLA-H 08-04-04:
Analog module with eight analog inputs
± 10 V, 4 analog outputs ± 10 V and 4
analog inputs for Pt 200 thermistors

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

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

72 HEIDENHAIN Technical Manual TNC 640


2.6.5 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 spind-
les. The CMA-H is plugged into 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. From software
version 34059x-02, interpolated movements
of analog axes with other axes are possible.

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

September 2015 2.6 Overview of Components 73


2.6.6 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 groun-
ded.
 The power is supplied via line voltage (L1, L2)
and the DC-link voltage Uz. This is used to pro-
duce 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 isola-
ted 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 239 and
in the "Inverter Systems and Motors" Technical
Manual.

PSL 130 ID 575047-xx

74 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 compon-
ents of the TNC 640 with + 24 V NC voltage,
+ 24 V PLC voltage and +5 V.
The output voltages of the PSL 130 correspond
to the PELV system as per EN 50178. The
power supply unit is supplied 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 239 and
in the "Inverter Systems and Motors" Technical
Manual.

PSL 135 ID 627032-xx

September 2015 2.6 Overview of Components 75


2.6.7 Screen BF 7xx

BF 750
Technical characteristics:
 15-inch design
 Power supply: 24 V-NC/ approx. 50 W
 Resolution: 1024 x 768 pixels
 8 soft keys, 6 soft keys for PLC
 3 soft keys for switching soft-key rows
 Key for screen layout and operating mode swit-
ching
 Additional USB interface (USB 2.0) on the front
of the visual display unit
 Integrated USB hub (USB 2.0) with 4 USB inter-
faces on the back of the display unit
 HDL connection
 Fulfills IP54 degree of protection when installed
 Mass: 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
 8 PLC soft keys to the right and
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 swit-
ching
 Integrated USB hub with 6 USB interfaces on
the back of the display unit
 HDL connection
 Fulfills IP54 degree of protection when installed
 Mass: 7.8 kg

BF 760 ID 732589-xx

76 HEIDENHAIN Technical Manual TNC 640


2.6.8 Keyboard units: TE 73x, TE 74xx

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 potentio-
meters
 USB interface
 Touchpad
 Mass: 2.4 kg
 Fulfills IP54 degree of protection when installed

TE 730 ID 805488-xx

TE 735 (FS)
NC control panel

same as 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 potentio-
meters
 USB interface
 HSCI interface
 Touchpad
 Machine operating panel (same as MB 720)
 Mass: 3.4 kg
 Fulfills IP54 degree of protection when installed

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

September 2015 2.6 Overview of Components 77


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
 Mass: 3.2 kg

TE 740 ID 886546-xx

78 HEIDENHAIN Technical Manual TNC 640


TE 745 (FS)
NC control panel:
Same as TE 740, but with additional
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
 Mass: 4.2 kg
 Fulfills IP54 degree of protection when installed

TE 745 ID 679817-xx
TE 745 FS ID 805482-xx

September 2015 2.6 Overview of Components 79


2.6.9 Machine operating panel, MB 7xx

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 sym-
bols for HR 510" on page 100 The key functions
are freely definable via the PLC.
 MB 720: 7 free PLC inputs and 5 free PLC out-
puts
 MB 720 FS: 4 free FS inputs and 5 free PLC out-
puts
 Two bore holes for additional keys or keylock
switches
 Mass: 1.2 kg
 Fulfills IP54 degree of protection when installed
Available buttons:
 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

80 HEIDENHAIN Technical Manual TNC 640


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

PLB 6001 (FS)


The PLB 6001 (FS) is equipped with:
 HSCI interface
 Handwheel connection X23
 64 PLC inputs (32 in case of FS), 32
PLC outputs for keys / key illumina-
tion
 Connection for spindle-speed and
feed-rate override potentiometers
 Screw fastening or top-hat-rail
mounting
 Mass: 1.2 kg

PLB 6001 ID 668792-xx


PLB 6001 FS ID 722083-xx

PLB 6002 FS
The PLB 6002 (FS) 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
 Mass: 1.2 kg

PLB 6002 FS ID 1137000-xx

September 2015 2.6 Overview of Components 81


2.6.11 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 520 FS, HR 510 FS and HR 410 FS 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 510 and HR 520 standard handwheels do not
feature this cross-circuit safety of the permissive buttons.
The handwheels with FS are, on the machine side, plug-compatible with the
respective handwheels without FS, thanks to the M23 connecting element,
and they have the same features. As a result of the new logic behind the per-
missive buttons, only one of the two buttons needs to be pressed during per-
missive mode.

Note

 Due to the changed logic of the permissive buttons, do not replace the
HR 520 FS and HR 510 FS with the respective variant without FS.
 Please note that even if servicing is required, an HR 520 FS may not be
replaced by an HR 520. This also applies to replacing an HR 510 FS with
an HR 510, 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 ser-
vicing 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 "Adapterstek-
ker FS" and the ID 271958-05 on the ID label.

Note

 Please note that the dummy plug for FS handwheels may not be ex-
changed 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 handw-
heels (ID 271958-03) may be used on systems that have a standard hand-
wheel (without FS).

82 HEIDENHAIN Technical Manual TNC 640


HR 510 handwheel
Portable electronic handwheel with snap-on
(exchangeable) keys, (See "Key symbols for HR 510"
on page 100).
 Five axis selection keys
 Keys for traverse direction
 Keys for preset feeds
 Actual-position-capture key
 Three keys for machine functions
(definable with PLC)
• Spindle right/left/stop
• NC start/stop, spindle start;
(for HEIDENHAIN PLC basic 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.
Cable:
ID 1117852-03 Connecting cable to cable adapter (3 m spiral cable)
ID 1117853-xx Connecting cable to cable adapter (normal cable)
ID 1117855-xx Connecting cable to cable adapter (with metal armor)
ID 296466-xx Adapter cable to control
ID 281429-xx Extension to the adapter cable
ID 271958-03 Dummy plug for emergency-stop circuit

September 2015 2.6 Overview of Components 83


Key assignments HR 510 *):

With detent: With detent: With detent:


ID 1120313-XX ID 1119974-XX (FS) ID 1099897-XX
ID 1120314-XX (FS)

Without detent:
ID 1119971-XX
ID 1120311-XX (FS)

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

*) For a list of the keys available for exchanging, See "Key symbols for HR 510" on page 100.

84 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 pixel, 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 buttons and emergency
stop button (24 V)
 Magnetic holding pads
 Mount for attaching the handwheel to the
machine (ID 591 065-xx)
 Mass approx. 1 kg
ID 670 302-xx HR 520 handwheel
ID 670 303-xx Handwheel HR 520 with detent
HR 520FS handwheel
 Graphic display,
resolution: 128 x 64 pixel, 6-line display
 6 NC keys
 6 PLC keys with LEDs that are controlled
through the PLC
 2 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
 Mass approx. 1kg

ID 670304-xx Handwheel HR 520FS

ID 670305-xx Handwheel HR 520FS with detent

September 2015 2.6 Overview of Components 85


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 pixel, 6-line display
 6 NC keys
 6 PLC keys with LEDs that are controlled
through the PLC
 2 override potentiometers (feed rate and
spindle speed)
 2 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
 Mass approx. 1kg
without mechanical detent:
ID 598 515-xx
with mechanical detent:
ID 606 622-xx
Accessories (1 x included with the HR 550 FS):
Handwheel batteries
(battery pack, 4x)
ID 623 166-xx

86 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-01 Connecting cable to cable adapter (3 m spiral cable)


ID 296 467-xx Connecting cable to cable adapter (normal cable)
ID 296 687-xx Connecting cable to cable adapter (with metal armor)
ID 296 466-xx Adapter cable to MB 6xx
ID 281 429-xx Extension to the adapter cable

Dummy plug for handwheels:


 Bridge for emergency stop
 Dummy plug for FS handwheels: No permis-
sion for cross-circuit safety logic of permissive
buttons
 Dummy plug for standard handwheels: No per-
mission for cross-circuit safety logic of permis-
sive buttons

Dummy plug for FS handwheels


ID 271958-05

Dummy plug for standard handwheels


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

September 2015 2.6 Overview of Components 87


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 Handwheel HR 150


without detent, with
ergonomic control
knob, radial cable outlet

Handwheel HR 150
ID 540940-07 with detent, with ergo-
nomic control knob,
radial cable outlet

Handwheel selection
switch
ID 270908-xx

88 HEIDENHAIN Technical Manual TNC 640


2.6.12 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
 Mass: 4 kg

IPC 6641 ID 1039543-xx

Additionally required for IPC 6641:


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

September 2015 2.6 Overview of Components 89


2.6.13 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 inter-
faces on the rear side
 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
 Mass approx. 7.0 kg

ITC 755 ID 1039527-xx

90 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
 8 soft keys, 6 soft keys for PLC
 3 soft keys for switching soft-key rows
 Key for screen layout and operating mode swit-
ching
 Integrated USB hub (USB 2.0) with 5 USB inter-
faces on the rear side
 Additional USB interface (USB 2.0) on the front
 1 x Gigabit Ethernet interface
 Fulfills IP54 degree of protection when installed
 Mass: 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
 8 PLC soft keys to the right and
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 inter-
faces on the rear side
 1 x Gigabit Ethernet interface
 Fulfills IP54 degree of protection when installed
 Mass approx. 7.8 kg

ITC 760 ID 827086-xx

September 2015 2.6 Overview of Components 91


2.6.14 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 HEIDEN-
HAIN.

Key symbols for the


spindle
Key Designation Key Designation
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 probing operation 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 100 per cent
black/gray black/gray
679843-51 679843-50
Spindle from per cent Spindle on per cent
black/gray black/gray
679843-49 679843-48
Spindle jog left Spindle jog right
black/gray black/gray
679843-46 679843-47
Spindle clamping
black/gray
679843-99

92 HEIDENHAIN Technical Manual TNC 640


Key symbols with
axis designations
Key Designation Key Designation
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
Without symbol
–/orange
679843-35

Key symbols
for axis direction
keys Key Designation Key Designation
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

September 2015 2.6 Overview of Components 93


Key Designation Key Designation
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

94 HEIDENHAIN Technical Manual TNC 640


Key symbols for
machine functions-
Key Designation Key Designation
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 conveyor back
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

September 2015 2.6 Overview of Components 95


Key Designation Key Designation
Print/Background Print/Background
ID ID
Machine illumination Spotlight
black/gray black/gray
679843-76 679843-A4
Clamp chuck Unclamp chuck
black/gray black/gray
679843-E7 679843-E8
Suction Washing
black/gray black/gray
679843-E3 679843-E6
Clamp/unclamp pallet
black/gray
679843-C6

Other key symbols

Key Designation Key Designation


Print/Background Print/Background
ID ID
Without symbol Without 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 Right arrow upwards
black/gray black/gray
679843-66 679843-58
Right arrow Arrow upwards
black/gray black/gray
679843-41 679843-42
– +
black/gray black/gray
679843-60 679843-59
– +
white/black white/black
679843-D1 679843-D2

96 HEIDENHAIN Technical Manual TNC 640


Key Designation Key Designation
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

September 2015 2.6 Overview of Components 97


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

98 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

September 2015 2.6 Overview of Components 99


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

Key symbols for the


spindle
Key Designation Key Designation
Print/Background Print/Background
ID ID
Spindle stop Spindle start
white/red white/green
1092562-17 1092562-22
Spindle direction left Spindle direction right
black/gray black/gray
1092562-18 1092562-19

Key symbols with


axis designations
Key Designation Key Designation
Print/Background Print/Background
ID ID
X Y
black/orange black/orange
1092562-05 1092562-06
Z A
black/orange black/orange
1092562-07 1092562-02
B C
black/orange black/orange
1092562-03 1092562-04
IV V
black/orange black/orange
1092562-08 1092562-09

Key symbols for


machine functions-
Key Designation Key Designation
Print/Background Print/Background
ID ID
Function A Function B
white/black white/black
1092562-14 1092562-15
Function C
white/black
1092562-16

100 HEIDENHAIN Technical Manual TNC 640


Key symbols for
axis direction keys
for the principal Key Designation Key Designation
axes Print/Background Print/Background
ID ID
X– X+
black/gray black/gray
1092562-29 1092562-28
Y– Y+
black/gray black/gray
1092562-31 1092562-30
Z– Z+
black/gray black/gray
1092562-33 1092562-32
IV– IV+
black/gray black/gray
1092562-25 1092562-24
V– V+
black/gray black/gray
1092562-27 1092562-26

Other key symbols

Key Designation Key Designation


Print/Background Print/Background
ID ID
Without symbol Actual position capture
–/black white/black
1092562-01 1092562-10
NC start NC stop
white/green white/red
1092562-20 1092562-21
NC start Unchuck
white/green black/gray
1092562-23 1092562-34
Right arrow Feed rate 1
black/gray black/gray
1092562-35 1092562-13
Feed rate 2 Rapid traverse
black/gray black/gray
1092562-12 1092562-11

September 2015 2.6 Overview of Components 101


2.6.16 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 measu- The TS touch probe has a stylus with which it probes workpieces. The TNC
rement 640 provides standard routines for datum setting and workpiece measure-
ment and alignment. The touch probes are available with all common taper
shanks. Assorted styli are available as accessories.

Touch probe TS 260


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

ID 738082-xx TS 260 (axial connector)

ID 738283-xx TS 260 (radial connec-


tor)

Touch probe TS 249


Triggering touch probe with signal transmission
over cable connection for grinding machines and
lathes with especially compact dimensions.

ID 682202-xx TS 249 (axial mounting


base)

ID 683109-xx TS 249 (radial mounting


base)

102 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, colli-
sion 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 repeata-
bility, 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 ope-
ration 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; optio-
nally, 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 Transceiver unit SE 640

Transceiver unit SE 642


ID 652792-xx
Transceiver unit SE 660

ID 744719-xx Transceiver unit SE 540

ID 626001-xx

SE 660 SE 540

September 2015 2.6 Overview of Components 103


Tool measurement

Tool Touch Probe TT 160


Touch trigger probe with rated break point of the
connection pin for the probe contact and optical
deflection display. With pluggable cable connec-
tion.
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 trans-
mission can be selected.
ID 728346-xx TT 460

104 HEIDENHAIN Technical Manual TNC 640


2.6.17 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 sepa-
rate 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 diffe-
rent 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 sup-
ply 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 MS 111 must be used in
the inverter row where the current consumption
is very high.
ID 673685-xx MS 111

September 2015 2.6 Overview of Components 105


2.6.18 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
 Power supply: 24 V
 Capacitance: 8.3 F
 Max. charging current: 2.4 A
 Internal resistance discharge)
Maximum: 156 mOhm
Typical: 65 mOhm
 Discharging current 30 A

ID 574087-02 CML 110

106 HEIDENHAIN Technical Manual TNC 640


2.6.19 Documentation
The features of the TNC 640control are described in the following manuals:

User  HEIDENHAIN Conversational programming User's Manual


documentation (ID 892903-xx)
 User's Manual for Cycle Programming (ID 892905-xx)
 User's Manual DIN/ISO Programming (ID 892909-xx)

Technical  This manual


documentation Technical Manual TNC 640 (ID 892899-xx)
 Technical Manual Inverter Systems and Motors (208962-xx)
 Technical Manual for Functional safety (ID 749363-xx)

Programming  TNC 640 Programming station CD-ROM – demo version (ID 825164-xx)
station

Other  TNC 640 brochure (ID 892916-xx)


documentation  TNC 640 OEM brochure (ID 896020-xx)
 Functions of the TNC 640 brochure (ID 1110731-xx)
 Touch Probes brochure (ID 1113984-xx)
 Inverter Systems brochure (ID 622420-xx)
 Motors brochure (ID 208893-xx)
 HEIDENHAIN DNC brochure (ID 628968-xx)
 Remote Diagnosis with TeleService Product Overview (ID 348236-xx)
 Touch Probes CD-ROM (ID 344353-xx)

September 2015 2.6 Overview of Components 107


2.7 Short 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 7532
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 19-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

108 HEIDENHAIN Technical Manual TNC 640


Specifications TNC 640
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
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 downward-compatible with 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 downward-compatible with 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 downward-compatible with EnDat 2.1)
 10 PWM outputs
 Power supply via UV(R), UE or UR power supply unit

September 2015 2.7 Short description 109


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 control-
ler
 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
 UEC 113: Up to 6 digital control loops, connection for 5
axes plus spindle
 Integrated braking resistor
 UEC 11x: 38 PLC inputs, 23 PLC outputs (expandable
via PL 61xx)
 UEC 11xFS: 38 PLC inputs, 28 PLC outputs (expandable
via PL 61xx), 8 FS outputs, 8 FS inputs
 Interfaces to the speed encoders
 Interfaces to the position encoders
 Interfaces for one TS and TT touch probe each
 +24 V NC supply voltage with 3.5 A for MC and other
control components
 DC-link connection for additional PSL 130
UMC 11x
Controller unit with integrated inverter and PLC. Supply
via external DC-link, for controlling auxiliary axes
 HSCI interface
 Controller unit with position, speed and current control-
ler
 Up to 4 digital control loops, connection for 4 axes
 No integrated braking resistor
 UMC 11xFS: 38 PLC inputs, 28 PLC outputs (expanda-
ble via PL 61xx), 8 FS outputs, 8 FS inputs
 Interfaces to the speed encoders
 Interfaces for one TS and TT touch probe each
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 via SPI expansion module
Cycle time for path interpolation 3 ms

110 HEIDENHAIN Technical Manual TNC 640


Specifications TNC 640
Options
Software options can be enabled by entering a code
number
Visualization
15- or 19-inch TFT color flat-panel display
Program memory
> 138 GB with HDR hard disk
> 21 GB with SSDR Solid State Disk
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
Straight line 5 out of 18 axes
4 out of 18 axesa
Circular 2 out of 18 axes
3 out of 18 axes with tilted working plane
Helical Superimpositioning of circular and straight paths
Look-ahead Pre-calculation of up to 5000 blocks for determining the
contouring velocity profile

September 2015 2.7 Short description 111


Specifications TNC 640
Feedback control with CC 61xx / UEC 1xx
Position loop resolution Signal period
or encoder resolution (EnDat 2.2
4096
interpol.)
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 per-
formance, then:
Speed controller cycle time = Current controller cycle
time
Cycle time of position controller = Cycle time of speed controller

112 HEIDENHAIN Technical Manual TNC 640


Specifications 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 can be selected:
3333Hz, 4000 Hz, 5000 Hz
with option 49: 6666 Hz, 8000Hz, 10000Hz
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


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 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

September 2015 2.7 Short description 113


Specifications TNC 640
Error compensation
 Linear and nonlinear axis error
 Backlash
 Hysteresis
 Reversal spikes
 Thermal expansion
 Static 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
 Supply voltage
 Buffer battery
 Operating temperature
 Run time of PLC program
 Motor current
 Motor temperature
 Temperature of power module
 DC-link voltage
Integrated PLC
PLC memory 1 GB on HDR hard disk
Program format Statement list (STL)
PLC process 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

114 HEIDENHAIN Technical Manual TNC 640


Machine interfacing TNC 640
Commissioning aids
 Oscilloscope
 Trace function
 Table function
 API DATA function
 Watchlist function
 Logic diagram (integrated in oscilloscope)
 Log
 OLM (OnLine-Monitor)
 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
 Extended data interface with LSV-2 protocol for data
exchange and external operation of the control with
HEIDENHAIN TNCremo software
Permissible temperature range Operation: +5 °C to +40 °C
Storage: -20 °C to +60 °C

September 2015 2.7 Short description 115


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 dual-channel digital inputs and 8 dual-
channel digital outputs
• PLD-H 08-04-00 FS:
I/O module with 8 dual-channel digital inputs and 4 dual-
channel digital outputs
• PLA-H 08-04-04
I/O module with 8 x +/– 10 V inputs, 4 x +/- 10 V analog out-
puts, 4 x PT 100 inputs
• Empty housing for unused slots of a PL
Power supply for  PSL 13x
HSCI components 24 V power supply unit for supplying the HSCI components
• Outputs:
NC: 24 V– (double insulation)
PLC: 24 V– (double basic insulation)
per output: max. 21 A/500W
total: max. 32 A/750 W
• Outputs can be connected in parallel
Electronic handwheels  One portable HR 510, 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 handw-
heel
Touch probes  TS 260, a triggering touch probe with cable connection for work-
piece 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

116 HEIDENHAIN Technical Manual TNC 640


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 development software
 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
 TNCkeygena
Software for enabling SIK options for a limited time, and for day-
by-day access to the OEM area
 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 creation and execution of acceptance tests
 TeleServicea
Software for remote diagnosis, monitoring, and operation
 RemoTools SDK
Function library for developing customized applications for com-
munication 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 Inter-
net.

September 2015 2.7 Short description 117


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 distance per minute
Coordinate transformation
 Tilting the working plane, PLANE function
 Circular interpolation in 3 axes with tilted wor-
king plane

#9 Advanced function Interpolation 617921-01


set 2
 Straight-line interpolation in 5 axes
(export license required)
3-D compensation
 of the tool length and diameter via surface nor-
mal 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 – Main-
tain position of the tool tip when positioning
with tilting axes (via M128in the NC program)
and with additional options (via FUNCTION TCPM
in the NC program)
 M144: Compensating the machine’s kinema-
tic configuration for ACTUAL/NOMINAL positi-
ons 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

118 HEIDENHAIN Technical Manual TNC 640


Option Option Description ID
number

#18 HEIDENHAIN DNC Communication with external Windows applica- 526451-01


tions through the HEIDENHAIN DNC COM com-
ponent. For more information, see the Remo-
Tools SDK brochure, ID 628968-xx.

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


 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 con- AFC: Adaptive feed control 579648-01


trol (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 pro-
gramming language that can be used within the
control (PLC).

#48 KinematicsOpt Touch probe cycles for automatic measure- 630916-01


ment of rotary axes
Performing an initial measurement and optimi-
zing the active kinematics of rotary axes (exclu-
ding 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.

#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 installa-
tion (see the User’s Manual)

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

September 2015 2.7 Short description 119


Option Option Description ID
number

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

#93 Extended tool The enhanced tool management function addi- 676938-01
management tionally 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 Expanded synchronization of axes and spindles 1085731-01


functions

#136 Visual Setup VSC: Camera-based monitoring of the clamping 1099457-01


Control situation

#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 para- 800545-01


control meters

#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

120 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).

September 2015 2.7 Short description 121


2.8 Software

2.8.1 Software identification


The control features a separate software for the NC and the PLC. The NC soft-
ware 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 soft-
ware, the NCK version and the version of the PLC program. An installed ser-
vice 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

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

Export license Export Remark


340590-xx 340591-xx TNC 640

Due to restrictions on the export of the TNC 640, HEIDENHAIN can also sup-
ply 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.

122 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 soft-
ware 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 SIK (System Identification Key) determines the available software options
and the number of available control loops on the TNC 640. Each main compu-
ter 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 num-
ber of required control loops. Additional control loops (up to the maximum per-
missible number) can be enabled at any later time. See "SIK for TNC 640" on
page 63.
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 118.
If you need the code number for enabling additional control loops or software
options, please contact HEIDENHAIN. 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 con-
tact HEIDENHAIN. 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 respec-
tive 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 ena-
bled for the respective axis or spindle.

September 2015 2.8 Software 123


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 informa-
tion—activating and deactivating axes" on page 1077), 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.

124 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 (inclu-
ding 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 2362.

September 2015 2.8 Software 125


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: Control model

Performance Class: Type of main computer

Features: Characteristics of the con-


trol

126 HEIDENHAIN Technical Manual TNC 640


SIK Information:

Display Meaning

Serial no. (SN): SIK number

Control Type Control model

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!

September 2015 2.8 Software 127


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 num-
ber 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 num-
ber.
 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 chan-
ges. 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.

128 HEIDENHAIN Technical Manual TNC 640


Temporary enab- You have the possibility of enabling software options with a temporary code
ling of an option number for a limited time. You can define a time between 10 to 90 days for
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 tem-
porary 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 pro-
blems 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 unautho-
rized 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.

September 2015 2.8 Software 129


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.

130 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 opti-
ons 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 opti-
ons 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/K <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

September 2015 2.8 Software 131


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 con-
trol from the intermediate storage medium.
 HEIDENHAIN recommends making a backup of the control, for example
with TNCbackup (included in TNCremo), before updating the NC soft-
ware.

General  The following files are required for an update:


information - setup.zip
- setup.ini (this one must be created by the OEM and is only required if the
update has to be performed according to a specific pattern)
This means, however, that currently, the version of the software to be instal-
led is not displayed beforehand.
Note

You can download the file required for the update (setup.zip) from the
HESIS Web Including Filebase and unzip them 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 149.
 Automated updating is possible. If your directories are structured appropria-
tely 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 133.
 The update file (setup.zip) is automatically copied to the system partition as
part of the update program in directories with the following naming conven-
tion:
• SW update: SYS:\zip\<Identno>_<ver>
• Service pack: SYS:\zip\<Identno>_<ver>_SP<n>
Attention

No manual changes must be made in these directories.

132 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 confi-
guration or data on the PLC partition can be updated as well, according to
the OEM’s specific requirements. The OEM uses the HEIDENHAIN PC soft-
ware 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.
Here, it is also possible 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 opera-
ting system.
The list of possible files is equivalent to the files that are saved with a com-
plete backup using TNCbackup 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 con-
tains such a file.

Note

For detailed information on how to add OEM specific files to the setup pak-
ket, refer to "Generate Machine Setup" in the PLCdesign online help. Sup-
port from PLCdesign for this purpose is available 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 neces-
sary in addition to the setup.zip file. If your directories are structured appro-
priately 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 addi-
tion to the update files, an update is performed automatically according to the
instructions in this control file.
The following directory is checked during booting for the presence of a control
file:
 USB0:\install\ (USB0: first partition of the first USB memory device)
The setup.ini file can be created with a simple text editor.
e.g. setup.ini file—the setup procedure must be confirmed by the user:
Interactive=1
Confirm=1
DeletIni=1
e.g. setup.ini file—automatic setup procedure without user prompting:
Interactive=0
Confirm=0
Language=ENGLISH
SavePlc=TNC:\backup\340590_006.zip

September 2015 2.8 Software 133


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 named SYS:\zip. This makes it possible
to return to this software version later.
0: no
1: yes [default]
DeleteArchives= Procedure with insufficient memory on the SYS
[DATE,SIZE, CANCEL] partition for the update
(only if Interactive=0) DATE: Delete oldest archive preferentially
[default]
SIZE: Delete largest archive preferentially
CANCEL: Abort update
Language=[ENGLISH, Language for the dialog guidance during the
GERMAN] update if no user activities are required for star-
(only if Confirm=0) ting the update and rebooting (Confirm=0)
GERMAN: German
ENGLISH: English [default]
DelSource=[0, 1] Delete the source files (setup.zip, setup.ini) once
the update has completed successfully
0: no [default]
1:
DeleteIni=[0, 1] Delete the setup.ini file after a successful update.
0: No [default]
1: Yes

134 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 ver-
sion 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 for-
mat) 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.

September 2015 2.8 Software 135


Manual NC soft- Manual update (with running NC software)
ware 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 dis-
played, please proceed as follows:
• Switch to the mode of operation Programming
• 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 soft key
CONNECT DRIVE
• 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 con-
firm 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 pro-
gress bar.
 If the update was implemented 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, fol-
low 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.

136 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 directo-
ries.
 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 133.

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 configu-
machine ration. These update rules are automatically executed during the first restart
parameters after the update and make the changes to the configuration. During the first
boot after the update, the control therefore requests you to check and save
the update rules and the changes made automatically to the machine configu-
ration.
Before executing the update rules, a backup of the current machine configu-
ration is created. The backup file is stored under PLC:\config.bak\.
If, following the software update, automatic modifications to the machine con-
figuration need to be carried out, the TNC 640 displays the Software change
recognized dialog window during startup. There are two ways to adjust the
machine configuration to the new version of the NC software:
 Automatic adjustment of the configuration – the TNC 640 performs all con-
figuration adjustments automatically.
 Reviewing and saving the new configuration manually – open the configura-
tion editor to check and save the adjustments.
Proceed as follows to adjust the configuration automatically:
 Press the ADAPT CONFIG. AUTOMAT. soft key to have the TNC 640 per-
form the required adjustments to the machine configuration automatically.
It is not necessary to enter a code number.

September 2015 2.8 Software 137


Proceed as follows to save the configuration only after having reviewed it in
the configuration editor:
 Enter the code number 95148 to access the machine configuration.
 Press the CONFIG. EDITOR soft key.
 Press the UPDATE RULES soft key. Review the rules displayed and com-
plete this step by pressing the END soft key.
 Press the CONFIG DATA soft key.
The TNC 640 now guides you through a number of dialog windows that help
you delete parameter objects. All new machine parameters are marked with a
symbol (white "N" on red background) in the tree view of the configuration
data. Changed machine parameters are also marked with a symbol (white
exclamation mark on red background). 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 press it again to exit the operating mode
Machine Parameter Programming
The control loads the new machine parameters and continues the boot pro-
cess.
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 automa-
ted changes to the machine configuration.
For a description of how to create update rules, see "Update rules" on
page 527.

138 HEIDENHAIN Technical Manual TNC 640


Resetting table If you perform a so-called downgrade of the NC software, i.e. change from a
configuration to an higher to a lower software version, the TNC 640 allows you to undo changes
older NC version or extensions made to tables. Since this feature is available in software ver-
(NC software sion 34059x-06 and higher, please note the following: A rollback to a table con-
34059x-06 and figuration earlier than version 34059x-06 is not possible.
higher)
Downgrading uses table update rules to reset all changes to the older version.
If the version ID of a table is higher than the current configuration version of
the control, the table updater will display the Table of a newer software ver-
sion is available dialog window during start-up.
If change information exists, you can proceed as follows:
 Press the OK soft key to undo changes made to the table by the later ver-
sion.
 Press the CANCEL soft key to check the next table format without adjusting
the current table or continuing the control start-up.
If no change information was found for the table configuration, the TNC 640
displays a corresponding message. Table downgrades are based on files of
the *.udp.dep type that are created as backup copies once an update rule has
been executed. Proceed as follows if a backup copy for a table does not exist:
 Restore the table from a suitable backup file.
 Press the OK soft key to resume the review of the table configuration.

Danger

If major changes were made to the configuration objects in the meantime,


these changes will be overwritten by restoring the previous values.
Always make a backup of the TNC 640 before performing an upgrade or
downgrade of the NC software!

It is not possible to cancel the review process as a whole. You must acknow-
ledge each configuration object for which a conflicting configuration version
exists.

September 2015 2.8 Software 139


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 a USB memory is connected during startup of the control
 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 "Auto-
mated update (setup.ini)" on page 133).

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 opera-
This is how to perform an update via remote operation. The control must be
tion
configured for TeleService (see page 2792).
 In the Programming and Editing mode of the TNC 640, press the MOD key.
 On the TNC 640, activates remote maintenance using external access to the
Service ON soft key.
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 136.
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 opera-
tion).
 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.

140 HEIDENHAIN Technical Manual TNC 640


NC software The control version (TNC 640 or TNC 640 E) is stored in the SIK. If the NC soft-
exchange from ware is exchanged on a software version different from that stored on the SIK,
standard version to after the control starts up a message appears that the control can be operated
export version (and only as a programming station. This message must be acknowledged.
vice versa) Procedure for exchanging the NC software:
 Exchange the NC software as described in "NC software exchange on the
TNC 640" on page 132.
After the control powers up, Incorrect software version appears.
 Switch off the control.
 Exchange the SIK for a new, appropriate SIK (for the ID, see page 50); for
the location of the SIK in the MC, See "Additional control loops or software
options" on page 123.
 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 num-
ber, 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.

September 2015 2.8 Software 141


2.8.5 Installing a Service Pack

Attention

When needed, HEIDENHAIN prepares service packs for the various versi-
ons 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 imple-
ments 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 instal-
led 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 installa-
tion 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 down-
load 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. 34059006sp1.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 instal-
led 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 136.

142 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 soft-
ware checks the firmware versions of the individual HSCI components. After
a software update, during initial operation or after replacing a hardware com-
ponent, 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—other-
wise 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 rea-
sons, some of the individual HSCI components must be updated successively.
This makes it necessary to switch off the control repeatedly via the main
switch.

Configuration During startup, a control in an HSCI system expects the complete configura-
tion 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 partici-
pant 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

September 2015 2.8 Software 143


MP_iocProject machine parameter (103402) you enter the path and name of
the project file (e.g. %OEM%\IOC\Structure.ioc). When the control is next boo-
ted, 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 chek-
ked and accepted by the user. (See "Monitoring hardware changes" on page
157.)
The control will also start 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. Select the Accept button in the dialog window
to confirm the detected configuration and continue start-up of the control.
However, further configuration of the control is not possible. In the Pro-
gramming 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 confi-
guration with IOconfig.

144 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 operating mode)
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.

Structure of the To access the HEROS menu structure, press the left HEIDENHAIN key on the
HEROS system keyboard or move the mouse cursor to the lower edge of the screen.
menu
The following options exist:

Main Menu Submenu Short description

About This option starts the HEROS


HeROS License Viewer. It informs you
on the packages installed and
the Open Source licenses.

NC Control Opens the NC Control Panel.


Can be used to restart or stop
the NC application.

Web browser Starts the Mozilla Firefox web


browser

Remote Using the Remote Desktop


Desktop Manager, you can establish
Manager various remote connections to
the control.

September 2015 2.8 Software 145


Main Menu Submenu Short description

Diagnostic  GSmartControl This submenu lists all available


 HELogging diagnostic tools.
 HEMenu
 Portscan
 Portscan OEM
 Remote Service
 Terminal

Settings  Screensaver This submenu lists all available


 Date/Time programs for system settings.
 Firewall
 Language/Keyboards
 Network
 SELinux
 Shares
 VNC
 WindowManager
Config

Tools  File Manager This submenu lists some addi-


 Document Viewer tional helpful programs.
 Gnumeric
 HePacketManager
 HePacketManager
Custom
 Leafpad
 perf2
 Ristretto
 TNCguide
 Xarchiver
 Applications
(Orage Calendar, Real
VNC Viewer)

Note

Some of the programs listed above can only be run once you have entered
the OEM or system password.

146 HEIDENHAIN Technical Manual TNC 640


Diagnostic The following selected programs are described below. For any Open Source
submenu projects that are no HEIDENHAIN programs, please refer to the official docu-
mentation of these projects.

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 menu item Diagnostics
 Select the menu item HE Logging
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 tar-
get 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, which you can copy from the con-
trol (e.g. with TNCremo) and send by e-mail.
The folder mnt under file system is the folder that contains the HEIDENHAIN
partitions TNC, PLC and SYS.
From software version 34059x-05, the LogExplorer program is available for
evaluating log files. This is found in the HE Logging menu under the NC Log/
Service File tab. Explore Log Files enables diagnosis files on the control
to be searched for and grouped according to the time stamp.

September 2015 2.8 Software 147


HEROS PortScan The HeROS "Diagnostic" menu includes a program called "Portscan" or "Ports-
can OEM".
This program can be enabled manually or run automatically in a selectable
time-slot pattern (5 min to 24 h). It will search for all open listening TCP and
UDP ports and compares them to four whitelists stored that may be optionally
in the system:
 /etc/sysconfig/portscan-whitelist.cfg
 /mnt/sys/etc/sysconfig/portscan-whitelist.cfg
 /mnt/plc/etc/sysconfig/portscan-whitelist.cfg
 /mnt/tnc/etc/sysconfig/portscan-whitelist.cfg
For each entry, the whitelist specifies the port type (TCP/UDP), the port num-
ber, the providing program, and optional comments.
The scan result is entered into a log file (LOG:/portscan/scanlog and LOG:/
portscan/scanlogevil). If new ports have been found that are not included in
any of the whitelists, a notification will be displayed.
Under Configuration, you can enter open ports into the selected whitelist
(depending on the corresponding permissions).

Settings The following selected programs are described below. For any Open Source
submenu projects that are no HEIDENHAIN programs, please refer to the official docu-
mentation of these projects.

Language/ This menu item starts the helocale program. This program is used in HEROS
Keyboard to set the system language and keyboards.
The following settings are possible:

Tab Description

Language On this tab, you can set the system language. After
changing the language, you need to restart the system.

Keyboards This tab shows the connected keyboard(s). Use the


Change button to can configure them, as desired. Con-
nected HEIDENHAIN keyboards cannot be changed.

148 HEIDENHAIN Technical Manual TNC 640


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 soft-
ware 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 data in the PLC:\etc\selinux directory should not
be deleted. These files are directly related to the function of the SELinux secu-
rity 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 exe-
cuted.
 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 selec-
ted explicitly.
 New files generated by other programs must never be executed.
 There are only two processes that are permitted to execute new files:
• Starting 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 the SELinux configuration
The configuration of SELinux should be protected by a password.
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 stan-
dard installation or were modified by the user. In such cases the user's chan-
ges must be checked and corrected, if necessary.
 OEM specific applications with executable files. In such cases the applica-
tion of SELinux must be tested more thoroughly and possibly be adapted.

September 2015 2.8 Software 149


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 mana-
ger, 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.

150 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Password Protection

Set Password Input a password for the SELinux configura-


tion
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 configura-


tion.

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 per-


updates mitted.

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.

September 2015 2.8 Software 151


Menu item Function

Allow NC to Allow modifications to operating system


change HEROS files with the PC software from HEIDEN-
config files HAIN
This menu item must be active if the Bak-
kup and Restore functions are to be execu-
ted with the TNCremo PC tool.

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 / connect USB mass
memory devices via the USB interfaces of
the control. This also applies to connected
ITC's in clone mode.
If it is attempted to connect a USB storage
device and the option is deactivated, a
warning ("USB device blocked") is shown
on the screen at bottom right for 15
seconds.

Allow program Allow execution of files or programs in the


execution in / "/opt" operating system folder.
opt (optional Optional operating system accessories are
packages) stored in this special operating system
directory. This directory is managed exclu-
sively by the operating system – you cannot
access it with the file manager.
This menu item must be active if for
example additional codec packs should be
installed.

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.

152 HEIDENHAIN Technical Manual TNC 640


Menu item Function

Partitions to Relabel

Relabel the Sets a new label only for the SYS partition
system parti-
tion "/"

Relabel optio- Sets a new label for the operating system


nal software folder "/opt"
packages ("/
opt" folder)

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


software parti- PLC and TNC
tions

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.

September 2015 2.8 Software 153


Tools The following selected programs are described below. For any Open Source
Submenu projects that are no HEIDENHAIN programs, please refer to the official docu-
mentation of these projects.

Overview 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
 PDF 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-Kalender
Simple organizer and calendar
• Real VNC Viewer
By means of Virtual Network Computing (VNC), every PC can be moni-
tored and controlled by any other PC.
 Web browser
Firefox (web browser) for opening HTML files
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 menu item Tools
 Start the desired tool.

154 HEIDENHAIN Technical Manual TNC 640


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

Media player – sup- The operating system of the control now contains the "Totem" media player
port for special file for playing e.g. audio and video files. The "Totem" media player is installed on
formats the control and starts automatically if a file with suitable file extension is ope-
ned. This enables media files of format "Ogg" (.ogg, .oga, .ogv, .ogx) to be
played as standard.
For specific applications it may however be necessary to support other data
formats such as MPEG4 and H264. The "codecs" required to process such
data formats require official licenses and are therefore not included in the stan-
dard scope of the HEROS operating system. You can however install such
codecs at a later time. The control therefore supports retroactive installation
of the ONEPLAY codec pack from the provider Fluendo.
Procedure for downloading the codec pack at Fluendo (www.fluendo.com):
 Log on as a user (Log on)
 Download / purchase the ONEPLAY Codec Pack
This file (*.rpm) can be transferred with TNCremo for example to the corre-
sponding control.

Note

 The installed codec pack remains permanently on the TNC even after a
software update.
 The codec pack is not a component of the control backup via TNCbackup.
When servicing, (e.g. exchanging the storage medium), the codec pack
must be installed again manually after the restore process.

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 menu item Tools
 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 after
entering the operating system password.
 Click the button Install
 Select the codec pack to be installed from (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
managed exclusively by the operating system – you cannot access it with
the file manager.
 The installed codec pack is then displayed under Custom RPM.
 Exit the dialog with the OK button. The data formats included in the codec
pack are then supported.
If required, you can delete installed codec packs with the Remove Now button.

September 2015 2.8 Software 155


If SELinux is active on the control and after installing the codec pack, relabeling
of the "/opt" directory must be triggered by the SELinux function Relabel
Files (Relabel optional software packages ("/opt" folder)). In addition,
executing programs in the "/opt" directory must be explicitly permitted in the
SELinux settings (menu item Allow program execution in /opt (optional
packages)) to enable the codec pack to be used.

2.8.8 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 fea-
tures 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 con-
cerning the TNC 640 with functional safety.

156 HEIDENHAIN Technical Manual TNC 640


2.8.9 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 boots the next time, the dia-
log 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 identifi-
cation 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 chek-
ked by qualified personnel!

Danger

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


and, if necessary, accepted!

September 2015 2.8 Software 157


2.8.10 Data backup
For data backup, HEIDENHAIN offers the PC software TNCbackup free of
charge. TNCbackup provides convenient functions for backing up and resto-
ring 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 TNCbak-
kup 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.

158 HEIDENHAIN Technical Manual TNC 640


2.9 Released NC Software
The following NC software was released for the TNC 640 and MC 6xxx/
MC7xxx/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
 NC-Software 340590-05 and 340591-05 January 2015

September 2015 2.9 Released NC Software 159


160 HEIDENHAIN Technical Manual TNC 640
3 Mounting and electrical installation

3.1 General information

Attention

Keep the following in mind during mounting and electrical installation:


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

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.

September 2015 3.1 General information 161


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 31V.
 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.

162 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.

September 2015 3.1 General information 163


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 contai-
ners.
 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

164 HEIDENHAIN Technical Manual TNC 640


An important part of the working area is a suitable working surface with a wrist
strap with 1 MOhm grounding resistance for grounding the person:

September 2015 3.1 General information 165


3.2 Environmental conditions

3.2.1 Storage and operating temperatures

Manually specifying

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 7532 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 (32° to 113° F)
TE 6xx
MB 7xx, 0 °C to +50 °C 0° C to +45° C (32° to 113° F)
TE 7xx
PLB 6001 0 °C to +50 °C 0° C to +45° C (32° to 113° F)
PLB 6002
HR 4xx, 0° C to +45° C (32° to 113° F)
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)

166 HEIDENHAIN Technical Manual TNC 640


Conditions for Because the MC is installed in the operating panel, additional heat is generated
integrating the MC that must be emitted to the surroundings through the panel wall. The required
in the operating temperature difference depends on the design and the size of the panel.
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 (122° F).
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 dissipa-
ting 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 550 FS: –20 °C to +21 °C at a charge
status of 40 %.
Humidity for storage of NiMH rechargeable batteries in the HR 550 FS:
Relative humidity 5 < 60% RH

September 2015 3.2 Environmental conditions 167


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 EN 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
obstructive
Inverter
elements

elements which
generate
considerable heat

168 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 in Technical
Manual):
Vibration +/– 0.075mm, 10 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 max. 30 days per
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 4/3/6100
Burst 61000-4-4 Severity level 3 DIN EN 4/4/6100
Surge 61000-4-5 Severity level 3 DIN EN 4/5/6100
Conducted Severity level 3 DIN EN 4/6/6100
disturbances

3.2.4 Installation elevation


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

September 2015 3.2 Environmental conditions 169


3.2.5 Mounting position of components in the electrical cabinet
For example, MC 6xxx, CC 61xx, UV(R) 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 may oc-
cur with the UE 21xB with integra-
ted braking resistor; do not mount
any temperature-sensitive parts!

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

170 HEIDENHAIN Technical Manual TNC 640


3.2.6 Mounting position 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)

September 2015 3.2 Environmental conditions 171


3.2.7 Mounting position 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 pos-
sible with UEC 11x (FS) with inte-
gral braking resistor; Do not mount
any temperature-
sensitive components!

Leave space for servicing and con-


necting 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)

172 HEIDENHAIN Technical Manual TNC 640


3.2.8 Mounting position 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

September 2015 3.2 Environmental conditions 173


3.2.9 Mounting position of MC 7532

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

174 HEIDENHAIN Technical Manual TNC 640


3.2.10 Mounting position 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

September 2015 3.2 Environmental conditions 175


3.2.11 Mounting position 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

176 HEIDENHAIN Technical Manual TNC 640


3.2.12 Mounting position 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!

September 2015 3.2 Environmental conditions 177


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!

178 HEIDENHAIN Technical Manual TNC 640


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!

September 2015 3.4 Mounting the Solid State Disk (SSD) 179
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 screen, CPU Intel Core i7-3 1.7 1071597-xx
GHz 2 cores with SSDR, 4 GByte RAM, version for operating panel
MC 7532 Main computer with 19-inch TFT screen, CPU Intel Core i7-3 1.7 1124449-xx
GHz 2 cores with SSDR, 4 GByte RAM, version for operating panel
MC 6341 Main computer 2.2 GHz dual core with HDR, electrical cabinet 671226-xx
version
MC 6341 Main computer 2.2 GHz dual core with HDR, electrical cabinet 735873-xx
version, with PROFIBUS interface
MC 6541 Main computer, CPU Intel Core i7-3 1.7 GHz 2 cores with HDR, 1081185-xx
4 GByte RAM, version for electrical cabinet
MC 6542 Main computer, Intel Core i7-3 CPU 1.7 GHz 2 cores with SSDR, 1081188-xx
4 GByte RAM, suitable for operating panel or electrical cabinet
MC 6641 Main computer, CPU Intel Core i7-3 2.1 GHz 4 cores with HDR, 811550-xx
4 GByte RAM, version for electrical cabinet

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, CPU Intel Core 1039543-xx
i7-3 2.1 GHz 4 Cores, 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

Module for Expansion module for expanding with a PROFIBUS-DP interface 828539-xx
PROFIBUS-DP X121 for following models: MC x5xx, MC x6xx, IPC x6xx
Module for Expansion module for expanding with two PROFIBUS-IO interfaces 828541-xx
PROFINET-IO X621 and X622 for following models: MC x5xx, MC x6xx, IPC x6xx

180 HEIDENHAIN Technical Manual TNC 640


Hardware component ID
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
Connectingcable 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)
Connectingcable Ribbon cable for connecting 2 x X69 connectors of the CC 6106 325816-24
(2 x CC 6106)
UMC 111 FS Controller unit with inverter and PLC for power supply via external 664231-xx
DC link, 4 control loops, functional safety
UEC 111 Controller unit with inverter and PLC, 4 control loops 1081002-xx
UEC 111 FS Controller unit with inverter and PLC, 4 control loops, functional 1075825-xx
safety
UEC 112 Controller unit with inverter and PLC, 5 control loops 1081003-xx
UEC 112 FS 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 113 FS 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 735 FS Keyboard unit with touchpad and integrated MB for HSCI 805493-xx
connection, functional safety (FS), 15-inch, stainless steel
TE 745 FS 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 720 FS Machine operating panel for HSCI connection, functional safety, 805474-xx
15-inch, stainless steel

September 2015 3.5 Overview of components 181


Hardware component ID
PLB 6001 HSCI adapter for OEM-specific machine operating panel, 668792-xx
72 digital inputs, 40 digital outputs
PLB 6001 FS HSCI adapter for OEM-specific machine operating panel, functional 722083-xx
safety (FS), 36 digital FS inputs, 40 digital outputs
PLB 6002 FS HSCI adapter for OEM-specific machine operating panel, functional 1137000-xx
safety, 4 digital FS inputs, 64 digital 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 6104 FS PLB for HSCI, 4 slots, functional safety 590479-xx
PLB 6106 FS PLB for HSCI, 6 slots, functional safety 804755-xx
PLB 6108 FS PLB for HSCI, 8 slots, functional safety 804756-xx
PLB 6204 FS PLB for HSCI, 4 slots, with system module, functional safety 586789-xx
PLB 6206 FS PLB for HSCI, 6 slots, with system module, functional safety 622721-xx
PLB 6208 FS 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 digital high-side outputs on channel B, 4 digital low-
side 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, 8 x +/- 10 V inputs, 4 x +/- 10 V analog outputs, 4 675572-xx
x 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-xx
HSCI, 4 analog outputs ±10 V

HSCI cable HSCI connecting cable 618893-xx


HDL cable Connecting cable for connection to BF 625901-xx

182 HEIDENHAIN Technical Manual TNC 640


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.

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
1095625-01
UV 130?D 824215-01 389311-01 index E
UVR 130D 728248-01, 377639-01 index K
1095626-01
UVR 140D 728253-01 390281-01 index N
1084190-01
UVR 150D 728255-01 390421-01 index P
1080611-01
UVR 160D 728257-01, 530341-01 index G
1095627-01
UVR 160DW 728258-01, 560106-01 index G
1095809-01

September 2015 3.5 Overview of components 183


Device designation Device ID for systems Device ID for systems
with integrated FS without integrated FS
UVR 170DW 546911-02
UVR 170D 807429-01
Non-regenerative compact inverters
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, 1081002-xx
1075825-02
UEC 112 (FS) 1075826-01, 1081003-xx
1075826-02
UEC 113 (FS) 1038694-01, 828471-xx
1038694-02
UMC 111 (FS) 664231-02 No enabling
664231-03
Regenerative compact inverters
UR 242D 741359-01 536565-01 index A
UR 230D 741356-01 536561-01, index A
UR 240D 741357-01 536564-01 index B

184 HEIDENHAIN Technical Manual TNC 640


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.
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
PLB 6002 FS 1137000-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 6xxx FS, 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

September 2015 3.5 Overview of components 185


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 510 (FS) 1120311-xx, 1119971-xx,
1120314-xx (with 1120313-xx (with
detent) detent)
1119974-xx (with 1099897-xx (with
detent) detent)
HR 520 (FS) 670304-xx, 670302-xx,
670305-xx (with detent) 670303-xx (with detent)
HR 550 FS 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.

186 HEIDENHAIN Technical Manual TNC 640


3.6 HSCI

3.6.1 Introduction
The main computer is connected to the controller units (CC or UxC) and the
PLB 6xxx PLC basic modules in the electrical cabinet via HSCI (HEIDENHAIN
Serial Controller Interface). 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 MC, IPC, MB, PLs and BF are supplied with power via the PSL 130
power supply unit. The voltages of the PSL 130 correspond to the PELV
system as per 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 controller motherboards


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

MB (FS), 2 in the system


PLB 6001 (FS)
PLB 6002 FS
(HSCI slave)

PLB 61xx (FS), 7 in the system


PLB 62xx (FS)
(HSCI slave)

Handwheel HR (FS) 1 in the system


(at 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))

September 2015 3.6 HSCI 187


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:
• First device after the master (main computer): Bus address 1
• Second 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.

188 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" of the configuration data
CfgPlcOverrideF, CfgPlcOverrideR and CfgPlcOverrideS.
 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(FS) or PLB 6002 FS connected to
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/compi-
led, 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, HEIDEN-
HAIN recommends setting the override values to 0 for the time the PLC pro-
gram 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.

September 2015 3.6 HSCI 189


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

190 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 (FS) or PLB 6002 FS.
However, do not connect any devices other than a machine operating panel or
a PLB 6001 (FS) or PLB 6002 FS 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.

The connection between two HSCI components, e.g. from X500 of the MC to
X502 of the CC or from X500 of the CC to X502 of a PL 6xxx, is also referred
to as HSCI segment. The maximum permissible cable length of an HSCI
segment is 70 m. The maximum total length of all HSCI segments depends on
the number of HSCI slaves connected to the system:
 Up to 12 HSCI slaves: maximum total length of all HSCI segments = 290 m
 In the maximum version with 13 HSCI slaves: maximum total length of all
HSCI segments = 180 m

Note

The max. permissible length of an HSCI segment is 70 m.

September 2015 3.6 HSCI 191


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 191.
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

192 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, 15“, 1 = Hard disk
computer in 1.8 GHz modular (HDR)
operating panel,
3 = Intel Core Duo, 3 = Operating panel, 19“, 2 = Solid state disk
new stainless-
2.26 GHz modular (SSDR)
steel design,
HSCI 4 = Intel Celeron 1047 CPU, 4 = Electrical cabinet
dual-core, 1.4 GHz
5 = CPU Intel Core i7-3, 5 = Electrical cabinet or
2 cores 1.7 GHz operating panel
6 = CPU Intel Core i7-3,
4 cores 2.1 GHz

September 2015 3.7 TNC 640 connection overview 193


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 344
X29 Reserved –
X27 RS-232-C/V.24 data interface 346
X X141, X142, USB 3.0 interface (Type A) 347
X143, X144
X101 +24 V NC power supply 232
X29
X116 X500 HSCI output 1 192
+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 600x
X500
X501
(not with MC 6x5x)
X600 Reserved –
X600
X601 Reserved –
Slot Optional field bus module 299
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!

194 HEIDENHAIN Technical Manual TNC 640


3.7.3 MC 7532

MC 7532: Main computer for installation in the operating panel, integrated display, HSCI interface
Pin layout Connector Function Page
X26, X116 Ethernet data interface 344
X29 Reserved –
X
X27 RS-232-C/V.24 data interface 346
X141, X142, USB 3.0 interface (Type A) 347
X116 X143, X144

X125 X101 +24 V NC power supply 232


X29

+24V X500 HSCI output 1 192


X601
0V (synchronized) to CC, PL,
X27
MB
X141 X142
X26 (not with MC 6x5x)
X116 X501 HSCI output 2, only to MB or
X143 X144
X500
PLB 600x
X501 (not with MC 6x5x)
X600 Reserved –
X600
X601 Reserved –
Slot Optional field bus module 299
X125 SIK (System Identification –
Key)
X X3 Connection for screen soft –
keys
€ Protective ground –

Attention

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


under power!

September 2015 3.7 TNC 640 connection overview 195


3.7.4 MC 6241

MC 6241: Main computer for installation in electrical cabinet


Pin layout Connector Function Page
X26, X116 Ethernet data interface 344
X29 Reserved –
X27 RS-232-C/V.24 data interface 346
X141, X142 USB 2.0 interface (Type A) 347
X101 +24 V NC power supply 232
X500 HSCI output 1 192
(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 348


X501
display unit
X601
X121 MC 6x4x: PROFIBUS 299
(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!

196 HEIDENHAIN Technical Manual TNC 640


3.7.5 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 344
X29 Reserved –
X27 RS-232-C/V.24 data interface 346
X141, X142 USB 2.0 interface (Type A) 347

X29 X101 X101 +24 V NC power supply 232


24V
0V X500 HSCI output 1 192
X27 (synchronized) to CC, PL,
X142
MB
X141 X26
(not with MC 6x5x)
X702 X501 HSCI output 2, only to MB or
X500
PLB 6001
X501
(not with MC 6x5x)
X28
X600 X600 Reserved –
X249
X249 HDL interface for visual 348
X601
display unit
X121 MC 6x4x: PROFIBUS 299
X125 (option)
X121
X125 SIK (System Identification –
X116 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 6242 into the operating panel, special integra-
tion conditions must be observed, see page 167.

September 2015 3.7 TNC 640 connection overview 197


3.7.6 MC 6341

MC 6341: Main computer for installation in electrical cabinet


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

X141 X26
X600 Reserved –
X125 X142
X500 X249 HDL interface for visual 348
X601
X501 display unit
X121 MC 6x4x: PROFIBUS 299
X600 X249
(option)

X121 X125 SIK (System Identification –


Key)
X601 Reserved –
€ Protective ground –

Attention

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


under power!

198 HEIDENHAIN Technical Manual TNC 640


3.7.7 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 344
X29 Reserved –
X27 RS-232-C/V.24 data interface 346
X141, X142 USB 3.0 interface (Type A) 347
X143, X144
X29 X101 +24 V NC power supply 232
+24V
X101
0V X500 HSCI output 1 192
X27 (synchronized) to CC, PL,
X142 MB
X141 X26 (not with MC 6x5x)
X143 X116 X501 HSCI output 2, only to MB or
X144
X125 PLB 6001
X500
X501 (not with MC 6x5x)
X601
X600 Reserved –
X600 X249 X249 HDL interface for visual 348
display unit
Slot Optional PROFIBUS module 299
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 integra-
tion conditions must be observed, see page 167.

September 2015 3.7 TNC 640 connection overview 199


3.7.8 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 344
X29 Reserved –
X27 RS-232-C/V.24 data interface 346
X141, X142, USB 3.0 interface (Type A) 347
X143, X144
X101 +24 V NC power supply 232
X500 HSCI output 1 192
(synchronized) to CC, PL,
MB
(not with MC 6x5x)
X29
+24V
X101
0V X501 HSCI output 2, only to MB or
X27 PLB 600x
X142 (not with MC 6x5x)
X141 X26

X143 X116 X600 Reserved –


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

Attention

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


under power!

200 HEIDENHAIN Technical Manual TNC 640


3.7.9 IPC 6641

IPC 6641: Industrial PC for installation in electrical cabinet


Pin layout Connector Function
X29 Reserved –
X26, X116 Ethernet data interface 344
X27 RS-232-C/V.24 data interface 346
X141, X142, USB 3.0 interface (Type A) 202
X143, X144
X101 +24 V NC power supply 232
X500 Reserved –
X501 Reserved –
X600 Reserved –
X29
+24V
0V X249 VGA interface for monitor 202
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.

September 2015 3.7 TNC 640 connection overview 201


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

202 HEIDENHAIN Technical Manual TNC 640


3.7.10 ITC 755 Industrial Thin Client

ITC 755; additional operating station with ASCII keyboard and touch screen
Connection overview Connector Function Page
X26 Ethernet data interface 344
X600 Reserved, do not assign –
X141, USB interface (USB 2.0) 347
X142, X143
X144, Reserved, do not assign –
X600 X145, X146
X26 X101 Power supply for NC, 24 V– 232
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!

September 2015 3.7 TNC 640 connection overview 203


3.7.11 ITC 750 Industrial Thin Client

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


Connection overview Connector Function Page
X26 Ethernet data interface 344
X600 Reserved, do not assign –
X141, USB interface (USB 2.0) 347
X142,
X143,
X144,
X145
X146 Reserved, do not assign –
X600
X101 Power supply for NC, 24 V– 232
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!

204 HEIDENHAIN Technical Manual TNC 640


3.7.12 ITC 760 Industrial Thin Client

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


Connection overview Connector Function Page
X26 Ethernet data interface 344
X600 Reserved, do not assign –
X141, USB interface (USB 2.0) 347
X142,
X143,
X144,
X145,
X146
X101 Power supply for NC, 24 V– 232
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!

September 2015 3.7 TNC 640 connection overview 205


3.7.13 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.14 CC 6106

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


Pin layout Connector Function Page
X15 to X20 Speed encoder 329
X51 to X56 PWM output 336
X15 X19
X69 Supply bus 234
X17
X201 to X206 Position encoder 326
X16 X20
X500 HSCI output 192
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 237
5V
X7 Bridge for signal ground 238
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!

206 HEIDENHAIN Technical Manual TNC 640


3.7.15 CC 6108

CC 6108 controller unit with 8 control loops and HSCI interface


Pin layout Connector Function Page
X15A - X18A Speed encoder 329
Drive-control motherboard A
X15A X15B X15B - X18B Speed encoder
Drive-control motherboard B
X17A X17B
X51A - X54A PWM output 336
X16A X16B Drive-control motherboard A
X18A X18B X51B - X54B PWM output
Drive-control motherboard B
X51A X51B
X69A Supply bus 234
X53A X53B Drive-control motherboard A
X52A X52B X69B Supply bus
Drive-control motherboard B
X54A X54B
X201A - X204A Position encoder 326
X74
Drive-control motherboard A
5V
X201B - X204B Position encoder
0V Drive-control motherboard B
X69A X69B
X500A HSCI output 192
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 237
– SPI slot 1 (on bottom, –
reserved for expansion
modules)
– SPI slot 2 (on bottom, –
reserved for expansion
modules)
X7 Bridge for signal ground 238
(= functional ground)
(on bottom)
€ Protective ground –

Attention

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


under power!

September 2015 3.7 TNC 640 connection overview 207


3.7.16 CC 6110

CC 6110 controller unit with 10 control loops and HSCI interface


Pin layout Connector Function Page
X15A - X18A Speed encoder 329
Drive-control motherboard A
X15A X15B X19B
X15B - X20B Speed encoder
X17A X17B
Drive-control motherboard B
X51A - X54A PWM output 336
X16A X16B X20B
Drive-control motherboard A
X18A X18B
X51B - X56B PWM output
X51A X51B X55B Drive-control motherboard B

X53A X53B
X69A Supply bus 234
Drive-control motherboard A
X52A X52B X56B
X69B Supply bus
X54A X54B Drive-control motherboard B
X201A - X204A Position encoder 326
X74
5V
Drive-control motherboard A
0V X201B - X206B Position encoder
X69A X69B
Drive-control motherboard B
X201A X201B X205B X500A HSCI output 192
X203A X203B Drive-control motherboard A
X500A X500B
X502A X502B X202A X202B X206B X502A HSCI input
X204A X204B Drive-control motherboard A
X500B HSCI output
Drive-control motherboard B
X502B HSCI input
Drive-control motherboard B
X74 + 5 V supply 237
– SPI slot 1 (on bottom, –
reserved for expansion
modules)
– SPI slot 2 (on bottom, –
reserved for expansion
modules)
X7 Bridge for signal ground 238
(= functional ground)
(on bottom)
€ Protective ground –

Attention

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


under power!

208 HEIDENHAIN Technical Manual TNC 640


3.7.17 UMC 111 FS

UMC 111 FS: Compact controller unit with inverter, external DC-link supply, PLC I/Os and functional
safety (FS)
Pin layout Connector Function Page
X4, X5 Single-channel PLC inputs 290
X6 Single-channel PLC outputs 294
X15 to X18 Speed encoder 329
X33 DC-link power supply 258
X80 Motor connection, axis 1 257
(9 A rated current at 3.3 kHz)
X81 Motor connection, axis 2
(9 A rated current at 3.3 kHz)
X82 Motor connection, axis 3
(9 A rated current at 3.3 kHz)
X83 Motor connection, axis 4
(9 A rated current at 3.3 kHz)
X103 +24 V power supply 257
X104 Single/dual-channel PLC 292
inputs
X20 X106 Single/dual-channel PLC 295
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 258
X203
holding brake
X394 Motor holding brake 1 to 4 258
– SPI slot 1 (on bottom, –
reserved for expansion
modules)
X500 HSCI output 192
X502 HSCI input
Shield for DC-link 258
B Signal ground –
(= functional ground)
€ Protective ground M5 –

Attention

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


under power!

September 2015 3.7 TNC 640 connection overview 209


3.7.18 UEC 11x with DC-link connection

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

X84
X4 X82 Motor connection, axis 2
(6 A rated current at 3.3 kHz)
X18
X83 X83 Motor connection, axis 3
X20 X206
(9 A rated current at 3.3 kHz)
X17
X82
X205 X84 Motor connection, axis 4
X19
X81 X16 (6 A rated current at 3.3 kHz)
X85 Motor connection, axis 5
X80
X202
X15 (6 A rated current at 3.3 kHz)
X204
X113 X87 DC-link connection for 267
X201
X203 X112
PSL 13x
X72 X71
X89 Braking resistor 267
X90 +24 V NC output / 3.5 A 267
X112 TS touch trigger probe 342
X113 TT touch trigger probe
X201 to X206 Position encoder 326
X344 +24 V supply for motor 268
X31 X502 holding brake
X500
X394 Motor holding brake 1 to 5 268
X6 – SPI slot 1 (on bottom, –
reserved for expansion
modules)
X500 HSCI output 192
X502 HSCI input
€ Protective ground M5 –

210 HEIDENHAIN Technical Manual TNC 640


Attention

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


under power!

September 2015 3.7 TNC 640 connection overview 211


3.7.19 UEC 11x FS with DC-link connection

UEC 11x FS: Compact controller unit with integrated inverter and PLC I/Os
(with functional safety (FS)), with ID 1075825-xx, ID 1075826-xx, ID 1038694-xx
Pin layout Connector Function Page
X4, X5 PLC inputs 290
X6 PLC outputs 294
X344 X15 to X20 Speed encoder 329
X89
X394
X90 X31 Supply voltage for UEC 11x 264
(3 x 400 V ± 10 %)
X71 Safety relay for spindle 266
(pulse inhibitor for spindle)
X72 Safety relay for axes (pulse
X85 inhibitor for axes)
X394
X80 Motor connection, spindle 266
(24 A rated current at 3.3
kHz)
X87
X81, X82, Motor connection, axis 1, 2,
X5
X106 X84, X85 4 and 5 (6 A rated current at
X4 3.3 kHz)
X84 X104
X83 Motor connection, axis 3
X83
X18 (9 A rated current at 3.3 kHz)
X20 X206
X87 DC-link connection for 267
X17
X82
X205
PSL 130
X19
X81 X16 X89 Braking resistor 267
X90 +24 V NC output / 3.5 A 267
X80 X15
X202 X104 Single/dual-channel PLC 292
X204
X113 inputs
X201
X72 X71 X203 X112 X106 Single/dual-channel PLC 295
outputs
X112 TS touch trigger probe 342
X113 TT touch trigger probe
X201 to X206 Position encoder 326
X344 +24 V supply for motor 268
holding brake

X31 X502 X394 Motor holding brake 1 to 4 268


X500
– SPI slot 1 (on bottom, –
X6
reserved for expansion
modules)
X500 HSCI output 192
X502 HSCI input
€ Protective ground M5 –

212 HEIDENHAIN Technical Manual TNC 640


Attention

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


under power!

September 2015 3.7 TNC 640 connection overview 213


3.7.20 General information on the PLB 6xxx

Alternate operation All slots of the PLB 6xxx series are interrogated cyclically at a clock of 3 ms.
of the PLB 6xxx This clock is possible only if no more than seven slots are occupied by
slots modules. If eight slots or more are occupied by modules, the last modules are
operated alternately in pairs so as to not exceed the maximum number of
modules. This is independent of the sequence of the modules in the slots.
Also, individual slots between the modules may be vacant. The system
module (slot 0) in the PLB 62xx is counted as a module.
Overview of the slot numbering using a PLB 6208 as example
System module
Bus module

Slot 0

Slot 1

Slot 2

Slot 3

Slot 4

Slot 5

Slot 6

Slot 7

Slot 8
If eight slots are occupied by modules, the last two modules are operated
alternately; if nine slots are occupied by modules, the last four modules are
operated alternately in pairs. A clock of 6 ms applies to these modules.

Examples:
PLB 6206
System module: 1 slot occupied
6 slots occupied by modules = 7 modules
Clock n (3 ms): modules 1, 2, 3, 4, 5, 6, 7
Clock n+1 (3 ms): modules 1, 2, 3, 4, 5, 6, 7
No alternate operation
Bus module

Module 1

Module 2

Module 3

Module 4

Module 5

Module 6

Module 7

PLB 6208
System module: 1 slot occupied
8 slots occupied by modules = 9 modules
Modules 6+7 alternating, modules 8+9 alternating = 7 modules
Clock n (3 ms): modules 1, 2, 3, 4, 5, 6, 7
Clock n+1 (3 ms): modules 1, 2, 3, 4, 5, 8, 9
Alternate operation
Bus module

Module 1

Module 2

Module 3

Module 4

Module 5

Module 6

Module 7

Module 8

Module 9

214 HEIDENHAIN Technical Manual TNC 640


PLB 6208
System module: 1 slot occupied
4 slots occupied by modules = 5 modules
Clock n (3 ms): modules 1, 2, 3, 4, 5
Clock n+1 (3 ms): modules 1, 2, 3, 4, 5
No alternate operation
Bus module

Module 1

Module 2

Module 3

Module 4

Module 5
---

---

---

---
PLB 6108
No system module
8 slots occupied by modules = 8 modules
Modules 7+8 alternating = 7 modules
Clock n (3 ms): modules 1, 2, 3, 4, 5, 6, 7
Clock n+1 (3 ms): modules 1, 2, 3, 4, 5, 6, 8
Alternate operation
Bus module

Module 1

Module 2

Module 3

Module 4

Module 5

Module 6

Module 7

Module 8
---

September 2015 3.7 TNC 640 connection overview 215


216
PLB 6xxx FS
modules on the
Positioning of FS

Bus module Bus module Bus module Bus module Bus module Bus module

System module System module System module System module System module System module

FS module FS module FS module FS module FS module FS module

--- --- Non-FS module --- --- FS module

Non-FS module --- FS module FS module --- FS module

--- Non-FS module FS module --- FS module FS module

FS module FS module Non-FS module Non-FS module Non-FS module Non-FS module
The following example assignments are permissible:

Non-FS module Non-FS module Non-FS module Non-FS module Non-FS module Non-FS module

The following example assignments are not permissible:


Non-FS module Non-FS module Non-FS module Non-FS module --- Non-FS module

Non-FS module Non-FS module Non-FS module --- --- Non-FS module
FS modules (fault-safe, dual-channel) must be positioned before non-FS
modules. A maximum of four FS modules can be used in a PLB. Non-FS
modules may be used to occupy the remaining slots after the FS modules.

HEIDENHAIN Technical Manual TNC 640


Positioning of During transmission, analog modules generate a larger amount of data than
analog modules on digital modules. Data transmission is therefore divided into several clock
the PLB 6xxx cycles. A fully assigned PLA analog module requires at least six clock cycles
(18 ms) to transmit all analog values to the PLC. This applies during non-
alternate operation. Other effects, such as input filters and the type of
electrical load on the module, also come into play. Alternate operation results
in twice the transmission time (at least 36 ms).
Depending on the application, you can decide whether to insert PLA modules
into slots for alternate or non-alternate operation. A maximum of two analog
modules can be used per PLB.

September 2015 3.7 TNC 640 connection overview 217


3.7.21 PLB 62xx

System module
Pin layout Connector Function Page
X500 HSCI output 192
X502 HSCI input
X9 PLC inputs/outputs 283
X2 Reserved –
X3 + 24 V NC, + 24 V PLC power supply 274
X112 TS or TT touch trigger probe 342
X113 TS or TT touch trigger probe
Diagnosis: For meanings of the LEDs, see page 275

3.7.22 PLB 62xx FS

System module
Pin layout Connector Function Page
X500 HSCI output 192
X9 X502 HSCI input
X500
X9 Safety-related PLC inputs/outputs 284
X502
X2 Reserved –
X3 + 24 V NC, + 24 V PLC power supply 274
X112 TS or TT touch trigger probe 342
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.
I/O modules for FS must be used for inputs/outputs with functional safety.
X113
Diagnosis: For meanings of the LEDs, see page 275
X3

218 HEIDENHAIN Technical Manual TNC 640


3.7.23 PLB 61xx

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

3.7.24 PLB 61xx FS

Expansion module
Pin layout Connector Function Page
X500 HSCI output 192
X502 HSCI input
X500
X2 Reserved –
X502
X3 + 24 V NC, + 24 V PLC power supply 274
I/O modules for FS must be used for inputs/outputs with functional safety.
Diagnosis: For meanings of the LEDs, see page 275

X2

X3

September 2015 3.7 TNC 640 connection overview 219


3.7.25 PLD-H and PLA-H I/O modules

Explanation of PLx-H 11-22-33 HSLS FS


product coding
PL: Programmable logic
x: A = Analog, D = Digital, T = Temperature
H: For PL module on the HSCI bus
11: Number of inputs on the module
22: Number of outputs on the module
33: Number of inputs and outputs with special function on the module
HSLS: Component with high-side and low-side switches
FS: The module supports dual-channel inputs/outputs for FS
For single-channel (non-FS) modules, the sum of the inputs/outputs of the
coding results in the inputs/outputs that can be connected and addressed by
the PLC.
For dual-channel (FS) modules, the sum of the inputs/outputs of the coding
results in the FS inputs/outputs that can be connected via two channels and
addressed by the PLC via two channels. This means that channels A and B can
be addressed for each input/output. For FS modules with HSLS outputs, a
high-side and low-side switch combination is counted as an output in each
case.

Note

PLD-H FS I/O modules for functional safety can be used only in PLB 6xxx
FS.

Diagnosis— Status LED: Module


Meaning of the
The red status LED (topmost connector on the module, pin 1) informs you
LEDs on the module
about the current status of the inserted PLD-H module. The following states
are possible:
 LED is flashing: Status of I/O module is OK
 LED is continuously on during control start-up:
Module not initialized yet
 LED is continuously on or off after control start-up:
Error on I/O module
Status LED: Input/Output
The yellow status LED on the inputs/outputs informs you about the current
switching status.

220 HEIDENHAIN Technical Manual TNC 640


Error recognition 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.

PLD-H 16-08-00
Pin layout Connector Function Page
X11 8 digital PLC inputs, channel A 285
X12 8 digital PLC inputs, channel A
X21 8 digital PLC outputs, channel A 287
X11

X12

X21

PLD-H 08-16-00
Pin layout Connector Function Page
X11 8 digital PLC inputs, channel A 285
X21 8 digital PLC outputs, channel A 287
X22 8 digital PLC outputs, channel A
X11

X21

X22

September 2015 3.7 TNC 640 connection overview 221


PLD-H 08-04-00 FS
Pin layout Connector Function Page
X11 8 digital PLC inputs, channel A 285
Safety
X14 8 digital PLC inputs, channel B
X27 4 digital PLC outputs, channel A and B 287
X11

X14

X27

PLD-H 04-08-00 FS
Pin layout Connector Function Page
X17 4 digital PLC inputs, channel A and B 285
Safety
X21 8 digital PLC outputs, channel A 287
X24 8 digital PLC outputs, channel B
X17

X21

X24

222 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 285
X94 4 digital PLC outputs as high-side channel B 287
X91 4 digital PLC outputs as low-side channel A
HSLS module (high-side switch, low-side switch)
 The high-side and low-side switch combination (series connection: high-
side switch – consumer – low-side switch) must not be loaded with more
than 2 A.
X94
 The high-side and the low-side switches may only be used in combina-
tion, meaning that an HSLS combination must be used only for an actua-
tor. If different components are connected to the high-side and low-side
output, dual-channel control can no longer be guaranteed. This condition
would results in the cross comparison responding.

X91

September 2015 3.7 TNC 640 connection overview 223


PLA-H 08-04-04
Pin layout Connector Function Page
X66 ... X67 4 analog PLC outputs +/- 10 V 298
1a
X66
2a X46 ... X49 8 analog PLC inputs +/- 10 V 298
1c 2c
1a 2a X81 ... X82 4 analog PLC inputs Pt 100 298
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

224 HEIDENHAIN Technical Manual TNC 640


3.7.26 VS 101
The VS 101 working space monitoring camera system is connected to the
control via a network connection and a signal line. The signal line is used both
for transmitting the power and for connecting the limit switches to the PLC.
In addition, there are four pneumatic connections for scavenging air and
sealing air as well as for controlling the cylinder that moves the camera
shutter.ööö To operate the cylinder and open or shut off the scavenging and
sealing air flows, an additional pneumatic is driven by the PLC.To operate the
cylinder and open or shut off the scavenging and sealing air flows, an
additional pneumatic valve must be driven via the PLC.
Electrical characteristics of the camera system (camera and proximity switch):

Voltage Tolerances Ripple Power consumption


12 - 24 V +/- 10% max. 120 mVpp Max. 3.2 W

For more specifications, refer to the documentation of the VS 101 working


space monitoring camera system.

Signal line The signal line supplies both the camera and the proximity switches. The
proximity switches come as normally open contacts and are designed for
switching loads of up to 100 mA. The "shutter closed" switch signal is set
when the camera shutter is fully closed, the "shutter open" switch signal is set
when the camera shutter is fully open.

Camera system Connecting cable


ID 801285-xx
open cable end
Female (M12) Assignment Connector Color
(M12)
1 +12 to +24 V – camera 1 Brown
2 0 V – shutter closed 2 Blue
3 Do not assign 3 White
4 Do not assign 4 Green
5 +24 V – shutter closed 5 Pink
6 Do not assign 6 Yellow
7 "Shutter closed" switch signal 7 Black
8 "Shutter open" switch signal 8 Gray
9 Do not assign 9 Red
10 0 V – shutter closed 10 Violet
11 +24 V – shutter closed 11 GY/PK
12 0 V – camera 12 RD/BL

September 2015 3.7 TNC 640 connection overview 225


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 239.
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
 Machine operating panel MB 7xx(T)
 Keyboard unit TE 7xx(T)
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

226 HEIDENHAIN Technical Manual TNC 640


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 supply voltage. 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). In addition, HEIDENHAIN recommends connec-
ting 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.

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 DC NC power supply of the machine.
 VDE 0160/EN 50178 is to be observed for the 24 V DC 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 to 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.

September 2015 3.8 Supply voltages in the HSCI system 227


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.

228 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 7532 3.1 A

MC 6542 2.0 A

Machine operating PLB 6001 (FS) 0.2 A (without


panel handwheel)

PLB 6002 FS 0.2 A (without


handwheel)

MB 7xx(T) 0.2 A (without


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 (without touch


probe)

PLB 62xx 0.5 A


(incl. TS and TT)

PLB 61xx 0.2 A

PLD 0.05 A

PLA 0.1 A

Screen BF 760 2.5 A

BF 750 2.1 A

September 2015 3.8 Supply voltages in the HSCI system 229


HSCI component Current consumption
at 24 V DC

Handwheels HR 410 0.05 A

HR 510 0.05 A

HR 520 0.05 A

HRA 551 FS 0.5 A (while charging)


HR 550 FS

HR 130 0.05 A

HR 110 + 3 x HR 150 0.2 A

Touch probes See specifications of the touch probes

230 HEIDENHAIN Technical Manual TNC 640


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 "protec-


tive extra-low voltage" (PELV).

Load capacity

Product 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 Product Current consumption 24 V
NC
MC 7410 2.2 A
MB 720 (incl. 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) is sufficient for the connected components.

September 2015 3.8 Supply voltages in the HSCI system 231


3.8.3 X101: NC power supply
The MC or IPC main computer unit is supplied with +24 V NC (control voltage)
from the machine, for example by the PSL 130, See "PSL 13x low-voltage
power supply unit" on page 239 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.
Voltage supply: Minimum absolute value: +20.4 V DC
Maximum absolute value: +28.8 V–
Pin layout:

Connecting Assignment Line 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:

Product 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
MC 7532 75 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).

232 HEIDENHAIN Technical Manual TNC 640


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 234.
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.

Product Load capacity


UVR 1xxD, UE 2xxD Depends on the power supply unit being
used: Refer to the Technical Manual for
Inverter Systems and Motors.

Product 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 controller expansion boards: 0.90 A
each
CC 6108/8 control loops 5.80 A
Consisting of:
2 drive-control motherboard: 2.00 A
2 controller expansion boards: 0.90 A
each
CC 6110/10 control loops 6.70 A
Consisting of:
2 drive-control motherboard: 2.00 A
3 controller 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

September 2015 3.8 Supply voltages in the HSCI system 233


X69: CC-supply
voltage and control
Pin layout:
signals
50-pin ribbon Assignment 50-pin ribbon Assignment
connector connector
1a to 5b +5V 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.
To connect two CC 6106 controller units, use the ribbon cable with
ID 325816-24 (110 mm).

234 HEIDENHAIN Technical Manual TNC 640


However, if you want to arrange two CC 61xx units other than the CC 6106
next to each other in one row, you need to use the ribbon cable with
ID 325816-22 (110 mm, double cable). This cable is required for the following
configurations: 2 x CC6108, 2 x CC 6110 or CC 6110 with CC 6108. The four
X69 connectors 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

September 2015 3.8 Supply voltages in the HSCI system 235


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 237.
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.

236 HEIDENHAIN Technical Manual TNC 640


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 "protec-


tive 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.

September 2015 3.8 Supply voltages in the HSCI system 237


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) via an external bridge. If only one CC 61xx is in the system,
it ensures the correct signal-ground connection of the CC.
If the system includes two or more CC 61xx units that are connected to the
same supply bus (X69) via a UV power module, this external signal-ground
bridge may only stay connected to 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 via more than one UV power
module and are therefore connected to different supply bus systems (X69),
then the external signal-ground bridge is to be connected to 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).

238 HEIDENHAIN Technical Manual TNC 640


3.8.5 PSL 13x low-voltage power supply unit

PSL 130 pin layout Connector Function


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

X33

Attention

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


under power!

September 2015 3.8 Supply voltages in the HSCI system 239


PSL 135 pin layout Connector Function
X31 Input voltages L1, L2: 400 V AC (360 V to
480 V) 50/60 Hz and
connection of the DC-link voltage Uz: 400 V to
750 V DC
B – Signal Signal ground (connected internally to 0 V
ground DC NC, to provide protective ground to the
L1/L2 (= functional 24 V DC NC signal)
+UDC / –UDC ground)
X31
X74 Output for supply voltages:

X74
 Terminal 1: 5 V DC
+5V
0V
 Terminal 2: 0 V DC
X69 Power supply and control signals for CC 61xx
(for X69 on CC)
X90 Output for supply voltages:
X69
 Terminal 1: 24 V DC NC
 Terminal 2: 0 V DC NC
X90 (Ground 24 V DC NC)
24V
0V  Terminal 3: 24 V DC PLC
24V
0V
 Terminal 4: 0 V DC PLC
(Ground 24 V DC PLC)
€ Protective ground

Attention

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


under power!

240 HEIDENHAIN Technical Manual TNC 640


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 via 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 to 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 to 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 DC 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!

September 2015 3.8 Supply voltages in the HSCI system 241


Specifications

Specifications PSL 130 PSL 135


Power supplies: 400 V AC ± 10 % 50 Hz 400 V AC (360 V bis 480 V) 50/
60 Hz
at X33 (L1, L2)
Power supplies:
DC-link power bar or X31
400 V DC to 750 V
Protection Page 244, 246
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
+/-15V-NC at X69:
+15V NC max. 30 W
-15V 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
Output current 5 V NC --- Max. 20 A
24 V output current total Continuous load: max. 31 A
Load period max. 1 s: max. 41 A
Load period max. 0.1 s: max. 46 A

Outputs are short-circuit proof


and switch off automatically when overladed.
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

242 HEIDENHAIN Technical Manual TNC 640


Specifications PSL 130 PSL 135
Degree of protection IP 20
Module width 50 mm
Mass 2.1 kg 3.2 kg (7.1 lb)
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.

UZ DC-link current 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 non-HEIDENHAIN
inverter system has been shut down properly by the control.
If the PSL is connected via stranded wires (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 (6.3 A).

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

September 2015 3.8 Supply voltages in the HSCI system 243


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 packages. Also, this position makes it possible
to connect the grounding conductor of the PSL via conductor bars. Therefore,
offset, non-insulated conductor bars are also included in this package. 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.

X33: Input voltage Supply voltage: 400 V AC ± 10 % 50 Hz


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
Connection line:
Minimum wire cross section: 1.5 mm2 (AWG
16)
Conductor protection (pre-fuse):
Fuses or a motor protection switch of 6.3 A or
greater, depending on the wire cross section
used.
Power fuse:
Internal protection of the PSL (6.3 A).
Tightening torque:
For the connecting terminals
0.5 - 0.6 Nm
Ground connection:
≥ 10 mm2 (AWG 6)
Strain relief:
Make sure the connecting cables are sufficiently strain-relieved.

244 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 3.8 Supply voltages in the HSCI system 245


X31: Input voltage Supply voltage: 400 V AC (360 V to 480 V) 50/60 Hz or
of the PSL 135 400 V to 750 V DC
Connection:

Connecting terminal Assignment


L1 Phase 1 / 400 V AC (360 V to 480 V) 50/60 Hz
L2 Phase 2 / 400 V AC (360 V to 480 V) 50/60 Hz
+UDC 400 V DC to 750 V
–UDC 0 V DC
Protective conductor (YE/GN),
≥ 10 mm2
Connection line:
Minimum wire cross section: 1.5 mm2 (AWG
16)
Conductor protection (pre-fuse):
Fuses of 6.3 A to 16 A (characteristic C or B)
Power fuse:
Internal protection of the PSL (6.3 A).
Tightening torque:
For the connecting terminals
0.5 - 0.6 Nm
Ground connection:
≥ 10 mm2 (AWG 6)
Strain relief:
Make sure the connecting cables are sufficiently strain-relieved.

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

HEIDENHAIN recommends connecting the PSL 135 power supply unit to


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

246 HEIDENHAIN Technical Manual TNC 640


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 "protec-


tive 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 - 0.6 Nm
Strain relief:
Make sure the connecting cables are sufficiently strain-relieved.

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 "protec-


tive 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 - 0.6 Nm
Strain relief:
Make sure the connecting cables are sufficiently strain-relieved
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).

September 2015 3.8 Supply voltages in the HSCI system 247


Power connector 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 via 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 AC 480 V and inverters suitable for this voltage (UE
compact inverters) are used, the PSL 130 must be powered via an additional
autotransformer. The output voltage of the autotransformer must be 400
V AC.

Note

For the PSL 13x power connection, refer to the basic circuit diagram of your
control. Your contact partner at HEIDENHAIN can provide you with this
document upon request.

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 supplied with the PSL as accessory. 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 device. No further external measures
for noise suppression must be taken.

248 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 is not sufficient 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 MS 111 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.

September 20153.9 MS 110 / MS 111 installation kit for double-row configuration 249
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 stranded wires used for the DC-link connection of the power modules
in the "second row" must not be longer than 3 m.
 Stranded wires (litz wires) with 16 mm² cross section make a DC-link cur-
rent 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.

250 HEIDENHAIN Technical Manual TNC 640


Basic circuit diagram for double-row configuration:

September 20153.9 MS 110 / MS 111 installation kit for double-row configuration 251
3.9.3 Connection overview

MS 110 pin layout Connector Function Page


DC-link 400 V DC to 750 V DC –
conductor
bar
Screw strip For fastening the PWM round cable –
shields
X79 Unit bus (connection for ribbon cable) 254
X79C Unit bus (connection for round cable) 255
€ Protective ground

X79

X79C

Attention

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


under power!

252 HEIDENHAIN Technical Manual TNC 640


MS 111 pin layout Connector Function Page
DC-link 400 V DC to 750 V DC –
conductor
bar
Screw strip For fastening the PWM round cable –
shields
X79 Unit bus (connection for ribbon cable) 254
X79C Unit bus (connection for round cable) 255
LED +24 V supply for fans is available
X101 Connection for +24 V supply for fans 255
€ Protective ground

X79

X101

X79C

Attention

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


under power!

September 20153.9 MS 110 / MS 111 installation kit for double-row configuration 253
X79: Unit bus Connection:

40-pin ribbon Assignment


connector
1a to 3b 0 V *1
4a +24 V *1
These voltages may not
4b +24 V *1
be linked with other voltages (only
5a +15 V *1 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 +5V

Danger

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


voltage electrical separation (except for 1a to 6b).

254 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 may not
34 +24 V *1
be linked with other voltages (only
15 +15 V *1 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 +5V

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 DC NC
– / Terminal 2 0 V DC NC

September 20153.9 MS 110 / MS 111 installation kit for double-row configuration 255
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 111 FS


4 axes
Supply voltage DC-link voltage
565 V– or 650 V–
Power loss Approx. 450 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
DC-link power 14 kW
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
Integral braking resistorb Not available
Ampacity +24 V NC Not available
Mass Approx. 13 kg
Degree of protection IP20
ID UMC 111 FS 664231-xx
a. Axis: 0.2 s cyclic duration factor for a cycle duration of 10 s with
70 % rated current preload
Spindle: 10 s cyclic duration factor for a cycle duration of 60 s with
70 % rated current preload
b. 1st value: continuous duty
2nd value: 1.5% cyclic duration factor for a cycle duration of 120 s

256 HEIDENHAIN Technical Manual TNC 640


For operation with the non-regenerative HEIDENHAIN UMC 1xx compact
inverters, you need the following components:
 UMC 1xx compact inverter
 UV, UVR, UR, UE or UEC power supply unit
 Toroidal cores for interference suppression
 PW 210 braking resistor (optional)
 Surge protector (optional)

Note

Also refer to the Technical Manual for Inverter Systems and Motors that
includes more information about the UMC 11x FS controller groups.

X80: Axis motor 1 Connection:


X81: Axis motor 2
X82: Axis motor 3 Connecting Assignment
X83: 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.

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 con-
troller unit of the UMC are supplied via X103. The UMC generates the indi-
vidual 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.

September 2015 3.10 UxC 11x (FS): Power supply and motor connection 257
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
EMC reasons. 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 DC PLC

X394: Motor
holding brakes
Connecting terminals Assignment
1 Holding brake X80
2 0 V DC PLC
3 Holding brake X81
4 0 V DC PLC
5 Holding brake X82
6 0 V DC PLC
7 Holding brake X83
8 0 V DC PLC

258 HEIDENHAIN Technical Manual TNC 640


Mounting the To suppress conducted interference, toroidal cores must be mounted in the
toroidal cores motor leads (X80 to X83).,

UMC 11x

Control of
Motor brakes
via X394

Shield

PE power cable
Pass W, V, U of the axes
three times through the to- Shield for motor brake
Strain relief
roidal core. Arrange the wi-
res in parallel.

To motor

September 2015 3.10 UxC 11x (FS): Power supply and motor connection 259
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 UEC 111


3 axes 1 axis Spindle 2 axes 1 axis Spindle
Supply voltage 3 x 400 V~ ±10 % (50 Hz to 60 Hz)
or: 3 x 480 V~ +6 %/-10 % (50 Hz to 60 Hz)
DC-link voltage 565 V DC (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 resistorc 2.1 kW / 27 kW 2.1 kW / 27 kW
Ampacity +24 V NC 3.5 A 3.5 A
Mass Approx. 14 kg Approx. 14 kg
Degree of protection IP20
ID UEC 11x 1081003-xx 1081002-xx
(old: 625779-xx) (old: 625777-xx)
ID UEC 11x FS 107826-xx 107825-xx
a. Spindle: 40 % cyclic duration factor for a cycle duration of 10 minutes (S6-40 %)
b. Axis: 0.2 s cyclic duration factor for a cycle duration of 10 s with 70 % rated current preload
Spindle: 10 s cyclic duration factor for a cycle duration of 60 s with 70 % rated current pre-
load
c. 1st value: continuous duty
2nd value: 1.5% cyclic duration factor for a cycle duration of 120 s

260 HEIDENHAIN Technical Manual TNC 640


Note

Under some circumstances, certain high-speed spindles cannot be satis-


factorily controlled with a PWM frequency of 3.3 kHz. 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 fre-
quency for X80 and X81. (Note the D rating!)

September 2015 3.10 UxC 11x (FS): Power supply and motor connection 261
Specifications UEC 113
4 axes 1 axis Spindle
Supply voltage 3 x 400 V~ ±10 % (50 Hz to 60 Hz)
or: 3 x 480 V~ +6 %/-10 % (50 Hz to 60 Hz)
DC-link voltage 565 V DC (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 resistorc 2.1 kW / 27 kW
Ampacity +24 V NC 3.5 A
Mass Approx. 14 kg
Degree of protection IP20
ID UEC 11x 828471-xx
ID UEC 11x FS 1038694-xx
a. Spindle: 40 % cyclic duration factor for a cycle duration of 10 minu-
tes (S6-40 %)
b. Axis: 0.2 s cyclic duration factor for a cycle duration of 10 s with
70 % rated current preload
Spindle: 10 s cyclic duration factor for a cycle duration of 60 s with
70 % rated current preload
c. 1st value: continuous duty
2nd value: 1.5% cyclic duration factor for a cycle 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.

262 HEIDENHAIN Technical Manual TNC 640


For operation with the non-regenerative HEIDENHAIN UEC 1xx compact
inverters, you need the following components:
 UEC 1xx compact inverter
 PW 210 braking resistor (optional)
 Toroidal cores for interference suppression
 Surge protector (optional)
 SM 1xx voltage protection module (optional)

Note

Also refer to the Technical Manual for Inverter Systems and Motors that
includes more information about the UEC 11x(FS) controller groups.

September 2015 3.10 UxC 11x (FS): Power supply and motor connection 263
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 different from 400 V / 480 V, an autotransformer is


required. It must comply at least with the connection specifications of the
UEC 11x.

264 HEIDENHAIN Technical Manual TNC 640


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 AC
L1 400 V~ ± 10 %
L2 50 Hz to 60 Hz
L3
Cable/single conductor (HT stranded wire):
6 mm2 (AWG 10)
Single conductor H07 V2-K:
4 mm2 (AWG 10)
Power fuse:
35 A (gR) Type: Siemens Sitor
Ground connection:
≥ 10 mm2 (AWG 6)
Tightening torque for the connecting terminals:
0.7 Nm (6.5 to 7 pound-inch)
Operation on 480 V AC
L1 480 V~ ± 10 %
L2 50 Hz to 60 Hz
L3
Cable/single conductor (HT stranded wire):
6 mm2 (AWG 10)
Single conductor H07 V2-K:
4 mm2 (AWG 10)
Power fuse:
25 A (gR) Type: Siemens Sitor
Ground connection:
≥ 10 mm2 (AWG 6)
Tightening torque for the connecting terminals:
0.7 Nm (6.5 to 7 pound-inch)

September 2015 3.10 UxC 11x (FS): Power supply and motor connection 265
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. The basic circuit diagram is available from your HEIDENHAIN
X72: Safety relay contact person upon request.
for axes
Connecting terminal 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.

266 HEIDENHAIN Technical Manual TNC 640


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 111(FS), UEC 112(FS), UEC 113(FS)


terminals
+ Uz DC-link voltage +
– Uz DC-link voltage –
Line cross section:
4 mm2
Tightening torque, for the connecting terminals:
0.5 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 RB2 2
connected to
UZ

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 "protec-


tive extra-low voltage" (PELV).

September 2015 3.10 UxC 11x (FS): Power supply and motor connection 267
X344: 24 V supply
for motor holding
brakes Connecting terminals Assignment
1 +24 V PLC
2 0 V DC PLC

X394: Motor X394 with 10 pins:


holding brakes
Connecting terminals Assignment
1 Holding brake X80
2 0 V DC PLC
3 Holding brake X81
4 0 V DC PLC
5 Holding brake X82
6 0 V DC PLC
7 Holding brake X83
8 0 V DC PLC
9 Holding brake X84
10 0 V DC PLC

Additional X394 with 2 pins on UEC 113(FS), ampacity 1.5 A:

Connecting terminals Assignment


1 Holding brake X85
2 0 V DC PLC

268 HEIDENHAIN Technical Manual TNC 640


Mounting 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 doub-
le toroidal core. Arrange the wi-
res in parallel.

To motor

September 2015 3.10 UxC 11x (FS): Power supply and motor connection 269
3.11 UxC 11x(FS): Meaning of the LEDs
At the front of the UxC 11x(FS), there 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

270 HEIDENHAIN Technical Manual TNC 640


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. With a current load of
e.g. 15 A this corresponds to a capacity 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 239.

EN 61 131-2:1994 permits:
 Minimum absolute value: 20.4 V DC
 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.

September 2015 3.12 Power Supply for PLC Outputs 271


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 - consumer - 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.

Short-circuit The short-circuit behavior of the PLD series is determined by the integrated
behavior output switching component.serieCurrent monitoring is based on thermal
conditions. This means that the switch-off behavior is determined by other
parameters, such as the volume resistivity of the switching module, the
mounting situation, the ambient temperature at the mounting location, the
load applied to other outputs, etc.
The following short-circuit behavior has been identified (under lab conditions):
Hard short
Short-circuit current limitation between 2.0 and 2.7 A.

Note

The output switching component must not be operated as an overcurrent


protection device. It is mandatory to set up an external overcurrent
protection device. Make sure that the overcurrent protection device
provides the required conductor protection.

272 HEIDENHAIN Technical Manual TNC 640


The behavior in the event of a short-circuit is different, depending on the
type of control, i.e. with or without functional safety (FS).
Without FS: clocked switch-on attempts; resulting current = approx. 0.25 A
With FS: the stopped module is recognized through the cross check; all
outputs are switched off and an emergency stop is triggered.
Overcurrent behavior
approx. 7.5 A: the module is switched off after 30 seconds.
approx. 9.0 A: the module is switched off immediately.

Note

This short-circuit behavior description does not apply to the


PLD-H 04-04-00 HSLS FS due to its design.

September 2015 3.12 Power Supply for PLC Outputs 273


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:
 connected to +24 V NC: Max. 48 W
 connected to +24 V PLC Max. 21 W
For more details regarding the power supply, see page 229.
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 for X3:
Power supply for logic circuit 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)

274 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 errors
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 6xxx FS
X3

September 2015 3.14 Meaning of the LED on PLB 6xxx 275


3.15 Power supply for control-is-ready signal

X9: Power supply The control-is-ready signal output (STO.A.G) is powered by 24 V– provided by
for control-is-ready the PSL 13x power supply unit. The voltage is connected to terminal X9 of the
signal PLB 620x.

Pin layout:

Connecting terminal X9 Assignment


1a +24 V PLC
2b 0 V DC PLC

Power consumption via X9, +24 V PLC: max. 120 W (depending on the
connection of PLC outputs to X9)

276 HEIDENHAIN Technical Manual TNC 640


3.16 Drive controller, enabling

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 1356.

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 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, optional parameter
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, optional parameter
Access: LEVEL3
Reaction: RESET

September 2015 3.16 Drive controller, enabling 277


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 when 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, con-
tactor) 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 272.
 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 per-
form a usability test in accordance with the calculation described in the fol-
lowing, See "Calculation of the voltage drop in "0" state" on page 280.
 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 connec-
ted to the output, See "Calculation of the voltage drop in "0" state" on page
280.

278 HEIDENHAIN Technical Manual TNC 640


 If the holding brakes of motors are not driven exclusively via the inverter out-
puts 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/out-
puts.
 A protective circuit is not necessary only if the holding brakes are driven
exclusively via the inverter outputs for brakes, because the voltage is limited
internally by electronic switches in the inverters.
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.

September 2015 3.17 Digital PLC inputs/outputs 279


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 requires no shunt resistor:
Reversing load relay directly on PLC output, data sheet specifications:
Rated actuating voltage Uc: 24 V DC
Rated actuating 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
R c = --------- = ---------------- = 8kΩ
Ic 3mA
Calculation of the voltage drop ULow in "0" state at the output:
U Low = R c ⋅ 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.

280 HEIDENHAIN Technical Manual TNC 640


Calculation example – resistive load requires shunt resistor:
Interlocking switch directly on PLC output, data sheet specifications:
Rated actuating voltage Uc: 28 V DC
Rated actuating 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.36 V
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
----------------------------- = -------- + ---------
R Gesamt R R
Total c p
1 1 1
----------------------------- = ---------------------------- + -------------
R Gesamt
Total 12.73
12 ,73kΩ kΩ 5kΩ

RTotal 3.59 kΩ = 3.59 kΩ ⋅ 500μA =


Gesamt = 3 ,59kΩ U Low 3 ,59kΩ +
1 ,1.79
79V V

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.

September 2015 3.17 Digital PLC inputs/outputs 281


Terminal X9
connected to the
PLB 62xx (FS) Properties Socket connectors on the PLA-H
08-04-04
Connection: Socket connector with tension clamp,
type
Weidmüller B2L 3.5/30 SN SW
double-row, 30-pin
Connectable conductors: Suitable conductor cross sections
without wire-end sleeves:
0.08 mm2 to 1.0 mm2
Suitable conductor cross sections
with wire-end sleeves:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller
crimping pliers PZ 6/5)

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 appropria-
tely and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross sec-
tion 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 sok-
ket connector and clamped appropriately, and therefore do not result in a
reliable terminal connection.

282 HEIDENHAIN Technical Manual TNC 640


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"
4a O0 24 V outputs (high-side driver)
5a O1
6a O2
7a –ES.A –NE1 / X42.4 / I3 24 V input
"control is ready" response 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 at 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 enable" signal 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

September 2015 3.17 Digital PLC inputs/outputs 283


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: (safe torque off spindle)
X41.32
3a –STO.A.Ga –SH1A (safe stop) 24 V output: (safe torque off)
X41.34 / O33 "control is ready"
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
"control is ready" response Emergency Stop input 1
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 at 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 enable" signal Emergency Stop input 2
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

284 HEIDENHAIN Technical Manual TNC 640


PLC inputs on the
PLD-H
Socket connectors X11, X12, X14, X17, X21, X22, X24, X27, X91, X94
Connection: Socket connector with tension clamp,
type:
Phoenix Contact FK-MCP 1.5/10-ST-
3.81
Connectable conductors: Suitable conductor cross sections
without wire-end sleeve:
0.14 mm2 to 1.5 mm2
Suitable conductor cross sections
with wire-end sleeves:
0.25 - 1.5 mm2 without plastic sleeve
0.25 - 0.5 mm2 with plastic sleeve

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 inter-
nally. These connections are used for connecting the potential of the elec-
tronics 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 (prefe-
rably at X11).
With Low Side outputs on the HSLS modules, the 0VPLC connections
must be wired with low impedance.

September 2015 3.17 Digital PLC inputs/outputs 285


X11: PLC inputs channel A
Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V DC 0 V DC I0 I1 I2 I3 I4 I5 I6 I7
PLC PLC

X12: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V DC 0 V DC I8 I9 I10 I11 I12 I13 I14 I15
PLC PLC

X14: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V DC 0 V DC I0.B I1.B I2.B I3.B I4.B I5.B I6.B I7.B
PLC PLC

X17: PLC inputs, channel A/B


Assignment Terminal
1 2 3 4 5 6 7 8 9 10
PL 6xxx Slot 1 0 V DC 0 V DC I0.A I1.A I2.A I3.A I0.B I1.B I2.B I3.B
PLC PLC

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 consumer. The high-side switch can switch
24 V/2 A, and 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. The latter 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.

286 HEIDENHAIN Technical Manual TNC 640


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

September 2015 3.17 Digital PLC inputs/outputs 287


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).

288 HEIDENHAIN Technical Manual TNC 640


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,
type
Weidmüller B2L 3.5/24 SN SW
double-row, 24-pin
Connectable conductors: Suitable conductor cross sections
without wire-end sleeves:
0.08 mm2 to 1.0 mm2
Suitable conductor cross sections
with wire-end sleeves:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller
crimping pliers PZ 6/5)

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 appropria-
tely and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross sec-
tion 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 sok-
ket 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).

September 2015 3.17 Digital PLC inputs/outputs 289


X4: Single-channel Connections at the front of the UxC 11x (FS):
PLC inputs
 18 single-channel PLC inputs are freely available:
(at the 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 exceed 50 A.

290 HEIDENHAIN Technical Manual TNC 640


X5: Single-channel Connections at the front of the UxC 11x (FS):
PLC inputs (at 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 for
"Control is ready" response
10a –ES.B 24 V input for
"drive enable" signal
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 are not sufficient for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the UxC 111
FS via the HSCI interface.

September 2015 3.17 Digital PLC inputs/outputs 291


X104 – Safety: Connections at the front of the UxC 11x FS:
Two-channel PLC
 8 two-channel PLC inputs:
inputs (at 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 exceed 50 A.

Note

If the integrated PLC inputs are not sufficient for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the UxC 111
FS via the HSCI interface.

292 HEIDENHAIN Technical Manual TNC 640


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 for
"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 are not sufficient for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the UxC 11x
via the HSCI interface.

September 2015 3.17 Digital PLC inputs/outputs 293


X6 – Safety: Connections at the top of the UxC 11x FS:
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: (safe torque off spindle)
12a –STO.A.G 24 V output: (safe torque off)
"control is ready"
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 are not sufficient for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the UxC 11x
via the HSCI interface.

294 HEIDENHAIN Technical Manual TNC 640


X106 – Safety: Connections at the front of the UxC 11x FS:
Single-/double-
 8 two-channel PLC outputs
channel PLC O0.A to O7.A
outputs (at 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 are not sufficient for your application, you can
connect up to 7 additional external PL 61xx expansion PLs to the UxC 111
FS via the HSCI interface.

September 2015 3.17 Digital PLC inputs/outputs 295


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 to
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.

296 HEIDENHAIN Technical Manual TNC 640


Terminals on the
PLA-H 08-04-04
Properties Socket connectors on the PLA-H
08-04-04
Connection: Socket connector with tension clamp,
type:
X81, X82:
Weidmüller B2L 3.5/10 SN SW
double-row, 10-pin
X66, X67, X46, X47, X48, X49:
Weidmüller B2L 3.5/6 SN SW
double-row, 6-pin
Connectable conductors: Suitable conductor cross sections
without wire-end sleeves:
0.08 mm2 to 1.0 mm2
Suitable conductor cross sections
with wire-end sleeves:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller
crimping pliers PZ 6/5)

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 appropria-
tely and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross sec-
tion 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 sok-
ket 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

September 2015 3.18 Analog PLC inputs/outputs 297


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: Analog Pin layout


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

298 HEIDENHAIN Technical Manual TNC 640


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
 MC 7532
To integrate the field bus module into the MC, the protective shield at 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 the 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 to and read from
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 acknowledgment 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 includes a diagnostic software (BUS Diagnosis)
which assists you in troubleshooting.

Note

For more information about PROFIBUS-DP, refer to the website of PROFI-


BUS & PROFINET International PI as the leading organization in this sector.
www.de.profibus.com

September 2015 3.19 Field bus systems 299


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 con-
nected. 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 participants

Non-supported The following functions are not supported on the PROFIBUS module:
functions
 Multimaster operation

300 HEIDENHAIN Technical Manual TNC 640


Pin layout Pin layout of the X121 connector on the PROFIBUS module:

D-sub connection (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 the required 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.

September 2015 3.19 Field bus systems 301


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 (BUS diagnosis, HwViewer) diagnosis software is also
available, facilitating commissioning and error searches.

Note

For more information about PROFIBUS-IO, refer to the website of PROFI-


BUS & PROFINET International PI as the leading organization in this sector.
www.de.profibus.com

Use on the MC The PROFINET-IO module (ID 828541-xx) is used in conjunction with 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.
The PROFINET IO module is available from the following software version:
 34059x05
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)
 Max. number of IO devices on the bus: 21 participants

302 HEIDENHAIN Technical Manual TNC 640


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
prerequisites for connection to the TNC 640 via the PROFINET module:
IO-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 record
RealIdentificationData(data record index 0xE001) defined in the PROFI-
NET standard. This data record is used to compare the module structure of
the actual and nominal configuration.
 The IO device must supply the data record ModuleDiffBlock(data record
index 0xE002) defined in the PROFINET standard. This data record is used
to compare the module structure of the actual and nominal configuration.
 The IO device must supply the data record
Diagnosis, Maintenance, Qualified and Status (data record index
0x800C) defined in the PROFINET standard. This data record is used to read
out the diagnostic messages of the IO device.
 The control software of the TNC 640 and IOconfig support the following
data types for process data as a standard feature: 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.

September 2015 3.19 Field bus systems 303


Non-supported The following functions are not supported on the IO devices:
functions
 Port for automatic deactivation of the machine after 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 functiona-


lity of the IO devices on the TNC 640 is not 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

304 HEIDENHAIN Technical Manual TNC 640


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 Ether-
net.

Note

For more information about configuring PROFINET on the TNC 640, refer
to the help file of the IOconfig software for PCs.

September 2015 3.19 Field bus systems 305


Error messages The following error messages may occur when configuring of
PROFINET on the TNC 640.

Error text State Explanatory text


No contact to Cause The PROFINET terminal does not respond
PROFINET terminal
Cause Possible causes:
 Error in project setup
 Inconsistent configuration of the PROFI-
NET terminal name
 Interrupted connection between TNC
and PROFINET terminal
 There is a fault in the PROFINET termi-
nal
Correc- Check the PROFINET topology and project
tion setup. Acknowledge the error
Com-  A PROFINET terminal is a device con-
ment nected via PROFINET to the TNC
 As part of project set up, each PROFI-
NET terminal is assigned a unique name
 This name must be identical on the ter-
minal and in the configuration data of the
PROFINET interface

Error text State Explanatory text


Faulty module Cause The ACTUAL and NOMINAL configuration
configuration on 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
Correc- Check the hardware setup, the
tion IOC file and the options set.
Correc- You can find more information in the
tion PROFINET diagnostics

306 HEIDENHAIN Technical Manual TNC 640


Error text State 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
Correc- Tell the supervisor to return control to the
tion NC control
Correc- Acknowledge the error
tion
Correc- Switch on the machine
tion
Correc- You can find more information in the
tion PROFINET diagnostics

Note

The error messages specified above cannot be acknowledged by the user.


These remain in the error list until the error has been fixed. When all field
bus devices are available again following configuration, the control
automatically resets the error messages.

Note

If a PROFINET device, in order to report a manufacturer-specific diagnosis,


generates an alarm telegram that does not comply with the standard, the
NC software attempts to explicitly read out the current state of diagnosis
of the device again. If this is successful, the software continues to operate
without an error message.

September 2015 3.19 Field bus systems 307


3.19.3 PROFINET IO and Python

Available functions The TNC 640 provides Python expansions enabling the use of the PROFINET
functions. The following functions are available:
 Read and write data 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


using 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.

Setting up the The PROFINET functions in Python will be available after the module
module libHWSPythonInterface has been imported.
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 To read a data record, the following exemplary command line is added to the
record source code:
record = obj.Read ( index , size )

Parameter Description
record Returned value: read data record as a string
index Data record as int
size Optional: Maximum number of bytes to be read as int. If this
is undefined, the default value of 4096 is adopted

308 HEIDENHAIN Technical Manual TNC 640


Writing data To read a data record, the following exemplary command line is added to the
records source code:
obj.Write ( index , record )

Parameter Description
record Data record to be written as a string
index Data record index as int

Error reaction These error reactions apply to both methods (reading and writing).
If the reading or writing of data records fails, (e.g. the data record 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.

September 2015 3.19 Field bus systems 309


Reading diagnosis To read diagnoses, the "Dpv1 object" must be instantiated using the
"option = 1" parameter:
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 used optionally. 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".

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 Remark


channel long Channel number
channelProperties See properties
errortype long Error code

Expanded channel diagnosis

Key Data type Remark


channel long Channel number
channelProperties See properties
errortype long Error code
extChannelErrorType long Expanded error code
extChannelAddValue long Additional data

310 HEIDENHAIN Technical Manual TNC 640


Qualified channel diagnosis

Key Data type Remark


channel long Channel number
channelProperties See properties
errortype long Error code
extChannelErrorType long Expanded error code
extChannelAddValue long Additional data
qualChannelQualifier long Additional data

Manufacturer-specific channel diagnosis

Key Data type Remark


channel long Channel number
channelProperties See properties
usi long User Structure Identifier
identifying the structure of the
subsequent data record
data Manufacturer-specific data
record with diagnostic
information

Properties
The "channelProperties" are transferred as a dictionary with the following keys:

Key Data type Remark


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 a 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.

September 2015 3.19 Field bus systems 311


Read alarms To read diagnoses, the "Dpv1 object" must be instantiated using the
"option = 2" parameter:
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 used optionally. 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 after the instantiation of the
"Dpv1 object" are supplied.
Alarm information
The alarm information is transferred as a dictionary with the following keys:

Key Data type Remark


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.

312 HEIDENHAIN Technical Manual TNC 640


Reading alarms To read diagnoses, the "Dpv1 object" must be instantiated using the
with history "option = 6" parameter:
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 used optionally. 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".

September 2015 3.19 Field bus systems 313


3.20 IOconfig

General IOconfig is the project development program for all bus systems that can be
information connected to the
TNC 640.

Note

For new configurations, HEIDENHAIN recommends the use of the IOconfig


PC tool (from version 3.0). Please note that a duplicate configuration is not
permissible.
This means that existing configuration data must be deleted beforehand
from the control. In the case of a duplicate configuration, the configuration
data stored in the control will be preferred.
If a duplicate configuration exists, the following warning will appear once
you start up the control:
IPO_FI_PLC_DOUBLEDEF, IPO_FI_DRIVEOFF_DOUBLEDEF,
IPO_FI_SPINDLE_DOUBLEDEF

314 HEIDENHAIN Technical Manual 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 compon-
ents
 Library function for all previously imported field bus devices (e.g. PROFI-
BUS, PROFINET)
 All configurable bus systems together in an iocp file
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 shut-
down (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 out-
puts

Note

For more information about using IOconfig and configuring the field bus
modules, please refer to the IOconfig online help.

September 2015 3.20 IOconfig 315


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.
During the configuration of 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. While the commissioning dialog offers the possibility to
solve the problem, the TNC 640 cannot provide specific information con-
cerning IP address collision.

316 HEIDENHAIN Technical Manual TNC 640


3.21 Buffer battery in MC 7xxx(T), MC 61xx(T)

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 2477N (Renata), ID 315878-04. Do not


use batteries made by other manufacturers as these might damage the
battery socket.
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 1799.
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

September 2015 3.21 Buffer battery in MC 7xxx(T), MC 61xx(T) 317


 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 a computer with 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.

318 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 2477N (Renata), ID 315878-04. Do not


use batteries made by other manufacturers as these might damage the
battery socket.
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 1799.
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

September 2015 3.22 Buffer battery in MC 6441, MC 6541, MC 6641 319


 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 a computer with 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.

320 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 2477N (Renata), ID 315878-04. Do not


use batteries made by other manufacturers as these might damage the
battery socket.
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 1799.
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

September 2015 3.23 Buffer battery of the MC 6542, IPC 6490 321
 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 a computer with 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.

322 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 2477N (Renata), ID 315878-04. Do not


use batteries made by other manufacturers as these might damage the
battery socket.
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

September 2015 3.24 Buffer battery in MC 6240, MC 6241, MC 6341 323


 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 a computer with 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.

324 HEIDENHAIN Technical Manual TNC 640


3.25 Connecting the encoders

3.25.1 Miscellaneous
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: Speed encoder line count


f: maximum input frequency
n: maximum motor speed

Example:
f = 350 kHz; n = 10 000 min–1

350 ⋅ 60 ⋅ 1000
x = --------------------------------------- ≈ 2048
10000

September 2015 3.25 Connecting the encoders 325


3.25.2 Input of position encoder

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 "protec-


tive extra-low voltage" (PELV).

326 HEIDENHAIN Technical Manual TNC 640


X201 to X206: Pin layout:
Position encoder
with EnDat 2.1
interface

CC or UEC Adapter cable 332115-xx VB 323897-xx Adapter cable


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


External External External
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 "protec-


tive extra-low voltage" (PELV).

September 2015 3.25 Connecting the encoders 327


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 Assignment Female Color Female
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 (sensor)
9 9 Blue 14
Vacant
10 Vacant 10
0 V (sensor)
11 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 "protec-


tive extra-low voltage" (PELV).

328 HEIDENHAIN Technical Manual TNC 640


3.25.3 Input of Speed Encoder

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

September 2015 3.25 Connecting the encoders 329


Note

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


"protective extra-low voltage" (PELV).

330 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.

September 2015 3.25 Connecting the encoders 331


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).

332 HEIDENHAIN Technical Manual TNC 640


Pin layout (for the LC or RCN):

CC or UxC (FS) Adapter cable 509667-xx Adapter cable


369124-xx
AK 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/Black 12 12 Blue/Black
7 B– 7 Red/Black 13 13 Red/Black
8 0V 8 Internal 11 11 Internal
shield 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. External Hsg. Hsg. External
shield 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).

September 2015 3.25 Connecting the encoders 333


X15 to X20: Speed Pin layout (LC x15/EnDat22):
encoder with
EnDat 2.2 interface

CC or UxC (FS) Adapter cable 641926-xx Connecting 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.

334 HEIDENHAIN Technical Manual TNC 640


KTY adapter The adapter connector with ID 367770-02 makes it possible for applications
connector with purely serial EnDat 2.2 encoders to connect an external KTY temperature
sensor (e.g. of linear or torque motors) and lead it to the speed encoder input
of the controller unit. The adapter connector can also be used in conjunction
with encoders with EnDat02 and 1 VPP interface.
Pin layout (green 3-pin connector on the adapter):

Connecting Assignment
terminals
Terminal 1 Temperature+
Terminal 2 Temperature –
Terminal 3 0V

The adapter connector is plugged directly onto the speed encoder input (X15
to X20) of the controller unit. It is also approved for use in applications with
functional safety (FS). As an alternative, you can continue using the line drop
compensators with ID 368210-02 or ID 383951-01. They are not approved for
use with the EnDat22 interface or applications with FS, however.
When using multiple adapter connectors on a controller unit, additional cables
are necessary, because the connector for adding an external KTY temperature
sensor was not designed for mounting several adapter connectors side by
side on the CC 61xx.

Encoders with Encoders with


EnDat interface, 1 Vpp interface
EnDat2.1, EnDat2.2)
Cable 1 m 336377-01 312533-01
Cable 3 m 336377-03 312533-03

The cable is plugged directly onto the speed encoder input (X15 to X20) of the
controller unit; the adapter connector is mounted between the new cable and
the actual encoder cable. The adapter connector does not require additional
mechanical securing. It must be ensured that the cables on the adapter
connector are connected and screwed on properly.
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 2 must be set, i.e. enter the value 4.

September 2015 3.25 Connecting the encoders 335


3.26 Connecting the motor power modules (only CC 61xx)
A PWM interface is used to connect HEIDENHAIN or non-HEIDENHAIN
inverters to the TNC 640.
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 IACT: ±7.5 V
PWM frequency: can be set between
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).

336 HEIDENHAIN Technical Manual TNC 640


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 from ID 662636-01 (from index A, June 29, 2010)
 CC 6108 from ID 662637-01 (from index A, June 29, 2010)
 CC 6110 from ID 662638-01 (from index A, June 29, 2010)
 UEC 111 from ID 625777-02 (from index A, February 3, 2010)
 UEC 112 from ID 625779-02 (from index A, February 3, 2010)
 UEC 113 from 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 296.
 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.

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
clamp, type
Weidmüller B2L 3.5/6 SN SW
double-row, 6-pin

September 2015 3.27 Analog nominal value output 337


Properties Socket connectors
Connectable conductors: Suitable conductor cross sections
without wire-end sleeves:
0.08 mm2 to 1.0 mm2
Suitable conductor cross sections
with wire-end sleeves:
0.14 mm2
0.34 mm2
0.5 mm2 (only with Weidmüller
crimping pliers PZ 6/5)

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 appropria-
tely and ensures a reliable terminal connection.
If you use stranded wires with wire-end sleeves and a conductor cross sec-
tion 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 sok-
ket 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 339.

Behavior of CMA-H An error is deemed to be an interruption of the HSCI transmission, insufficient


04-04-00 in case of supply voltage, overtemperature, overcurrent or a short circuit of a nominal-
error: 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.

338 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 3.27 Analog nominal value output 339


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
maximum distance between the CMA-H and the ground point should be
as short as possible and must not exceed a maximum length of 300 mm.
 The shield from the CMA-H to the analog drive must not be interrupted.
 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 AnalogCC value for an (auxiliary) axis or spindle connected to
module the CMA-H plug-in module.
Use MP_analogOutput (CfgAxisAnalog) to assign analog (auxiliary) axes and
analog spindles to the nominal-value outputs on the CMA-H 04-04-00, See
"MP_analogOutput" on page 1067.
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,
MP_analogOutput = analog Output 5...8 is used for the second CMA-H,
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)

340 HEIDENHAIN Technical Manual TNC 640


Wiring overview Possible wiring types of analog drives on the CMA-H 04-04-00.
 direct connection and/or
 with one single intermediate terminal in the shielded terminal box
ID 251249-xx

Analog Drives

±10V
€
0V

Shield

CC / UEC
€ ±10V
1 Axis €
0V

Shield

1 Axis

±10V
€
0V

EMC Shield
Shielding clamp
CMA 1 Axis

As short as possible,
X 66 X 67 but max. 300mm
1. Analog axis
±10V 0V Shield ±10V 0V Shield
2. Analog axis 1b 2b 3b 1b 2b 3b 3. Analog axis
Intermediate terminal Types:
1a 2a 3a 1a 2a 3a
max. 1x,
terminal box
251249-xx
short as possible,
Motor control with nominal
ut max. 300mm
€ value difference input

€
0V

EMC
Shielding clamp €
1
Motor control without nominal
value difference input
0V
€
€

Remarks on the diagram:


 1: Connection of 0 V of the analog drive to the central signal ground is neces-
sary if system-induced crosstalk across channels cannot be tolerated with
the use of multiple axes on a CMA-H 04-04-00.
In order to ensure that the wiring of the analog drives by means of shielded
lines is stable, terminal box ID 251249-xx must be used.

September 2015 3.27 Analog nominal value output 341


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 con-
nection
 TT 449 touch trigger probe for tool measurement with infrared transmission
 TT 460, touch probe for tool measurement with infrared or radio transmis-
sion

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 "protec-


tive 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 DC NC 0 V DC NC
9 0 V DC NC 0 V DC 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 on X112 via machine parameter

342 HEIDENHAIN Technical Manual TNC 640


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 to the +24 V PLC supply voltage, because
this removes the double basic insulation.
If a touch probe needs to be connected to the PLC, galvanic isolation is
required. Only this ensures that double basic insulation for PELV will be
maintained. HEIDENHAIN recommends using the component UTI 491 (ID
802457) for isolation.

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

September 2015 3.28 Touch probes 343


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 or MC 7xxx and IPC xxxx comply
with the requirements of PELV ("low voltage electrical separation") as per
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 GBit/s
 With LSV2 protocol (with use of TNCremo or RemoTools):
2 to 5 Mbit/s (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

344 HEIDENHAIN Technical Manual TNC 640


Assignment with 1 Gbit 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 Gbit interface active
Yellow Blinking 100 Mbit network or 1 Gbit network
Off 10 Mb network

For more information on the Ethernet interface, See "The Ethernet interface"
on page 2724.

September 2015 3.29 Data interfaces 345


X27:  Maximum cable length with RS-232-C/V.24 is 20 meters
V.24/RS-232-C data
Pin layout:
interface

Note

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


tive extra-low voltage" (PELV).

25-pin adapter block:

MC or IPC Conn. cable 365725-xx Adapter block Connecting cable


310085-01 274545-xx
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. Extern Hsg. Hsg. Hsg. Hsg. Externa Hsg.
al l shield
shield

9-pin adapter block:

MC or IPC Connecting cable Adapter block Connecting cable 366964-xx


355484-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

346 HEIDENHAIN Technical Manual TNC 640


3.29.1 USB interface

X141, X142, X143, Pin layout for USB connection (type A):
X144
USB connection (female) 4-pin Assignment
1 +5V
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 2762.

September 2015 3.29 Data interfaces 347


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
connec- connec-
tion tion
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–

348 HEIDENHAIN Technical Manual TNC 640


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 to 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 IOconfig installation package. 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 HEIDEN-
HAIN to obtain the current HDD file.

Terminal strips on the underside of the machine operating panel bear the PLC
inputs as well as the PLC outputs. The X23 connection for HR handwheels is
also on the underside of the MB 720.
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.

September 2015 3.30 MB 720 (FS) machine operating panel 349


Pin layout for MB 720 (FS) Connec- Function Page
tor
X18 Emergency stop on MB 351
(only FS) (pre-assigned by HEIDENHAIN)
X500 HSCI output 192
X502 HSCI input
X6 PLC inputs 352
X31 X6 X7

X7 PLC outputs 351


X101

X10 Interface to keyboard and 356


potentiometers
X30

X23 Handwheel connection 367


X30 Connection for the handwheel adapter 357
(used only with FS)
X10

X31 Permissive button 354


X500
X502

X23

X13 Connection for the Control voltage on key –


pre-assigned by HEIDENHAIN)
X14 Connection for the NC start key –
(pre-assigned by HEIDENHAIN)
X14
X15

X15 Connection for the NC stop key –


(pre-assigned by HEIDENHAIN)
X101 24 V NC voltage supply 357
€ 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.

350 HEIDENHAIN Technical Manual TNC 640


EMERGENCY STOP
on MB without FS

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

X18: EMERGENCY With the MB 720 FS, the EMERGENCY STOP is evaluated through two
STOP on MB with channels by the control via HSCI and is normally wired via connector X18.
FS
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 by means of 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.

September 2015 3.30 MB 720 (FS) machine operating panel 351


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 to 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 assign)
10 Reserved (do not assign)

352 HEIDENHAIN Technical Manual TNC 640


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 power supply voltage is required
to be safely separated voltage. It must also be safely separated from the
+24 V PLC!

September 2015 3.30 MB 720 (FS) machine operating panel 353


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 "Machine operating panel: Key assignment" on page 359.
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 assign)
2 Reserved (do not assign)
3 Reserved (do not assign)
4 Reserved (do not assign)
5 Reserved, only use if X14 terminal is vacant:
NC start
6 Reserved (do not assign)
7 Reserved, only use if X14 terminal is vacant:
NC start supply (+24 V NC)
8 Reserved, only use if X15 terminal is vacant:
NC stop
9 Reserved (do not assign)
10 Reserved, only use if X15 terminal is vacant:
NC stop supply (+24V NC)

354 HEIDENHAIN Technical Manual TNC 640


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 to 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 "protec-


tive extra-low voltage" (PELV).

September 2015 3.30 MB 720 (FS) machine operating panel 355


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

356 HEIDENHAIN Technical Manual TNC 640


X101: Power supply Pin layout:

Connecting Assignment
terminals
+ / Terminal 1 24 V DC NC
– / Terminal 2 0 V DC 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 720 FS:
Pin layout for MB 720 FS:

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

September 2015 3.30 MB 720 (FS) machine operating panel 357


The emergency stop inputs (pin 6 and pin 8) are active even if the HR
handwheel has been deactivated the via machine parameter MP_type
(CfgHandwheel) on NCK-based controls or the 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 by means of 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 to the +24 V PLC supply voltage, because
this removes the double basic insulation.

358 HEIDENHAIN Technical Manual TNC 640


Machine operating
panel: Key
assignment

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

September 2015 3.30 MB 720 (FS) machine operating panel 359


3.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine
operating panel
HEIDENHAIN offers the PLB 6001 (FS) HSCI or the PLB 6002 FS 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.
Terminal strips on the underside of the machine operating panel bear 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 389).
PLB 6002 (FS) is some kind of blend between PLB 6001 and PLB 6001 (FS).
Its basic layout corresponds to the PLB 6001 (FS), but its PLC inputs are single-
channel, as with the PLB 6001.

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 to the +24 V PLC supply voltage, because
this removes the double basic insulation.

360 HEIDENHAIN Technical Manual TNC 640


PLB 6001 pin layout Connec- Function Page
tor
X500 HSCI output 192
X502 HSCI input
X161

X171 X6 PLC inputs 365


X7 PLC outputs 364
X162

X172

X10 Interface to keyboard and 366


potentiometers
X163

X173
X23

X500
X502

X18 Reserved –
X164

X174

X23 Handwheel connection 389


X165

X30 Reserved –
X31 Permissive button, NC start, NC stop 368
X111

X166

X10

X30
X112

X101 24 V NC voltage supply 369


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 370
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 371
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!

September 20153.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine ope-
Pin layout for PLB 6001 FS Connec- Function Page
ID 722083-xx tor
X500 HSCI output 192
X502 HSCI input
X161

X6 PLC inputs 365


X171

X7 PLC outputs 364


X162

X172

X10 Interface to keyboard and 366


potentiometers
X163

X173
X23

X500
X502

X18 Emergency stop input 367


X164

X174

X23 Handwheel connection 367


X165

X30 Permissive button, EMERGENCY STOP 368


handwheel
X111

X166

X10

X30

X31 Permissive button, NC start, NC stop 368


X112
X113

X31
+ 24V
X121

X101 24 V NC voltage supply 369


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 372
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 371
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!

362 HEIDENHAIN Technical Manual TNC 640


Pin layout for PLB 6002 FS Connec- Function Page
ID 1037000-xx tor
X500 HSCI output 192
X502 HSCI input
X161

X171 X6 PLC inputs 365


X7 PLC outputs 364
X162

X172

X10 Interface to keyboard and 366


potentiometers
X163

X173
X23

X500
X502

X18 Emergency stop input 367


X164

X174

X23 Handwheel connection 367


X165

X30 Permissive button, EMERGENCY STOP 368


handwheel
X111

X166

X10

X30

X31 Permissive button, NC start, NC stop 368


X112
X113

X31
+ 24V
X121

X101 24 V NC voltage supply 369


X167

–
X122

X101

X6
X123

X111 Reserved –
X7
X168

X18

X112 Reserved
X113 Reserved
X121 Reserved –
X122 Reserved –
X123 Reserved –
X161 PLC inputs I0 to I7 370
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 371
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!

September 20153.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine ope-
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 to 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 cur-
rent. They are provided for driving the lamps on the operating panel.

364 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 assign)
10 Reserved (do not assign)

Pin layout for PLB 6001 FS and PLB 6002 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 PLB 6001 (FS) or PLB 6002 FS 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!

September 20153.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine ope-
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

366 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 6001 FS or PLB 6002, the EMERGENCY STOP is evaluated
through two channels by the control via HSCI.
Pin layout X18 for PLB 6001 FS:

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 by means of 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 connection (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 "protec-


tive 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!

September 20153.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine ope-
X30: Permissive Pin layout for PLB 6001 FS and PLB 6002 FS:
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 assign)
2 Reserved (do not assign)
3 Reserved (do not assign)
4 Reserved (do not assign)
5 NC start
6 Reserved (do not assign)
7 NC start power supply (+24 V NC)
8 NC stop
9 Reserved (do not assign)
10 NC stop power supply (+24 V NC)

368 HEIDENHAIN Technical Manual TNC 640


Pin layout for X31 with PLB 6001 FS and PLB 6002 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 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) or PLB 6002 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 to 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 "protec-


tive extra-low voltage" (PELV).

X101: Power supply Pin layout:

Connecting Assignment
terminals
+ / Terminal 1 24 V DC NC
– / Terminal 2 0 V DC NC

Power consumption of the operating panel units without HR handwheel and


controlled inputs/outputs:
Power consumption of the PLB 6001 (FS) or PLB 6002 FS: 5.0 W

September 20153.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine ope-
X161 to X168: PLB 6001 without FS and PLB 6002 FS:
PLC inputs
X161: PLC inputs
Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 0 V DC 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 DC 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 DC 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 DC 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 DC 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 DC 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 DC 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 DC 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 600x to be ready for operation.

370 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 600x 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 to the +24 V PLC supply voltage, because
this removes the double basic insulation.

September 20153.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine ope-
X161 to X168: PLB 6001 FS:
PLC inputs
X161: PLC inputs channel A
Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I0.A I1.A I2.A I3.A I4.A I5.A I6.A I7.A
DC
PLC

X162: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I8.A I9.A I10.A I11.A I12.A I13.A I14.A I15.A
DC
PLC

X163: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I16.A I17.A I18.A I19.A I20.A I21.A I22.A I23.A
DC
PLC

X164: PLC inputs channel A


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I24.A I25.A I26.A I27.A I28.A I29.A I30.A I31.A
DC
PLC

X165: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I0.B I1.B I2.B I3.B I4.B I5.B I6.B I7.B
DC
PLC

X166: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I8.B I9.B I10.B I11.B I12.B I13.B I14.B I15.B
DC
PLC

372 HEIDENHAIN Technical Manual TNC 640


X167: PLC inputs channel B
Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I16.B I17.B I18.B I19.B I20.B I21.B I22.B I23.B
DC
PLC

X168: PLC inputs channel B


Assignment Terminal
1 2 3 4 5 6 7 8 9
PLB 6001 FS 0V I24.B I25.B I26.B I27.B I28.B I29.B I30.B I31.B
DC
PLC

0 V PLC must be connected to terminal 1.

September 20153.31 HSCI adapter PLB 6001 (FS) or PLB 6002 (FS) for OEM-specific machine ope-
3.32 TE 730, TE 720 keyboard unit

TE 730, TE 720
NC operating panel in stainless steel design, for 15 inches, 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 to BF 750. The TE is connected to 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 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)

374 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 2182.

September 2015 3.32 TE 730, TE 720 keyboard unit 375


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 USB connection to BF 750. The TE is connected to the USB
Type B 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 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)

376 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)) 351

X500 HSCI output 192

X502 HSCI input

X23 Handwheel connection 367

X10 Potentiometer of X60 keyboard unit via ribbon cable (enclosed) 356

X30 Connection for handwheel: permissive buttons and emergency 357


stop
(only with functional safety (FS))

X31 NC start / NC stop, permissive buttons 354

X6 PLC inputs 352

X7 PLC outputs 351

X101 24 V DC NC power supply 357

€ Protective ground (M5) –

For the pin layouts of the MB, see page 349.


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:

September 2015 3.33 TE 735 (FS) keyboard unit 377


The override potentiometers of a TE 7xx can be configured through the
CfgPlcOverrideDev config object, See "Override" on page 2182.

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 to the control system via the
HSCI interface.
A blue status LED is located over each of the 36 snap-on machine keys. The
LEDs are internally permanently connected to 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 IOconfig installation package. 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 current HDD file.

Terminal strips on the underside of the machine operating panel hold further
PLC outputs and PLC inputs. 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 to the +24 V PLC supply voltage, because
this removes the double basic insulation.

Machine operating For the key assignments of the integrated MB, see page 359.
panel: Key
assignment

378 HEIDENHAIN Technical Manual TNC 640


3.34 Keyboard unit, TE 740

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 USB connection to BF 760. The TE 740 is connected to the
Type B 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 USB connection for execution of the USB connection from the
Type B 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 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)

September 2015 3.34 Keyboard unit, TE 740 379


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 2182.

380 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 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 to BF 760. The TE is connected to 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 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

September 2015 3.35 TE 745 (FS) keyboard unit 381


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)) 351
X500 HSCI output 192
X502 HSCI input
X23 Handwheel connection 367
X10 Potentiometer of X60 keyboard unit via ribbon cable (enclosed) 356
X30 Connection for handwheel: permissive buttons and emergency stop 357
(only with functional safety (FS))
X31 NC start / NC stop, permissive buttons 354
X6 PLC inputs 352
X7 PLC outputs 351
X101 24 V DC NC power supply 357
€ Protective ground (M5) –

For the pin layouts of the MB, see page 349.


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 2182.

382 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 to the control system via the
HSCI interface.
A blue status LED is located over each of the 36 snap-on machine keys. The
LEDs are internally permanently connected to 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 IOconfig installation package. 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 current HDD file.

Terminal strips on the underside of the machine operating panel hold further
PLC outputs and PLC inputs. 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 to the +24 V PLC supply voltage, because
this removes the double basic insulation.

Machine operating For the key assignments of the integrated MB, see page 359.
panel: Key
assignment

September 2015 3.35 TE 745 (FS) keyboard unit 383


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 385
X140 USB input (Type B) 385
X141 to X144 USB output (Type A) 385

X1 24V X1 +24 V power supply 384


X3 Connection for screen soft 385
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 2xx.

Connecting Assignment
terminals
+ / Terminal 1 +24 V
– / Terminal 2 0V

Voltage supply: Minimum absolute value: +20.4 V DC


Maximum absolute value: +28.8 V–
Power consumption of the BF 750: 50 W

384 HEIDENHAIN Technical Manual TNC 640


X2: HDL connection Port for the HEIDENHAIN display link (HDL) connection for the MC 6xxx
connector X249, see page 348.

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 at 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

September 2015 3.36 BF 750 15-inch TFT display unit 385


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 387
X140 USB input (Type B) 387
X141 to X146 USB output (Type A) 387
X1 +24 V power supply 386
X4 X3 Connection for screen soft 387
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

386 HEIDENHAIN Technical Manual TNC 640


X2: HDL connection Port for the HEIDENHAIN display link (HDL) connection to the MC 6xxx
connector X249.

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

September 2015 3.37 BF 760 19-inch TFT display unit 387


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.
The table below shows the key codes of the 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

388 HEIDENHAIN Technical Manual TNC 640


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 510 (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), HR 520 (FS) or HR 550 (FS) portable handwheel


The HR 4xx (FS), HR 520 (FS) and HR 550 (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 2161.

September 2015 3.38 Handwheel input 389


Pin layout Pin layout for the various extension cables, adapter cables, connecting cables,
and the handwheel:

Extension cable, Adapter cable, For connecting cable ID, HR 4xx


ID 281429-xx ID 296466-xx see "Introduction" HR 520, HR 550
chapter.
D-sub connec- D-sub D-sub connec- Mounted Cnnctr. (male) Cnnctr. Cnnctr. (male)
tor (male) connec- tor (male) coupling (5+7)-pin (female) (5+7)-pin
9-pin tor 9-pin (female) (5+7)-
(female) (5+7)-pin pin
9-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/BL 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/YL 2 Contact 2 (left) permissive button
WH/GN 1 Contact 1 (right)
WH/BL 1 Contact 1
WH/RD 2 Contact 1 emergency stop
YL/BK 3 Contact 2
WH/BK 4 Contact 2

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.

390 HEIDENHAIN Technical Manual TNC 640


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 shipped 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 410 FS or HR 520 FS handwheel.

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.

September 2015 3.38 Handwheel input 391


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 cables
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

392 HEIDENHAIN Technical Manual TNC 640


3.38.2 HR 510 portable handwheel
The HR 510 is a portable electronic handwheel.
For the assignment of the keys of the HR 410 to the PLC inputs and outputs,
See "HR 510 portable handwheel" on page 2163.

Pin layout Pin layout for the various extension cables, adapter cables, connecting cables,
and the handwheel:

Extension cable, Adapter cable, For connecting cable ID, see HR 510
ID 281429-xx ID 296466-xx "Introduction" chapter.
D-sub connec- D-sub D-sub Mounted Cnnctr. (male) Cnnctr. Cnnctr. (male)
tor (male) connec- connector coupling (5+7)-pin (female) (5+8)-pin
9-pin tor (male) 9-pin (female) (5+8)-pin
(female) (5+7)-pin
9-pin
Hsg. Shield Housing Hsg. Shield Housing Hsg. Shield Housing Hsg. 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
WH/BK 6 6 BK 7 7
YL/BK 7 7 RD/BL 3 3
WH/RD 5 5 Red 5 5
WH/BL 4 4 Blue 4 4
WH/GN 2 2 WH/GN 1 1
WH/YL 3 3 DR/GN 2 2
WH/GN 1 1 GY/PK 6 6
Hsg. GN/YL 8 8

WH/BN X1/3 Contacts 1 + 2 (supply)


WH/YL X1/1 Contact 2 (left) permissive button
WH/GN X1/2 Contact 1 (right) Permissive button
WH/BL X2/1 Contact 1/Terminal 1 (EMERGENCY STOP)
WH/RD X2/2 Contact 1/Terminal 2 (EMERGENCY STOP)
YL/BK X2/4 Contact 2/Terminal 1 (EMERGENCY STOP)
WH/BK X2/3 Contact 2

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.

September 2015 3.38 Handwheel input 393


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 shipped 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:

Note

HEIDENHAIN would like to point out that the permissive buttons on the
HR 510 handwheel are not cross-circuit proof. If your machine requires a
handwheel with cross-circuit proof permissive buttons, you must use a
HR 510 FS handwheel.

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.

394 HEIDENHAIN Technical Manual TNC 640


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 cables
Spiral cable 1117852-03
Normal cable 1117853-xx
Metal armor tubing 1117855-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

September 2015 3.38 Handwheel input 395


3.38.3 HR 520 FS, HR 510 FS, HR 410 FS safety-oriented handwheels
The HR 520 FS, HR 510 FS and HR 410 FS 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 handwheels with FS are plug-compatible with the respective handwheels
without FS, thanks to the machine-side 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 520 FS, the HR 510 FS and the HR 410 FS with the respective variant
without FS.
 Please note that, even if servicing is required, an HR 5x0 FS may not be
replaced by an HR 5x0. This also applies to replacing an HR 410 FS with
an HR 410, and vice versa.

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


generally recommend to use the safety-oriented handwheels with FS, as their
permissive function is provided with cross-circuit-safety.
It is only for the HR 550 FS wireless handwheel system with HRA 551 FS that
the behavior of the permissive buttons can be defined by the MP_initValues
parameter (See "MP_initValues" on page 2144).
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).

396 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, HR 510 and 520 FS, HR 510 FS and the HR 410 FS handwheels. Cross-circuit-safety is
HR 410 handwheels necessary in order to prevent 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.

September 2015 3.38 Handwheel input 397


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). Thisstate 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 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

398 HEIDENHAIN Technical Manual TNC 640


This results in a unique state that should 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
should 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

September 2015 3.38 Handwheel input 399


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).

400 HEIDENHAIN Technical Manual TNC 640


Connection Handwheels with FS are connected with the current cables of the HR 4xx and
HR 5xx series of HEIDENHAIN handwheels:

max. 2m
50m
749369-xx 749368-xx HRA 551 FS
731928-xx
296467-xx HR 550 FS
20m 598515-xx
606622-xx
296466-xx
50m
312879-01 HR 520 HR 520 FS
3m 670302-xx 670304-xx
296467-xx 670303-xx 670305-xx

296687-xx
MB 720 VL
296466-xx
TE 735 X23
281429-xx
1117852-03
TE 745
HR 510 HR 510 FS
PLB 6001 1117853-xx
3m
1119971-xx 1119974-xx
1120313-xx 1120311-xx
1117855-xx 1099897-xx 1120314-xx

HR 130
50m 540940-01
-03
HRA 110
683259-xx 261097-xx max. 20 m HR 150
3 inputs
540940-06
-07

Pin layout for the various extension cables, adapter cables, connecting cables,
and the handwheel:

Extension cable, Adapter cable, For connecting cable ID, see


ID 281429-xx ID 296466-xx "Introduction" chapter.
D-sub connec- D-sub D-sub connec- Mounted Cnnctr. (male) (5+7)-pin Cnnctr.
tor (male) connec- tor (male) 9-pin coupling (female)
9-pin tor (female) (5+7)-pin
(female) (5+7)-pin
9-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)

September 2015 3.38 Handwheel input 401


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.

402 HEIDENHAIN Technical Manual TNC 640


3.38.4 HR 550 FS wireless handwheel
A wireless handwheel system consists of the HR 550 FS mobile part and the
HRA 551 FS handwheel adapter. The HR 550 FS has a rechargeable battery
for mobile operation on the machine. During operation, it continuously
communicates via radio with the HRA 551 FS handwheel adapter, which
communicates directly with the control via a serial cable connection.
The HRA 551 FS 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 550 FS complies with the internationally accepted standards.
For radio communication, the HEIDENHAIN HR 550 FS uses the 2.4 GHz
ZigBee transmission technology with a special HEIDENHAIN communications
protocol.

September 2015 3.38 Handwheel input 403


General The HR 550 FS wireless handwheel must always be used together with the
HRA 551 FS 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 550 FS 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 550 FS handwheel is located in


a factory hall, a room or a working area, then the handwheels must be iden-
tified 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 551 FS 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.

404 HEIDENHAIN Technical Manual TNC 640


Specifications HR 550 FS with HRA 551 FS
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 551 FS + 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 handwheels Only one wireless HR per machine
with wireless transmission tool
Degree of protection IP 54 for HR 551 FS
IP 54 for HR 550 FS
Service life of the product 20 years
Max. voltage for relay contacts in 250 V ~
HRA 551 FS
Max. current for relay contacts in 3.6 A
HRA 551 FS
Reaction times of emergency-stop Time until the relay contacts react:
and permissive-button safety max. 200 ms; typically < 100 ms
functions
FCC-ID YJKHR550 FS
Mass of HR 550 1 kg
ID for HR 550 FS without mech. 598515-xx
detent
ID for HR 550 FS with mech. detent 606622-xx
ID for HRA 551 FS 731928-xx

September 2015 3.38 Handwheel input 405


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, it 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 does not comply with the 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.

406 HEIDENHAIN Technical Manual TNC 640


General Thanks to the wireless connection between the handwheel and the control,
information the HR 550 FS wireless handwheel system and the HRA 551 FS 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
thanks to its dual-channel transmission protocol. The safety functions of the
HR 550?FS fulfill the requirements of performance level d, category 3,
according to EN ISO 13849-1. A single error does not result in 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 550 FS.
The safety functions must not be bypassed or deactivated in some other way.
Modifying or rebuilding the HRA 551 FS and HR 550 FS is not permitted and
may result in 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 550 FS 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 causes an emergency stop at the HRA 551 FS.
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 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 550 FS wireless
handwheel system and the HRA 551 FS.
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.

September 2015 3.38 Handwheel input 407


The following situations result in an emergency stop through the wireless
handwheel system:
 The HR 550 FS wireless handwheel is switched off outside of the HRA 551
FS handwheel adapter.
 The radio communication between the HR 550 FS wireless handwheel and
the HRA 551 FS handwheel adapter is interrupted.
 The charge of the handwheel battery becomes too low

Note

 The power-up test of the HR 550 FS must be repeated within no more


than 168 hours. For this purpose, it is necessary to turn the HR 550 FS
handwheel and the HRA 551 FS handwheel adapter off and on again. 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 as long as the HR 550 FS can be


operated in conjunction with the HRA 551 FS without disturbances or error
messages. In the event of a fault, please inform your service agency. The only
expendable part of the HR 550 FS 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 550 FS mobile wireless handwheel: ID 598515-03
 HR 550 FS mobile wireless handwheel (with detent): ID 606622-03
 HRA 551 FS base and charging station for HR 550 FS: ID 731928-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 HR 550 FS and HRA 551 and the
new, revised versions cannot be exchanged with each other anymore. This
means that both units (HR and HRA) must be replaced together if replacement
of a HR 550 FS (variant -02 by -03) or HRA 551 FS (variant -01 by -02) is
necessary.

408 HEIDENHAIN Technical Manual TNC 640


Connecting the A wireless handwheel system is always connected to the control via the M23
wireless handwheel plug connection of the HRA 551 FS. 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, the dual-channel emergency stop and the dual-
channel permissive buttons of the HR 550 FS mobile part are routed from the
HRA 551 FS (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 handwheel cables (ID 296467-xx) with reduced
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 550 FS mobile part. Due to the small
cross section of the handwheel cable the charging current 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, consult HEIDENHAIN. A maximum distance of 50 m
between X23 (MC 4xx or MB 620 / PLB 600x for HSCI) and the HRA 551 FS
base station can be obtained by using the adapter cable ID 749368-xx and the
optional extension cable ID 749369-xx (with a handwheel cable (ID 296467-xx)
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

September 2015 3.38 Handwheel input 409


Use of existing 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 the relay contacts are therefore closed. If an emergency stop is trigge-
red, the control voltage of the relays will be switched off and the relay con-
tacts 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 hand-
wheel is out of range, the relay contacts are open.
 Behavior of the permissive button contacts
Depending on the setting in MP_initValues[3], the permissive buttons are
represented as two normally open contacts, or as one normally open con-
tact 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
If neither of the two permissive buttons is pressed, both relays are wit-
hout 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:
If 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 buttons is pressed, the relay is actuated and relay con-
tact 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.
If at least one of the permissive buttons 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 "protec-


tive extra-low voltage" (PELV).

410 HEIDENHAIN Technical Manual TNC 640


MP_initValues
[3]: Handwheel with cross-circuit test
(cf. 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, Connecting cable ID, see HRA 551 FS
ID 281429-xx ID 296466-xx "Introduction" chapter.
D-sub connec- D-sub D-sub connec- Mounted Cnnctr. (male) Cnnctr.
tor connec- tor (male) 9-pin coupling (5+7)-pin (female)
(male) 9-pin tor (female) (5+7)-pin
(female) (5+7)-pin
9-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)."

September 2015 3.38 Handwheel input 411


Danger

Only units that also comply with the requirements for safely separated
voltage (PELV) may be connected.

412 HEIDENHAIN Technical Manual TNC 640


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 shipped 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 cables
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

September 2015 3.38 Handwheel input 413


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 permit-
ted 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 HEI-
DENHAIN 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 wire-
less handwheel system" on page 415 and See "Checking the radio environ-
ment at the intended place of use" on page 416).
 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 hand-
wheel systems and identical channel numbers have to be used for the wire-
less handwheel systems because of other ISM band participants, a mini-
mum distance of 200 m must be maintained between the HRA 551 FS base
stations. In addition, the transmitting and receiving power of the wireless
handwheel system can be reduced during commissioning. Three power sta-
ges are available for this. They are set using the wireless handwheel confi-
guration 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.

414 HEIDENHAIN Technical Manual TNC 640


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 550 FS 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 causes an emergency stop at the HRA 551 FS. 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 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 550 FS wireless handwheel system and the HRA 551 FS. 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 550 FS mobile part must be placed into the charging position
of the HRA 551 FS if a critical situation occurs, in which a workpiece could be
damaged due to an emergency stop. The rear-side contacts on the HR 550 FS
and the HRA 551 FS provide a direct contact between the mobile part and the
base station, and therefore communication is independent of the radio
connection.

September 2015 3.38 Handwheel input 415


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-speci-
fic 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 417. It is also possible to use a WLAN-capable laptop and the "Net-
work Stumbler" PC software which is available free of charge on the Inter-
net, see page 417.
 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.

416 HEIDENHAIN Technical Manual TNC 640


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 to a vacant radio channel
outside the frequency range of the WLAN networks.

Note

The channel designations in the dialog on 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 419.

September 2015 3.38 Handwheel input 417


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 to 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 550 FS. 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 an
option.

418 HEIDENHAIN Technical Manual TNC 640


Information in the The general procedure for configuring the HR 550 FS handwheel is described
handwheel 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.

September 2015 3.38 Handwheel input 419


Channel setting The channel designations in the dialog on 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 channel designations as
well, 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. This must be taken
into account for 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
This means that 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

420 HEIDENHAIN Technical Manual TNC 640


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 handw-
heel. For example, if this value shows that more than two packets are lost
within 10 seconds during radio transmission (wireless handwheel is not
located in 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 is good
• Value between 0.05% and 0.1%
The radio connection works properly, but is in the limit range. The radio
connection should be checked. You better change to another radio
channel.
• Value > 0.1%
The radio connection is not stable. We advise against operating the
wireless handwheel on this channel. The radio connection should be
checked. You need to change to another radio channel.
 Max. successive lost
Number of successive data packets that were lost. If four successive data
packets are lost, an emergency stop is triggered
• Value = 1
The radio connection is good.
• Value = 2
The radio connection works properly, but it is in the limit range. The
radio connection should be checked. You better change to another radio
channel.
• Value = 3
The radio connection is not stable. We advise against operating the
wireless handwheel on this channel. The radio connection should be
checked. You need to change to another radio channel.

September 2015 3.38 Handwheel input 421


3.38.5 HR 130 panel-mounted handwheel
The 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 connctr. D-sub connctr.
(male) 9-pin (female) 9-pin (male) 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

422 HEIDENHAIN Technical Manual TNC 640


3.38.6 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 handwheel selection switch (option). You also use
MP_selectAxes to define the axes for the third handwheel.(See
"MP_selectAxes" on page 2148.)

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 +5V
4 0V
9 Internal shield
housing External shield

September 2015 3.38 Handwheel input 423


X223: Connection Pin layout on the HRA 110:
to MB (X23)
HRA 110
D-sub connection (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 "protec-


tive 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 "protec-


tive 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– DC as per IEC 742 (VDE 551)
2 0V

Maximum current consumption 200 mA.

424 HEIDENHAIN Technical Manual TNC 640


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 LIFTOFF 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 enabling signals 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 is sufficient 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. To check this, you can use the following
formula:
t = RL x C x In (UO/UC)

where:
t = time until UC is reached
RL = ohmic load of the consumers
C = capacity of the CML (at CML 110 = 8.3 F)
ln = natural logarithm
UO = output voltage of the power supply unit which powers the CML
UC = lowermost voltage which still allows the consumers to fulfill their
function

September 2015 3.39 CML 110 Capacitor Module 425


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.
Therefore:
t = 2.4 ohms x 8.3 F x ln(24 V / 18 V)
t = 5.73 s
If the line voltage fails, the best to be expected is that the voltage will not fall
below 18 V until 5.73 s 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 is not sufficient, then you can also switch
more than one CML 110 in parallel. However, please not 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.

426 HEIDENHAIN Technical Manual TNC 640


3.40 Connecting cables: Specifications

Product 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.

September 2015 3.40 Connecting cables: Specifications 427


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.

428 HEIDENHAIN Technical Manual TNC 640


3.41 Dimensions

Note

All dimensions are in millimeters [mm].

September 2015 3.41 Dimensions 429


3.41.1 MC 6241
Mass: 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

430 HEIDENHAIN Technical Manual TNC 640


3.41.2 MC 6341, MC 6x51, IPC 6341
Mass: 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

September 2015 3.41 Dimensions 431


3.41.3 MC 6541, MC 6641, IPC 6641
Mass: 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

432 HEIDENHAIN Technical Manual TNC 640


3.41.4 MC 6242
Mass: Approx. 4.0 kg

59.5+0.5

25

24.75 ¬ 5.5 240.5

¬ 12 30 170±0.2

21.5
7

¬
4.8
30
319+5
343

300±0.3
283

24.75

225.5

September 2015 3.41 Dimensions 433


3.41.5 MC 6542
Mass: Approx. 4.0 kg

434 HEIDENHAIN Technical Manual TNC 640


3.41.6 MC 7522
Mass: 7.5 kg

September 2015 3.41 Dimensions 435


3.41.7 MC 7532
Mass: 9.4 kg

Frontpanelopening
M ounting surface
Space foraircirculation

436 HEIDENHAIN Technical Manual TNC 640


3.41.8 MB 720 (FS)
Mass: Approx. 1.0 kg

 

 
    

September 2015 3.41 Dimensions 437


3.41.9 TE 720 / TE 730
Mass approx. 4.2 kg

   


   


    
    

438 HEIDENHAIN Technical Manual TNC 640


3.41.10 TE 735 (FS)
Mass approx. 3.4 kg


  
  

September 2015 3.41 Dimensions 439


3.41.11 TE 740
Mass approx. 3.2 kg


  
  

440 HEIDENHAIN Technical Manual TNC 640


3.41.12 TE 745 (FS)
Mass approx. 4.3 kg


  
  

September 2015 3.41 Dimensions 441


3.41.13 BF 750
Mass: Approx. 4.0 kg

 

 
    



 
    

442 HEIDENHAIN Technical Manual TNC 640


3.41.14 BF 760
Mass approx. 7.8 kg

 

 
    



 
    

September 2015 3.41 Dimensions 443


3.41.15 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

Frontpanelopening
M ounting surface
454

Space foraircirculation

385.5+1


444 HEIDENHAIN Technical Manual TNC 640


3.41.16 ITC 750

= Frontpanelopening
= M ounting surface
= Space foraircirculation

September 2015 3.41 Dimensions 445


3.41.17 ITC 760
99.5
232

176.2 190.5

= Frontpanelopening
= M ounting surface
= Space foraircirculation

446 HEIDENHAIN Technical Manual TNC 640


3.41.18 CC 6106
Mass: 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

September 2015 3.41 Dimensions 447


3.41.19 CC 6108 / CC 6110
Mass of CC 6108: Approx. 4.7 kg
Mass of CC 6110: Approx. 4.8 kg

 











448 HEIDENHAIN Technical Manual TNC 640


3.41.20 UMC 111 (FS)
Mass approx. 11.0 kg

100±0.2 24.75
¬ 12
7
10

433
480

456

5.5 280

149.5

September 2015 3.41 Dimensions 449


3.41.21 UEC 113 (FS), UEC 111 (FS), UEC 112 (FS)
Mass approx. 14.0 kg

100±0.2 24.75
¬ 12
7
10

433
480

456

5.5 280

149.5

450 HEIDENHAIN Technical Manual TNC 640


3.41.22 PL 6xxx (FS)
Mass: 0.36 kg (bare)

 

 


September 2015 3.41 Dimensions 451


3.41.23 PLB 6001 (FS) or PLB 6002 FS
Mass approx. 1.2 kg
48+2

40

24
¬
7

109.5±0.2
133+2
3.4

288.4
295
304

452 HEIDENHAIN Technical Manual TNC 640


3.41.24 PSL 130
Mass 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

September 2015 3.41 Dimensions 453


3.41.25 PSL 135
Mass 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

454 HEIDENHAIN Technical Manual TNC 640


3.41.26 MS 11x

300+1

280.5+1

7
29

10
480

421

456±0.2

303+1 5.5
24.75

50

September 2015 3.41 Dimensions 455


3.41.27 Adapter Block for the Data Interface
V.24/RS-232-C adapter block and
V.11/ RS-422 adapter block

  


456 HEIDENHAIN Technical Manual TNC 640


3.41.28 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

September 2015 3.41 Dimensions 457


3.41.29 Line drop compensator
Line-drop compensator for encoders with EnDat interface



458 HEIDENHAIN Technical Manual TNC 640


3.41.30 KTY adapter connector

15
16

86
55

September 2015 3.41 Dimensions 459


3.41.31 Handwheels

HR 520 (FS) Mass: 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

460 HEIDENHAIN Technical Manual TNC 640


HR 550 FS Mass: Approx. 1.0 kg
79.7
78.7
46
90

312

September 2015 3.41 Dimensions 461


HRA 551 FS Mass: Approx. 1.0 kg

136
76.5
120 57
83±0.2 4
12
6
192±0.2
204

180

323

462 HEIDENHAIN Technical Manual TNC 640


HR 410 (FS) Mass: Approx. 1.0 kg

HR 510 (FS) Mass approx. 0.8 kg

September 2015 3.41 Dimensions 463


HR 130 Mass: Approx. 0.7 kg

Control knob for


HR 130

464 HEIDENHAIN Technical Manual TNC 640


Adapter cable
(ID 296466-xx or
749368-xx)

 
  

 
   
 

September 2015 3.41 Dimensions 465


3.41.32 Touch probes

TS 260

466 HEIDENHAIN Technical Manual TNC 640


TS 460

40

September 2015 3.41 Dimensions 467


TS 444

468 HEIDENHAIN Technical Manual TNC 640


TS 64x

September 2015 3.41 Dimensions 469


TS 740

470 HEIDENHAIN Technical Manual TNC 640


TT 160

September 2015 3.41 Dimensions 471


TT 460

472 HEIDENHAIN Technical Manual TNC 640


TT 449

September 2015 3.41 Dimensions 473


SE 4x transmitter/
receiver unit

474 HEIDENHAIN Technical Manual TNC 640


SE 660 transmitter/
receiver unit

Mount for SE 660:

September 2015 3.41 Dimensions 475


SE 540 transmitter/
receiver unit

476 HEIDENHAIN Technical Manual TNC 640


TT 130 / TT 140

September 2015 3.41 Dimensions 477


Adapter cable for
TT and TS

Mounted coupling for quick connection

Mounted coupling for HEIDENHAIN standard connector:

478 HEIDENHAIN Technical Manual TNC 640


TS 220

Adapter cable for


TS 120 / TS 220

September 2015 3.41 Dimensions 479


TS 440

480 HEIDENHAIN Technical Manual TNC 640


3.41.33 VS 101 camera system

125

15.5
7.6
184.5

50

M5
67.25

37
49.5

19.5 19.5 65.5


74.4
37.2
28
16

16 16

3.41.34 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

September 2015 3.41 Dimensions 481


3.41.35 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
¬
68

¬ 3.5
17.5
30±0.2
37

19
93.2
A 180°

42

60±0.2

482 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

September 2015 3.42 Grounding diagram for TNC 640 with modular HEIDENHAIN inverter system and PSL 130 483
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

484 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 3.44 Basic circuit diagram for TNC 640 485
486 HEIDENHAIN Technical Manual TNC 640
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-65 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 01.07.2015

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

September 2015 3.45 TNC 640 cable overview, CC and MC in electrical cabinet 487
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-65 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 10.07.2015
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

488 HEIDENHAIN Technical Manual TNC 640


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-65 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 01.07.2015

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

September 2015 3.47 TNC 640 cable overview, UEC and MC in electrical cabinet 489
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-65 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 **) 10.07.2015
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

490 HEIDENHAIN Technical Manual TNC 640


3.49 Cable overview for TNC 640—Accessories

max. 2m
50m
749369-xx 749368-xx HRA 551 FS
731928-xx
296467-xx HR 550 FS
20m 598515-xx
606622-xx
296466-xx
50m
312879-01 HR 520 HR 520 FS
3m 670302-xx 670304-xx
670303-xx 670305-xx
296467-xx

296687-xx
MB 720 VL
296466-xx
TE 735 X23
281429-xx
1117852-03
TE 745 3m
HR 510
1119971-xx
HR 510 FS
1119974-xx
PLB 6001 1117853-xx 1120313-xx 1120311-xx
1099897-xx 1120314-xx
1117855-xx

HR 130
50m 540940-01
-03
HRA 110 VL: Extension cable
261097-xx max. 20 m – for separation points with connecting cable
683259-xx HR 150 – for extending existing connecting cable
3 inputs
540940-06
-07
1) Up to 20m
2) If the total length is >20m: Select the cable
ID1073372-xx longer than ID663631-xx.
CC 6xxx CMA-H 04-04-00
01.07.2015
UEC 11x analog axis
688721-xx
UMC 11x TS

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:


UEC 11x TT 460 or TT 449 and TS 460,
TS 740, TS 64x or TS 44x
TT 460 and TS 460

UMC 11x 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

September 2015 3.49 Cable overview for TNC 640—Accessories 491


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, LF x85) max. 20m


298429-xx (LB) 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 x85 / 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 x85 / 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

29.07.2015

492 HEIDENHAIN Technical Manual TNC 640


3.51 Cable overview for TNC 640—Inverter system

September 2015 3.51 Cable overview for TNC 640—Inverter system 493
494 HEIDENHAIN Technical Manual TNC 640
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. In this
documentation the configuration editor is often abbreviated to config 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 512).
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.
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

September 2015 4.1 General information 495


 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 execu-
ting the NC program
• Key name "CH_SIM" for all objects that belong to the channel for simu-
lating the NC program

Note

Key names should be short and clear, and refer to the function.

496 HEIDENHAIN Technical Manual TNC 640


4.2 The Machine Parameters mode of operation

4.2.1 Call 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 EDITsoft key if the code
number was already entered.
 Press the END soft key to exit the Machine Parameter mode of operation

September 2015 4.2 The Machine Parameters mode of operation 497


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

Resets 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

498 HEIDENHAIN Technical Manual TNC 640


4.2.2 Machine parameters, entering and changing
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 512). 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.

September 2015 4.2 The Machine Parameters mode of operation 499


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 was re-entered during the last config


update

Machine parameter protected with code number (OEM


password for FS parameters or key name from
CfgOemPassword), See "Editing attribute information" on
page 518

The type of the configuration object is identified by its folder symbol:

Icon Function
Entity (configuration object)

Array (list)

Key (key name)

500 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 sets, since now the parameters of all
axes are visible at a glance:

All editing functions available in the tree view are also available in the table
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.

September 2015 4.2 The Machine Parameters mode of operation 501


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 dis-
play back to the system short-form name.

502 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.

September 2015 4.2 The Machine Parameters mode of operation 503


Entering and chan- In order to change machine parameters, you must open an input or selection
ging parameters field by pressing the right arrow key, the ENT key or the CHANGE VALUE soft
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. For
example: If you only want to set bit 0 and bit 1 in a 32-bit input field, all you
need to enter is
%11

504 HEIDENHAIN Technical Manual TNC 640


Special case: You can enter a formula instead of a fixed value. Formulas are case-sensitive,
Entering a formula so make sure to enter them correctly. Functions are written in lowercase
letters, variables are written in capitals.
From 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 sinh Hyperbolic sine
base of e
exp Exponent function cosh Hyperbolic cosine
rad Radian conversion to tanh Hyperbolic tangent
degrees
deg Degree conversion to asinh Area hyperbolic sine
radians
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

September 2015 4.2 The Machine Parameters mode of operation 505


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 velocity value of axis (not available with RTC)
V,
v
VACT Actual velocity value of 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 °

Manually specifying 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).

506 HEIDENHAIN Technical Manual TNC 640


Inserting and Objects or items in lists can be inserted or copied (an axis, for example) with
copying objects the MORE FUNCTIONS and INSERT or COPY soft key to insert or copy 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 storage file must
be given. The storage 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 inser- When a dialog box for entering a value is open, you can use the COPY FIELD
ting 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 (for example, from Kinem1 to Kinem_XYZ) and to specify a new storage
location.

September 2015 4.2 The Machine Parameters mode of operation 507


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.
Excepted from this are changes to parameters in connection with the code
numbers. For safety reasons 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

With the MP_undoListSize parameter you can specify the number of entries
in the change list.
Every change is saved in a list. The changes can be selected and undone.

508 HEIDENHAIN Technical Manual TNC 640


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: Menu choice
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

September 2015 4.2 The Machine Parameters mode of operation 509


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

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.:

Criterion 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.

510 HEIDENHAIN Technical Manual TNC 640


Criterion Function
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.
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 511.)

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 window for entering a comment is opened after
pressing the MORE FUNCTIONS soft key and COMMENT. 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 508).

September 2015 4.2 The Machine Parameters mode of operation 511


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 is 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 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

512 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 Category


100000 to 199999 System configuration + miscellaneous
200000 to 299999 Channel-dependent settings
300000 to 399999 Axis configuration
400000 to 499999 Parameter sets
500000 to 599999 Range of parameters for TNC milling
600000 to 699999 Range of parameters for CNC turning
(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 editor, 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.

September 2015 4.2 The Machine Parameters mode of operation 513


Defining the The machine configuration of the control enables you the make your own PLC
number range for machine parameters through the config objects CfgOemBool, CfgOemInt,
OEM parameters CfgOemString and CfgOemPosition, See "Data transfer machine
parameters => PLC" on page 2592. 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"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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]"

514 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 516
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 566). 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.

September 2015 4.2 The Machine Parameters mode of operation 515


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.

516 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 measurement, and format instructions.
These data are permanently defined by HEIDENHAIN. In the configuration
editor,
the OEM can make changes to the attribute information. 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
)

September 2015 4.2 The Machine Parameters mode of operation 517


Editing attribute A convenient dialog Edit attribute information is available for editing the
information attribute information.
To access the dialog in the configuration editor, proceed as follows:
 Press the CONFIG DATA soft key
 Select the desired machine parameter or entity with attribute information
you wish to modify
 Press the MORE FUNCTIONS, soft key
 Select the second soft-key row level
 Press the ATTRIBUTE INFO soft key

Constraints:
 If attribute information already exists for the selected element, this is
shown.
 If no attribute information exists, a new entry is created with the name
(entity name-key name-attribute name) in correct syntax.
 With a new entry the file must be selected to which this is saved.
 Data for the element can be entered.
 After changes, the dialog must be quit with the OK soft key. Changes must
also be confirmed with the SAVE soft key. Modified or newly entered data
only becomes effective when the TNC 640 is restarted.
 Attribute information for machine parameters relevant for Functional safety
FS can be edited as per normal parameters after entering the OEM
password.

518 HEIDENHAIN Technical Manual TNC 640


Selection Function
Title: Contains the type of attribute information in brackets; only
for information purposes
Key name: Prescribed by the system; cannot be edited
File: Name with correct syntax (prescribed)
Access: Selection of LEVEL1... LEVEL3; for setting another access
level as specified by HEIDENHAIN
Text name:  Selection Text name:
Text: Specification of a database ID for a language-dependent
text; the text usually originates from an OEM CSV text file
 Selection Text:
Direct input of a language-neutral text
Password key: Specification of a key from the list CfgOemPassword/
[Keyname]/funcList. If one of these keys is entered, the
defined key name from CfgOemPassword must be entered
as the code number for enabling before the current machine
parameter or all machine parameters of the entity can be
edited.
Write-protected machine parameters have a red key symbol.
No password Setting this releases write protection, e.g. for functional
safety FS parameters
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 into system units. A selection of
possible units is 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 directly specifying a value.
The cursor must be in the table for editing purposes. Lines
can then be entered or deleted via soft-key.
Enter a value with correct syntax in the Value column. Either
enter a database ID for a language-dependent text in the
Text name column or enter a language-neutral text in the
Text column. As soon as a database ID has been specified
an entered text has no effect and is deleted during saving.

September 2015 4.2 The Machine Parameters mode of operation 519


Protecting machine You can protect machine parameters from being modified with the Password
parameters with key selection. For this purpose you must specify a key from the
key names CfgOemPassword/[Keyname]/funcList list under Password key in the
attribute information of the machine parameter or higher-level entity. If one of
these keys is entered, one of the defined key names from CfgOemPassword
must be entered as the code number for enabling before the current 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 = code number]; in the example above:
"Dies_ist_die_Schluesselzahl"
 Define any key under MP_funcList ; in the example above: "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 intended for
write protection.
 For enabling, use the key name "this_is_the_keynumber". For this purpose
the key name must be entered in the code number input, as with the other
code numbers.

Attention

If you specify a key in the Password key input field that is not contained in
the list under MP_funcList and you forget this key or no longer know it, the
machine parameter or entity can only be enabled via the text editor. There-
fore, make sure you document the
password key. If this is known it can then be inserted under MP_funcList
for enabling via the key name in the code number input.

Note

Write-protected machine parameters have a red key symbol.

520 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 with 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 only be edited in
functional safety the configuration editor if the OEM password was entered beforehand. If this
(FS) parameters is not the case, the parameters are designated as locked with a red key
symbol. If you try to edit the locked parameters, the information Please enter
OEM password is displayed.
Write protection can be configured in the attribute information of the
appropriate parameter or entity.

Canceling write Proceed as follows to cancel "general" write protection for functional safety FS
protection for parameters:
functional safety FS
 Enter the OEM password for functional safety FS parameters in the code
parameters number input of the MOD dialog. The OEM password is specified in the
"Functional Safety FS Technical Manual".
 As described under editing attribute information (page 518), open the dialog
for editing the attribute information.
 Set the selection to No password
 Exit the dialog with the soft key OK
 Save the new data with the soft key SAVE
 After restarting the NC software you can then edit the parameters without
entering the OEM password.
 Write-protection is now permanently deactivated.
 To reactivate write protection, the selection under
No password must be deleted again, the dialog exited with the OK soft key,
the new data confirmed with SAVE and the NC software restarted.

Attention

Deactivating write protection for machine parameters relevant for functio-


nal safety FS is the specific responsibility of the machine tool builder.

Note

You can also specify a password key in the attribute information of the
machine parameters relevant for functional safety FS, see page 520. For
enabling, the OEM password is then not used but the key name=code
number as specified under CfgOemPassword.

September 2015 4.2 The Machine Parameters mode of operation 521


Note

Parameters for functional safety FS are only available with systems featu-
ring functional safety (depending on the control).

Note

Modified or newly entered attribute information only becomes effective


when the TNC 640 is restarted.

522 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.

Access right LEVEL1


Machine parameters on LEVEL1 can be reached and changed with MOD
Function.

Access right LEVEL2


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.

Access right LEVEL3


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.

Access right LEVEL4


Machine parameters on LEVEL4 can only be accessed by HEIDENHAIN. The
machine manufacturer can only read them.

September 2015 4.2 The Machine Parameters mode of operation 523


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 reference point
(REF)
 Shut down control
(RESET)
 Restart control
(REBOOT)
 NC syntax allowed
(NC-SYN)
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.

524 HEIDENHAIN Technical Manual TNC 640


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.
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.
NC-SYN reaction
These machine parameters may be changed from within the program run by
switching to another MP subfile.

September 2015 4.2 The Machine Parameters mode of operation 525


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: Menu choice
Options: TRUE
Hide write-protected configuration objects
FALSE
Display all configuration objects
Default: TRUE
Access: LEVEL3
Reaction: NOTHING

526 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.

September 2015 4.2 The Machine Parameters mode of operation 527


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.
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.
Before executing the update rules, the system automatically creates a backup
copy of the previous configuration data under PLC:\config.bak\. The name of
the backup file contains a version number and a time stamp, if these exist.
Press the DATA BACKUP soft key in the configuration editor to select and restore
this backup. See "Backup of parameters" on page 548.
If this backup should be taken into account when generating service files, add
a corresponding entry to the list of OEM files (See "Storing OEM files in
service files" on page 1945.).
These rules no longer need to be followed once the software has been
exchanged (see "NC software exchange on the TNC 640" on page 132).

528 HEIDENHAIN Technical Manual TNC 640


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
 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.

September 2015 4.2 The Machine Parameters mode of operation 529


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.
 Select 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, press the MORE FUNCTIONS and UPDATE RULES soft
keys in the Machine Parameters mode of operation. Use the commands
listed below to search for the rule you want to edit or add.
 Select the appropriate command and press the MORE FUNCTIONS and INSERT
soft keys to add a new rule.

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 include 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.

530 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 "Resets the update version" on page 547), this update
rule creates the symbolic operand MG_OemBool in the configuration object
CfgOemBool. Possible values are TRUE and FALSE.

September 2015 4.2 The Machine Parameters mode of operation 531


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.

532 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 storage file (*.cfg) given, 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 storage file to the
file plc.cfg.

September 2015 4.2 The Machine Parameters mode of operation 533


UpdKeyRename The key name of the indicated configuration object is changed. The storage 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.

534 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 inserted machine parameters are identified as such with the first start
of the configuration editor.
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 with 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.

September 2015 4.2 The Machine Parameters mode of operation 535


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.

536 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 only removed from a
list if it equals the given value.
Do not specify any index in this
case!

September 2015 4.2 The Machine Parameters mode of operation 537


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.

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."

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 assigned to the current parameter.
Example for changing a parameter via AND operation:
multiplier:="CfgOemInt-value[1]&%100"
Example for changing a parameter via OR operation:
multiplier:="CfgOemInt-value[1]|%100"

538 HEIDENHAIN Technical Manual TNC 640


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 bit-


based modifications.

calculationMo ; Reserved
de

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.

September 2015 4.2 The Machine Parameters mode of operation 539


UpdAttributeNewValue (
entity:="CfgOemInt",
version:=99.02,
key:="Ex1",
attrName:="value",
index:=1,
minValue:="9001",
value:="8001"
)

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:="Ex2",
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:="Ex3",
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.

540 HEIDENHAIN Technical Manual TNC 640


UpdAttributeMove The machine parameter is shifted from the specified configuration object of
the machine configuration to another configuration object, whereby key
names can be explicitly 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 shifted

entityNew := STRING, ; Name of the configuration


object to which the parameter is
shifted

keyNew := STRING, ; Key name of the configuration


(OPTIONAL) object to which the parameter is
shifted (optional)

attrNameNew := STRING, ; New name of the machine


(OPTIONAL) parameter (optional if different)

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."

September 2015 4.2 The Machine Parameters mode of operation 541


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.

542 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 4.2 The Machine Parameters mode of operation 543


(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 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.

544 HEIDENHAIN Technical Manual TNC 640


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 to "NR."

September 2015 4.2 The Machine Parameters mode of operation 545


UpdFileOP It is possible to copy, rename, or delete files. If you do so, the file names of
tables and NC programs will be adjusted automatically. You can restrict this
process to particular versions in order to avoid multiple execution.
File operations must be confirmed by the operator. A prompt allows the user
to accept or cancel this process.
If the table to be copied already exists, a corresponding prompt appears where
you can select to overwrite the file or not.

Syntax:

UpdFileOP (

version := REAL, ; version number from which


this rule will be applied

versionLimit := REAL, ; version number up to which


this rule will be applied

rules [...] := STRING ; Actual update rule(s)

COPY source_file TO ; copies the ‘source_file’ to the


target_file ‘target_file’

RENAME source_file TO ; renames the ‘source_file’ to


new_filename ‘new_filename’

DROP file_to_delete ; deletes the ‘file_to_delete’

Examples:
UpdFileOP (
version:=10.08,
versionLimit:=11.04,
rules:=[
“COPY %OEM%\\proto\\table\\MOTOR.MOT TO
%OEM%\\table\\MOTOR_OEM.MOT“,
“RENAME %OEM%\\table\\AFC_NEW.TAB TO AFC.TAB“,
“DROP %USR%\\table\\Test01.h“
]
)

This rule will only be executed for versions between 10.08 and 11.04. In this
example, the following actions will be performed:
 File MOTOR.MOT will be copied from PLC:\proto\table\ to PLC:\table\
 File PLC:\table\AFC_NEW.TAB will be renamed to AFC.TAB
 File TNC:\table\tool.t.bak will be deleted

546 HEIDENHAIN Technical Manual TNC 640


4.2.9 Removing syntax errors
The REMOVE SYNTAX ERROR soft key in the soft-key menu
MORE FUNCTIONS 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 Resets 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.

September 2015 4.2 The Machine Parameters mode of operation 547


4.2.11 Backup of parameters
The DATA BACKUP soft key in the configurations 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:


 Back up parameter files
The following file name is suggested:
%OEM%\service\BKUPyear-month-day_.ZIP
HEIDENHAIN recommends meaningfully supplementing the suggested
name, e.g. with the control type, software version etc.
In the selected backup file, e.g. BKUP2005-04-05_tnc320-sw123.ZIP all active
*.cfg configuration files from %OEM% and %USR% are saved, see
%OEM%\config\Configfiles.cfg:
- all files from %OEM% in the file _Oem_Config_Files_.zip
- all files from %USR% in the file _Usr_Config_Files_.zip
The implemented update files in Configfiles.cfg under updateFiles:= are
not saved to the backup file.
You can extend the parameter backup with any OEM-specific files, See
"Saving OEM-specific backup with the configuration editor and restoring it"
on page 550.
 Activate parameter files from the backup
The *.cfg configuration files from %OEM% and %USR% are retrieved from
the selected backup file and activated.
 Save help information in a text file
As the selection name, the following (to be supplemented) file name is
suggested:
%OEM%\service\HELPJahr-Monat-Tag_.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.

548 HEIDENHAIN Technical Manual TNC 640


 Save help information in an XML file
The output XML file contains nodes, entities and attributes in accordance
with the display in the configuration editor. The appropriate help text ID (text
name) and the help text itself is output for each element.
All existing help information is output, such as parameter number, iTNC MP
number, limit values, default values etc.
The directory PLC:\config\layout contains the XML schema
fileXmlHelpTree.xsd. This file specifies the structure of the generated XML
file.
 Save data tree in file
As the selection name, the following (to be supplemented) file name 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\config or
%OEM%\default\usr\config directory (directories with files), this data is
copied to the corresponding directories in %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.

September 2015 4.2 The Machine Parameters mode of operation 549


4.2.12 Saving OEM-specific backup with the configuration editor and restoring it
From NCK software version 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 either be restored with the configuration editor (Activate
parameter files from the backup function) or be activated by direct selection
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, optional parameter
Access: LEVEL3
Reaction: NOTHING

4.2.13 Resetting system settings


The RESET SETTINGS soft key in the soft-key menu MORE FUNCTIONS
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.

550 HEIDENHAIN Technical Manual TNC 640


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 SHUT DOWN CONTROL soft key to delete the system settings
and to shut down the TNC 640. The TNC 640 must be restarted immedia-
tely.

September 2015 4.2 The Machine Parameters mode of operation 551


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. Pressing the MOD
key also displays the USER PARAMETERS soft key. 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 561.
In "Example:" on page 559 a simple example illustrates how you create a
layout file for your user parameters and separate help texts for the
parameters.

552 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 = code number.
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 (See
"Access rights" on page 523.) machine parameters, 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.

September 2015 4.3 User parameters 553


 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 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 CON-
FIGEDIT-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 corre-
sponding XML layout files are found at:
%OEM%\config\layout\userparam.xml and
%OEm%\config\layout\user123.xml
• MP_dispLangText – display language-dependent 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-dependent 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).

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 with 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

554 HEIDENHAIN Technical Manual TNC 640


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: Menu choice
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
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

September 2015 4.3 User parameters 555


MP_text
Soft key labeling
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 key
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

556 HEIDENHAIN Technical Manual TNC 640


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: Menu choice
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

September 2015 4.3 User parameters 557


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: Menu choice
Options: TRUE
The detailed, language-sensitive names are displayed.
FALSE
The symbolic, English system names are displayed.
Default: TRUE
Access: LEVEL3
Reaction: NOTHING

558 HEIDENHAIN Technical Manual TNC 640


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 "configtreelay-
out.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.

September 2015 4.3 User parameters 559


 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"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.hng.ch/ConfigEditLayout/1
configtreelayout.xsd">

 The "conversational language" directory is now created:

For this purpose the XML file is expanded with the following entry:

<Node Name="CfgDisplayLanguage"
DialogRes="OEMTXT_CfgDisplayLanguage">

With the "DialogRes=" command, a language-specific name (in this case


"conversational language") is assigned to the CfgDisplayLanguage directory
from the OEM text file (*.CSV). If you want to display this text as folder
name by default, you must set MP_dispLangText to TRUE.
 Two machine parameters for language setting of the NC dialogs and help
texts should now be represented in the previously created "conversational
language" directory:

The following entries are required for this purpose in the XML file:

<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.

560 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 4.3 User parameters 561


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.

562 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 4.3 User parameters 563


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 related
to the first one 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 editor. 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 parame-
ters for the spindle. Also specify via the pull-down menu the storage 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. Chan-
ges 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 para-
meter set and entities indicates that the parameters are being mirrored by
the KeySynonym function.

564 HEIDENHAIN Technical Manual TNC 640


 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 storage 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
Reference to key name
Available from NCK software version: 597110-01.
Format: String
Input: Max. 18 character
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

September 2015 4.4 The KeySynonym function 565


4.5 Allocation of configuration data
The configuration data is saved in several files with the extension .cfg (see
"Managing configuration files" on page 515). 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 Kinematics description
 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 For a 5-axis system, configfiles.cfg looks like this for example (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 specified in this list although the system does not work
with 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.

566 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 4.5 Allocation of configuration data 567


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.

568 HEIDENHAIN Technical Manual TNC 640


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

September 2015 4.6 Structure of a parameter file 569


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
"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

570 HEIDENHAIN Technical Manual TNC 640


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.
The MP subfiles are usually activated by the PLC, but they can also be
activated manually by using the configuration editor.
MP subfiles with reset parameters can only be loaded during start-up of the
control. For example, the machine parameters for the basic configuration of an
axis can be defined in an MP subfile.

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.

Note

Only MP subfiles that do not contain reset parameters can be loaded during
run time.

Example of MP subfile with a new value for attribute 3:


entity(
key:= key4711,
attribute3:= valuex
)

September 2015 4.7 MP subfiles 571


4.7.2 Loading and editing MP subfile with the configuration editor
 Press the MOD key
 Enter the code number 95148.
 Press the LOAD / EDIT SUBFILE soft key
 The following dialog is displayed

Loading the MP Load an MP subfile with the LOAD MP SUBFILE, LOAD AND SELECT or EDIT ONLY
subfile soft keys.

Creating a new MP A new MP subfile can be created with the LOAD MP SUBFILE, LOAD AND SELECT
subfile or EDIT ONLY soft keys.
 Enter the name in the Name: field
 Press one of the above-specified soft keys
 Confirm the query File does not exist. Accept file name anyway? by
pressing the soft key again

572 HEIDENHAIN Technical Manual TNC 640


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 be
previously activated, see "Displaying/editing data records in
the configuration editor" on page 579.
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.
Carries out an update for the selected MP subfile or for MP
subfiles in the specified directory. If a single file is opened you
can then control the implemented modifications and save
these if required.

Updating a file/ A differentiation must be made between selecting a single file or directory as
directory the MP subfile.
Single file selected:
 Press the UPDATE FILE / DIRECTORY soft key
 A help page is displayed indicating that the data must be controlled
 Control and save the modifications with the CONFIG DATA soft key
Directory selected:
 Press the UPDATE FILE / DIRECTORY soft key
 All MP subfiles in the directory are updated according to the updating rules.
The update is implemented for each file individually and changes are saved
immediately. Only *.cfg files are included in the update.
 A *.cfg.upd.dep file is generated for each MP subfile updated without
errors. This file contains information about the implemented update.

September 2015 4.7 MP subfiles 573


Display of the information:
 Select the MP subfile with the LOAD / EDIT SUBFILE soft key
 Press the EDIT ONLY soft key
 The CONFIG DATA soft key opens the MP subfile for editing
 Press the END soft key to terminate editing. You are requested to save the
data. This deletes the *.cfg.upd.dep file so that the modification informa-
tion is then no longer displayed.

Attention

If errors, warnings etc. occur during the MP subfile updating process, 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.

574 HEIDENHAIN Technical Manual TNC 640


4.7.3 Activating the MP subfile via the PLC
Subfiles are activated by Module 9034. In this case the symbolic PLC operand
NN_GenCycleAfterReConfig (M4174) will not be set.
Use module 9466 to load or unload machine parameter subfiles. Compared to
module 9034, its functionality has been extended.
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.
Constraints:
 The module can only be called in a submit or spawn job.
 The new 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 was created externally, make sure that no lowercase
letters were used in the file name.
 When an NC program is running, only selected machine parameters can be
changed.
 The selected file will not be loaded if it contains parameters that the
machine manufacturer may not change or that are currently reserved for
changes to be made by a different process.
Call:
PS B/W/D/K <string number>
0 to 99
CM 9034
PL B/W/D/K <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 transferred
5: Call was not in a submit/spawn job
6: 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


NN_GenApiModule 0 No error (parameter subfile was loaded)
Error 1 Error code in NN_GenApiModuleErrorCode
or in <error code> see above

September 2015 4.7 MP subfiles 575


Marker Value Meaning
NN_GenApiModule 1 Incorrect string number transferred (out of
ErrorCode valid range 0..3)
2 String does not contain a valid file name, or
the name (including path) is too long
7 File not found or file corrupt/contains reset
parameters
20 Call not in a submit/spawn job
21 Change not possible with a run-
ning NC program
61 Access rights insufficient, or access
already reserved or internal system error

576 HEIDENHAIN Technical Manual TNC 640


Module 9466 Handling of machine parameter subfiles
Use module 9466 to load or unload machine parameter subfiles. Compared to
module 9034, its functionality has been extended.
Constraints:
 It is only possible to unload a subfile and change the machine parameters in
a subfile if the file was not only loaded into the run-time memory. Please
note, however, that loading of subfiles in another memory but the run-time
memory cannot be repeated endlessly.
Call:
PS B/W/D/K <Mode for subfile access>
0: Loading only into the run-time memory (as with
module 9034)
1: Loading the subfile
2: Unloading the subfile
PS B/W/D/K/S <Path name of the subfile>
CM 9466
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (access to subfile successful)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <mode for subfile access>
ErrorCode 3 Invalid string number or address for subfile
path name specified
7 File is corrupted or contains parameters
with the RESET reaction
12 Path name of the subfile is too long
20 Call not in a submit/spawn job
21 Subfile contains parameters that may not
be changed while the program is running
36 Subfile not found or no access rights

September 2015 4.7 MP subfiles 577


4.7.4 Activating MP subfiles during system start-up
From NCK software version 597110-10:

Settings in the configuration editor MP number


System
Path
CfgPortionFiles
portionFiles 125401

If you want to activate parameter sets right when starting up the control, you
can enter them into a list. This way it is possible, for example, to define the
machine parameters for the basic configuration of an axis in an MP subfile.
The MP subfiles will be loaded after the basic data and can overwrite it. The
symbolic key name of the entry determines the order in which the files will be
loaded. The files will be processed in alphabetical order.
Only subfiles loaded during start-up may contain RESET parameters. For this
reason, such MP subfiles cannot be unloaded at run time.

MP_portionFiles
List of the MP subfiles loaded during start-up of the control.
Available from NCK software version: 597110-10.
Format: String
Input: List of up to 40 paths, max. 260 characters per path
Enter the MP subfiles to be loaded during the start-up of the
control.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

578 HEIDENHAIN Technical Manual TNC 640


4.7.5 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
) ) )

September 2015 4.7 MP subfiles 579


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."

580 HEIDENHAIN Technical Manual TNC 640


4.8 Reading and writing machine parameters in the NC program
Machine parameters can be read and written in the NC program if you want to
read or modify certain values from the machine configuration with an OEM
cycle, for example.
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 the NC program (CFGREAD)


According to the type of machine parameter, the result of the query must be
written in a Q or 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 instruction

Q [number]
QS[number] = CFGREAD( KEY_QS1 TAG_QS2 ATR_QS3 IDX0 )
| | | |
Key name ----------------+ | | |
Config object (entity) ---------+ | |
Machine parameter (attribute) ----------+ |
Index -----------------------------------------+

September 2015 4.8 Reading and writing machine parameters in the NC program 581
Programming a CFGREAD command:
 Via the configuration editor, determine:
- the key name (= key)
- the configuration object (Cfg...)
- the name of the parameter (= attribute)
- the index (if available).
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 com-
mand 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 string functions:
Press the SPEC FCT key, 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 available)
- 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:
 Call the Q parameter functions by pressing 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 unsuccessful the TNC 640 generates an error
message. This error message can be suppressed with
FN17: SYSWRITE ID13 NR3 = <Label>.

582 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" ;Configuration object name
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: HR 410

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" ;Configuration object name
DECLARE STRING QS12 = "type" ;Attribute name (= parameter)

QS13 = CFGREAD( KEY_QS10 TAG_QS11 ATR_QS12 )

September 2015 4.8 Reading and writing machine parameters in the NC program 583
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_rpm_min (permissible


minimum spindle speed) from CfgOemInt is to be transferred to Q150:
Key name (KEY): NP_DG_S_n_min
Configuration object (TAG): CfgOemInt
Machine parameter (ATR): value
Index: 1
DECLARE STRING QS15 = "NP_DG_S_n_min" ;OEM parameter key name
DECLARE STRING QS16 = "CfgOemInt" ;Configuration object name
DECLARE STRING QS17 = "value" ;Attribute name (= parameter)

Q150 = CFGREAD( KEY_QS15 TAG_QS16 ATR_QS17 IDX1)

584 HEIDENHAIN Technical Manual TNC 640


4.8.2 Writing machine parameters in the NC program (CFGWRITE)
Structure of the CFGWRITE instruction:

Q [number] = CFGWRITE( KEY_QS1 TAG_QS2 ATR_QS3 DAT+Q1 )


| | | |
Key name ----------------+ | | |
Config object (entity) ---------+ | |
Machine parameter (attribute) ----------+ |
Value to be written ------------------------------+

With CFGWRITE, numerical values or strings from QS references can be written


to the machine configuration. Numerical values are assumed to be metric. The
return code is always 0.
The access right for CFGWRITE is attained from the storage location of the NC
program:
 If the NC program is stored on the partition TNC: only machine parameters
with LEVEL1 access right can be modified.
 If the NC program is stored on the partition PLC: machine parameters with
LEVEL1, LEVEL2 and LEVEL3 access right can be modified.
 With CFGWRITE, only values can be written in machine parameters with the
reaction NOTHING.
The code number 555343 must be input so that the soft key for programming
CFGWRITE is displayed in the editor of the TNC 640.
In the Test Run operating mode, CFGWRITE is skipped and there is no
modification of the configuration. CFGWRITE is executed in block scan.
If a write operation with 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 the CFGWRITE function, 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)
Program the CFGWRITE command:
 Via the configuration editor, 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

September 2015 4.8 Reading and writing machine parameters in the NC program 585
 Move the cursor to the location in the program where the CFGWRITE com-
mand 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 string functions:
Press the SPEC FCT key, 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 available)
- configuration object (entity)
- name of the machine parameter (attribute)
 Call the Q parameter functions by pressing 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).
 Via soft key, select and enter the type of value to be written:
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.

586 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 is
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.
Using Module 9465, you can change the behavior of the PLC runtime system
when accessing machine parameters with Modules 9430, 9432, 9436, and
9438.

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 star-
ted properly anymore.

September 2015 4.9 Reading or changing machine parameters via PLC modules 587
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);


transfer 0 for parameters without 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


numerical machine
parameter>

<String> String number (0 to 15)

<Error> See "Return codes of PLC Modules 9430 to 9433,


9436, 9438 (error stack)" on page 599.

588 HEIDENHAIN Technical Manual TNC 640


Module 9430 Temporarily change the numeric value of a machine para-
meter
Use Module 9430 to enter a numeric value in the indicated numerical machine
parameter.
The NC software specifies when a machine parameter can be changed. This
can be looked up in the Technical Manual with the description of each
parameter under "Reaction", or in the configuration editor in the help display
under "Behavior".
Constraints:
 The value of the machine parameter is changed in the run-time memory
only, in a nonvolatile memory, it will not be overwritten. The change is only
effective until one of the following occurs:
• The value is changed again in the run-time memory.
• The nonvolatile value of a machine parameter of the same configuration
object instance is changed. This loads the nonvolatile values of all
machine parameters of this instance into the run-time memory.
• The control is restarted.
 If the key you indicate is only a synonym for an instance, writing to the run-
time memory creates a copy of this instance that is changed independently
of the original instance.
 If an optional machine parameter is indicated that has not been defined yet,
it will be created newly.
 If an optional machine parameter that has not been defined yet is indicated
in an existing array, the array will be extended accordingly.
 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 <New value of the numerical machine parameter>
CM 9430
PL B/W/D/K <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 599.

September 2015 4.9 Reading or changing machine parameters via PLC modules 589
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (data was changed)
Error 1 Error code in
NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter outside value range
ErrorCode 2 Division factor less than or equal to 0,
No configuration object with the given
name exists,
No machine parameter with the given
name exists in the given configuration
object,
No instance of the configuration object
with the given key exists,
Given index exceeds the maximum field
size,
Configuration object instance contains
errors,
Internal error of the configuration server
3 Invalid string number for configuration
object, key name or machine parameter
6 Value must not be changed
20 Call not in a submit/spawn job

590 HEIDENHAIN Technical Manual TNC 640


Module 9431 Read the numerical value of a machine parameter
With this module you can read the value of the given numerical machine
parameter. The system always reads the value 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)
PS B/W/D/K <Factor>
Multiplier for conversion to an integer
CM 9431
PL B/W/D/K <Numerical value of the machine parameter>
PL B/W/D/K <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 599.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (data was read)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter outside value range
ErrorCode 2 No configuration object with the given
name exists,
No machine parameter with the given
name exists in the given configuration
object,
No instance of the configuration object
with the given key exists,
No instance of the machine parameter with
the given index exists,
Optional machine parameter with the given
name does not exist in the instance,
Configuration object instance contains
errors,
Internal error of the config server
3 Invalid string number for configuration
object, key or machine parameter
20 Call not in a submit/spawn job

September 2015 4.9 Reading or changing machine parameters via PLC modules 591
Module 9432 Change the string value of a machine parameter
Use this module to enter a string 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 control start-up.
Constraints:
 The value of the machine parameter is changed in the run-time memory
only, in a nonvolatile memory, it will not be overwritten. The change is only
effective until one of the following occurs:
• The value is changed again in the run-time memory.
• The nonvolatile value of a machine parameter of the same configuration
object instance is changed. This loads the nonvolatile values of all
machine parameters of this instance into the run-time memory.
• The control is restarted.
 If the key you indicate is only a synonym for an instance, writing to the run-
time memory creates a copy of this instance that is changed independently
of the original instance.
 If an optional machine parameter is indicated that has not been defined yet,
it will be created newly.
 If an optional machine parameter that has not been defined yet is indicated
in an existing array, the array will be extended accordingly.
 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/K <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 599.

592 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (data was changed)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter outside value range
ErrorCode 2 No configuration object with the given
name exists,
No machine parameter with the given
name exists in the given configuration
object,
No instance of the configuration object
with the given key exists,
Given index exceeds the maximum field
size,
Configuration object instance contains
errors,
Internal error of the configuration server
3 Invalid string number for configuration
object, key or machine parameter
6 Value must not be changed
20 Call not in a submit/spawn job

September 2015 4.9 Reading or changing machine parameters via PLC modules 593
Module 9433 Read the string value of a machine parameter
With this module you can read the value of the given machine parameter as a
string. The system always reads the value 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 <Number of the string>
Number of the string where the machine parameter will be
stored
CM 9433
PL B/W/D/K <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 599.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (data was read)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter outside value range
ErrorCode 2 Division factor 0 or negative
No configuration object with the given
name exists,
No machine parameter with the given
name exists in the given configuration
object,
No instance of the configuration object
with the given key exists,
No instance of the machine parameter with
the given index exists,
Optional machine parameter with the given
name does not exist in the instance,
Configuration data object is not numeric,
Configuration object instance contains
errors,
No machine parameter with the given
name exists in the instance,
Internal error of the config server
3 Invalid string number for configuration
object, key name or machine parameter
20 Call not in a submit/spawn job

594 HEIDENHAIN Technical Manual TNC 640


Module 9436 Change the numeric value of a machine parameter persi-
stently
Use Module 9436 to enter a numeric value in the indicated numerical machine
parameter.
Constraints:
 The nonvolatile value of the machine parameter is changed. Then the entire
instance of the configuration object is reloaded into the run-time memory.
Changes made to other machine parameters in the same instance that have
only been made in the run-time memory will be overwritten.
 If an optional machine parameter is indicated that has not been defined yet,
it will be created newly.
 If an optional machine parameter that has not been defined yet is indicated
in an existing array, the array will be extended accordingly.
 If the key you indicate is only a synonym for an instance, the writing
operation will only be performed if it has been enabled explicitly using
options in Module 9465. In this case, nonvolatile data of the instance
referenced by the synonym is changed and reloaded into the run-time
memory.
Any copy that might have been created under the given key in the run-time
memory will be deleted. Changes made to this copy will get lost.
 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 configuration 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 the numerical machine parameter>
CM 9436
PL B/W/D/K <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 599.

September 2015 4.9 Reading or changing machine parameters via PLC modules 595
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (machine parameter was written)
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter outside value range
ErrorCode 2 Division factor less than or equal to 0,
No configuration object with the given
name exists,
No machine parameter with the given
name exists in the given configuration
object,
No instance of the configuration object
with the given key exists,
Given index exceeds the maximum field
size,
Configuration object instance contains
errors,
Internal error of the configuration server
3 Invalid string number for configuration
object, key name or machine parameter
6 Value must not be changed
20 Call not in a submit/spawn job

596 HEIDENHAIN Technical Manual TNC 640


Module 9438 Change the value of a machine parameter persistently
Use Module 9438 to enter a value in the indicated machine parameter.
Constraints:
 The nonvolatile value of the machine parameter is changed. Then the entire
instance of the configuration object is reloaded into the run-time memory.
Changes made to other machine parameters in the same instance that have
only been made in the run-time memory will be overwritten.
 If an optional machine parameter is indicated that has not been defined yet,
it will be created newly.
 If an optional machine parameter that has not been defined yet is indicated
in an existing array, the array will be extended accordingly.
 If the key you indicate is only a synonym for an instance, the writing
operation will only be performed if it has been enabled explicitly using
options in Module 9465. In this case, nonvolatile data of the instance
referenced by the synonym is changed and reloaded into the run-time
memory.
Any copy that might have been created under the given key in the run-time
memory will be deleted. Changes made to this copy will get lost.
 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 the machine parameter>
CM 9438
PL B/W/D/K <Error>
See "Return codes of PLC Modules 9430 to 9433, 9436,
9438 (error stack)" on page 599.

September 2015 4.9 Reading or changing machine parameters via PLC modules 597
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (machine parameter was written)
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter outside value range
ErrorCode 2 No configuration object with the given
name exists,
No machine parameter with the given
name exists in the given configuration
object,
No instance of the configuration object
with the given key exists,
Given index exceeds the maximum field
size,
Configuration object instance contains
errors,
Internal error of the configuration server
3 Invalid string number for configuration
object, key name or machine parameter
6 Value must not be changed
20 Call not in a submit/spawn job

598 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
(not for  Access to the machine parameter is disabled by another
Modules 9431, process
9433)  Access to the machine parameter is disabled during
program run
 Access to the machine parameter via a synonym is
disabled (not for Modules 9430, 9432)
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 (not for Modules 9431,
9432, 9433, 9438)
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
(not for Modules 9430, 9432, 9436, 9438)
 Given index exceeds the maximum field size (not for
Modules 9431, 9433)
 Optional machine parameter with the given name does
not exist in the instance (not for Modules 9430, 9432,
9436, 9438)
11 Machine parameter is not numerical
(not for
Modules 9432,
9433, 9438)
12 New value is invalid (too long or outside the value range)
(not for
Modules 9431,
9433)
13 Faulty contents of configuration object
14 Internal error of the config server

September 2015 4.9 Reading or changing machine parameters via PLC modules 599
Module 9465 Change options for accessing machine parameters
Use Module 9465 to change the behavior of the PLC runtime system when
accessing the machine parameters with Modules 9430, 9432, 9436 and 9438.
By using transactions to change machine parameters, it is possible to buffer
multiple changes so that they only become effective when you confirm the
transaction. This way, you can avoid inconsistent states of the control
between the first and the last change. In addition, you avoid multiple reactions
of the control to changed machine parameters that partly lead to a temporary
lock of write access to other machine parameters while the changed machine
parameter is processed. Finally, you can thus change multiple machine
parameters whose changes require restarting the control and thus stop the
PLC program.

Note

HEIDENHAIN highly recommends that you perform changes within a tran-


saction either only to the run-time memory or only to nonvolatile data.

If you make changes to a nonvolatile key of a machine parameter and the key
you indicate is only a synonym for an instance, the write operation will only be
performed if this has been enabled explicitly. In this case, nonvolatile data of
the instance referenced by the synonym is changed and reloaded into the run-
time memory. Any copy that might have been created under the given key in
the run-time memory will be deleted. Changes made to this copy will get lost.
If a machine parameter value included in the basic data is overwritten by
loading a subfile in the run-time data, a change of the nonvolatile data of this
machine parameter will only affect the value in the basic data but neither in the
subfile nor in the run-time memory, except if writing to the subfile has been
enabled explicitly. In this case, the value in the subfile will be changed and the
instance the subfile belongs to will be reloaded into the run-time memory. The
value in the basic data remains unchanged.

600 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Number of the option to be changed>
1: Change machine parameters in a transaction
2: Enable write access for specifying a synonym as a key
3: Enable write access for machine parameter subfiles
PS B/W/D/K <New value of the option>
Change machine parameters in a transaction
0: Change machine parameters individually
1: Start a transaction for changing machine parameters
2: Confirm the transaction for changing machine parame-
ters, apply changed machine parameters,
perform subsequent changes individually until the next
transaction occurs
3: Abort the transaction for changing machine parameters,
discard changed machine parameters, perform subse-
quent changes individually until the next transaction
occurs
Enable write access for specifying a synonym as a key
0: Changes of nonvolatile data when specifying a synonym
are locked
1: Changes of nonvolatile data when specifying a synonym
are enabled
Enable write access for machine parameter subfiles
0: Change nonvolatile data only in the basic data
1: Enable changes of nonvolatile data in subfiles
CM 9465
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (option was changed)
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Parameter value <new value for option>
ErrorCode outside the value range
2 Specified option is not defined
6 While a transaction is running, it is not pos-
sible to change individual machine parame-
ters
8 While a transaction is running, it is not pos-
sible to start a new transaction
20 Call not in a submit/spawn job
45 Error when confirming the transaction,
changed parameters cannot be applied

September 2015 4.9 Reading or changing machine parameters via PLC modules 601
4.10 Parameter sets, switching
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.

602 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 1077. 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.

September 2015 4.10 Parameter sets, switching 603


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.
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 DEACTIV. REF


SYNC_CALC OFF AXIS
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 – – – – –

604 HEIDENHAIN Technical Manual TNC 640


Machine parameters RESET Strobe with DRIVE DEACTIV. REF
SYNC_CALC OFF AXIS
CfgChannelAxes
progAxis X – – – –
restoreAxis X – – – –
deactFastClamping – – – – –
CfgLaPath
minPathFeed – – – – –
minCornerFeed – – – – –
maxG1Feed – – – – –
maxPathJerk – – – – –
maxPathJerkHi – – – – –
pathMeasJerk – – – – –
pathTolerance – – – – –
pathToleranceHi – – – – –
maxPathYank – – – – –
maxPathYankHi – – – – –
reduceCornerFeed – – – – –
curveTolFactor – – – – –
curveJerkFactor – – – – –
angleTolerance – – – – –
angleToleranceHi – – – – –
filterFeedTime – – – – –
maxTransAcc – – – – –
maxTransAccHi – – – – –
CfgTCPM
toolRefPoint – – – – –
CfgAxis
isAng X – – – –
isModulo – – – –
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

September 2015 4.10 Parameter sets, switching 605


Machine parameters RESET Strobe with DRIVE DEACTIV. REF
SYNC_CALC OFF AXIS
distPerMotorTurn – – – – –
distPerMotorTurnF – – – – –
posEncoderDist – – – – X
posEncoderIncr – – – – X
genExtIntPolFactor – – – – X
posEncoderInput – X X – X
posEncoderSignal – – – – –
posEncoderFreq – – – – –
posEncoderResistor – – – – –
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 – – –

606 HEIDENHAIN Technical Manual TNC 640


Machine parameters RESET Strobe with DRIVE DEACTIV. REF
SYNC_CALC OFF AXIS
CfgReferencing
refType – X – – X
onTheFly – X – – –
refPosition – X – – X
endatDiff – X – – –
refFeedLow – X – – –
refFeedHigh – X – – –
refDirection – X – – X
posEncoderRefDist – – – – X
moveAfterRef – X – – –
moveAfterRefType – X – – –
moveAfterRefPos – X – – –
moveAfterRefFeed – X – – –
refAuxFunctions
refSwitchLowActive – – – – X
endatSerial – X – X X
moveOnAfterSwitch – – – – X
doubleRef – – – – X
doubleRefOffset – – – – –
externRefPulse – – – – X

September 2015 4.10 Parameter sets, switching 607


Machine parameters RESET Strobe with DRIVE DEACTIV. REF
SYNC_CALC OFF AXIS
CfgPositioniLimits
swLimitSwitchPos – X – – –
swLimitSwitchNeg – X – – –
lubricationDist – X – – –
CfgControllerAuxil
driveOffLagMonitor – – – – –
checkPosStandstill – – – – –
maxPosDiff – – – – –
maxSpeedDiff – – – – –
posDiffCountDir – – – – X
CfgEncoderMonitor
checkAbsolutPos – X X – –
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 – – – – –
PowerStage-Table
AmpPeakCurrent – X X X –
AmpNomCurrent – X X X –
AmpCurrentSensorVoltage – X X X –

608 HEIDENHAIN Technical Manual TNC 640


Machine parameters RESET Strobe with DRIVE DEACTIV. REF
SYNC_CALC OFF AXIS
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 – – – – –
CfgPositionFilter
filter1Shape – X – – –
filter1LimitFreq – X – – –
filter2Shape – X – – –
filter2LimitFreq – X – – –
manualFilterOrder – – – – –
CfgAxisComp
All parameters – – – – –

September 2015 4.10 Parameter sets, switching 609


Machine parameters RESET Strobe with DRIVE DEACTIV. REF
SYNC_CALC OFF AXIS
CfgAxisCoupling
All parameters – – – – –
CfgLaAxis
All parameters – – – – –
CfgAxisHandwheel
All parameters – – – – –
CfgCCAuxil
All parameters – – – – –

Procedure 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 index 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.

610 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 set 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/K <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 deac-
tivated.
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error (see above)

September 2015 4.10 Parameter sets, switching 611


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/K <Index of active parameter set>
PL B/W/D/K <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 (indi-
cated axis does not exist)

612 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 Software
version
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 974
100001 Enter the axes of all channels of the machine, LEVEL3
including spindles and PLC axes.
597110-01
Format: List [0...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 1559
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
numberused by the PLC to identify the spindle.
Format: List [0...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 982
point control
100004
(RESET)
Defines the axes that are to be referenced and the
reference order. LEVEL3
Format: List [0...23]
Input: Selection of key names from
CfgAxes/axisList

September 2015 4.11 List of machine parameters 613


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
refAllAxes Home all axes in succession after an NC Shut down 982
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 976
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...23]
Input: Selection menu with the axis key
names
from Axes/PhysicalAxes
Examples: C1, Y1, etc.

614 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgHardware
Definition of controller hardware;
definition of type of drive controller.
hardwareType Type of drive controller hardware Shut down 988
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
hardwareType Type of drive controller hardware Shut down 988
control
100101 Format: Selection menu
(RESET)
Input:
LEVEL3
 NoCC
No controller unit 597110-01

i32stopsMonitoring Behavior of input I32 (drive enabling) Program 1494


run is
100102 Format: Selection menu
locked
Input: (RUN)
 on LEVEL3
If 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

September 2015 4.11 List of machine parameters 615


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
driveOffGroupInput PLC inputs belonging to the switch-off groups Program 277
(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 axes 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 1311
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

616 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
plugAndPlay Evaluation of the electronic ID labels Program 1670
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
for 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

September 2015 4.11 List of machine parameters 617


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgMachineSimul
Switch TNC 640 into 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 1897
mode
100201 LEVEL3
Format: Selection menu
MP7210 597110-10
Input:
 FullOperation
Programming station mode is switched off.
The wiring of the machine must be complete;
the drives are moved.
 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.
 DriveSimul
The programming station is active.
Simulation of the drives. All PLC inputs and
outputs, as well as the emergency-stop circuit,
must be properly connected in order to switch
the control on correctly.
 DriveAndEmStopSimul
The programming station is active.
Simulation of the drives and the EMERGENCY
STOP circuit. All configured PLC inputs and
outputs must be connected properly.
 FullSimul
The programming station is active.
Simulation of all drives, the EMERGENCY STOP
circuit and all PLC inputs and outputs.
skipReferencing Fast reference run RESET 1898
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.

618 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
simHardwareType Type of drive controller hardware to be RESET 1899
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 1899
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 1312
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
plcCount PLC cycle time (look-ahead cycle time) RESET 2322
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)

September 2015 4.11 List of machine parameters 619


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
watchdogTime Delayed switch-off of SH1 Program –
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 supply modules;
List with key names of all power supply modules existing 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 1694
control
117201 Enter the model of the power supply unit. If the
(RESET)
parameter is set to editing mode, the TNC 640
MP2198
opens the "supply.spy" power-supply table. Select LEVEL3
the power supply module from the table. The TNC
597110-05
640 will enter the name automatically upon
selection.
plugAndPlay Evaluation of the electronic ID labels Program 1670
run is
117201 With each new start, the TNC 640 checks
locked
whether the connected supply module has been
MP7690, bit 2 (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
The setting from CfgHardware/plugAndPlay is
active.
Default: Active

620 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgFilter
Default configuration of nominal position value filters, applies to all axes.
Can be overwritten axis-specifically.
 defaultPosition:
Default configuration of the nominal position value filter for all linear axes
 defaultCutterLoc:
Default configuration of the nominal position value filter for all rotary axes with M128.
shape Shape of the nominal position value filter Allowed in 1288
strobe
100405, 100406 Format: Selection menu
(SYNC)
MP1200 Input:
LEVEL3
 Off
Filter switched 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 1289
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 1289
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

September 2015 4.11 List of machine parameters 621


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
maxHscOrder Max. filter order for HSC and Allowed in 1289
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 Allowed in 1289
operating mode Manual Operation strobe
100407
(SYNC)
Format: Numerical value
LEVEL3
Input: 1 to 51
597110-05
Default: 11
disableForMeasure Deactivation of the filters during Allowed in 1290
measurement with TS or TT strobe 2312
100408
(SYNC)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-06
 TRUE
The nominal position value filters and the filters
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]

622 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgHandwheel
Parameter for configuring the electronic handwheel
Configures the serial handwheel connected to X23.
type Type of handwheel Program 2144
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
Panel-mounted handwheel HR 130
 HR330
Portable handwheel HR 330
 HR332
Portable handwheel HR 332
 HR510/HR410
Portable handwheel HR 510 or HR 410
 HR420
Portable handwheel HR 420
 HR520
Portable handwheel HR 520
 HR550
Portable handwheel HR 550
Default: None
initValues Initialization values for handwheel Program 2144
run is
100602 Format: List [0...7]
locked
MP7645 Input: 0 to 255 (RUN)
Default: 0 LEVEL3
597110-01
incrPerRevol Increments per handwheel revolution Program 2145
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

September 2015 4.11 List of machine parameters 623


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
rasterPerRevol Detent steps per handwheel revolution Program 2145
run is
100604 Format: Numerical value
locked
(optional parameter) Input: 0 to 100 000 (RUN)
Default: 0 LEVEL3
597110-01
countDir Counting direction for handwheel Program 2145
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 2146
run is
100606 Shocks and vibration can cause minor movements
locked
of the handwheel. In order to avoid an unintended
MP7660 (RUN)
travel movement, you can define a threshold
sensitivity for the handwheel here. LEVEL3
Format: Numerical value 597110-01
Input: 0 to 10 000 [pulses]
Default: 0
speedFactor Handwheel transmission ratio Program 2146
run is
100607 Three transmission ratios [%].
locked
The distance covered per handwheel revolution is:
MP7670.0 (RUN)
set transmission ratio stage from
MP7670.1
MP_CfgAxisHandwheel : MP_distPerRevol. LEVEL3
MP7670.2
Format: List [0...2] 597110-02
Input:
[0] = 1st Stage in [%]
[1] = 2nd Stage in [%]
[2] = 3rd Stage in [%]
Default: 1, 10 and 100 [%]

624 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
feedFactor Manual feed rates in the Electronic Handwheel Program 2146
mode run is
100608
locked
Percentage factor for the three 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...2]
Input:
[0] = 1st Stage in [%]
[1] = 2nd Stage in [%]
[2] = 3rd Stage in [%]
Default: 1, 10 and 100 [%]
selectAxes Selection of axes for the handwheel Program 2148
run is
100610 Select the axes to be moved with the handwheel.
locked
(optional parameter) Extra information: (RUN)
 On portable handwheels with axis keys, e.g. LEVEL3
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.
 For panel-mounted handwheels HR 150 via
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 panel-mounted handwheel HR 130:
Do not define the parameter. The axes are
assigned via the PLC program (e.g. Module
9036).
Format: List [0...23]
Input: Select the axes using the selection
menu

September 2015 4.11 List of machine parameters 625


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
plcInputs Evaluation of the handwheel keys Program 2167
run is 2162
100611 The parameter specifies the state in which the
locked
axis keys on the handwheel are mapped to PLC
MP7641, bit 5 (RUN)
inputs.
(optional parameter) LEVEL3
Format: Selection menu
597110-06
Input for 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 set on PLC inputs even when
the handwheel is inactive.
Input for HR 410 or HR 510 handwheel in NC
mode:
(from NC kernel software 597110-08)
 IfActive or not defined
All keys except the axis keys are mapped to
PLC inputs.
 Always
All keys including axis keys are displayed on
PLC inputs.
Other handwheels:
The parameter has no function.
Default: No value (not defined)
plcPlusMinus Evaluate +/– keys through the PLC Program 2168
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 a HR 410 or HR 510
handwheel in the 597110-06
PLC mode, the parameter
has no function
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

626 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
plcStartStop Evaluate NC start/stop keys by PLC Program 2168
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 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 through the PLC Program 2169
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
plcCtrlKey Evaluate the CTRL key through the PLC Program 2169
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

September 2015 4.11 List of machine parameters 627


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
lockPlcSoftkeys Behavior of the vertical soft-key row if Program 2169
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 Enable additional charging station for HR 550 Program 2169
run is
100618 Note: Only for HR 550.
locked
MP7641, bit 10 Format: Selection menu (RUN)
(optional parameter) Input: LEVEL3
 FALSE 597110-09
Using an additional charging station is not
permitted.
 TRUE
Using an additional charging station is
permitted.
Default: FALSE
maxDelayRaster Limiting of axis trailing Program –
run is
100617 Note: Only for handwheels with detent
locked
(optional parameter) Format: Numerical value (RUN)
Input: 1 to 100 [incr.] LEVEL3
Default: 100 597110-09

628 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgAutoStart
AUTOSTART function
Settings for automatic program start
autoStartEnabled Activate AUTOSTART soft key PLC/Pgm 1915
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 with PLC/Pgm 1915
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 1915
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 default when the dialog window is opened.
The currently selected program is used for the
AUTOSTART function.
Default: TRUE

September 2015 4.11 List of machine parameters 629


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
hideSoftkey Hide the AUTOSTART soft key PLC/Pgm 1916
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

630 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
DisplaySettings
Configuration of the user interface
CfgDisplayData
Settings for screen displays
axisDisplay Display sequence and rules for axes Change at 1008
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 parameters MP_axisKey,
MP_name and MP_rule. Specifies sequence and
rules for the display of an axis.
Format: Array [0...23]
axisDisplayRef Display sequence and rules for axes before the Change at 1009
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 parameters MP_axisKey,
MP_name and MP_rule. Specifies sequence and
rules for the display of an axis.
Format: Array [0...23]
Input: Axes from CfgAxes/axisList
using the selection menu

September 2015 4.11 List of machine parameters 631


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
positionWinDisplay Type of position display in the position Change at 1010
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
 REF.NOML.
Nominal position referenced to the machine
datum
 LAG
Servo lag (following error)
 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)

632 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
statusWinDisplay Type of position display in the status window Change at 1011
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
 REF.NOML.
Nominal position referenced to the machine
datum
 LAG
Servo lag (following error)
 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 1012
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: "."

September 2015 4.11 List of machine parameters 633


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
axisFeedDisplay Display of the feed rate in the Manual Change at 1012
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 1013
display any time
100807
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL1
Input:
597110-04
 during closed loop
Display of spindle position only if spindle is
servo controlled
 during closed loop and M5
Display of spindle position if the spindle is
position-looped and M5 is programmed
Default: during closed loop
hidePresetTable Display or hide the PRESET TABLE soft key. Change at 1987
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

634 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 1869
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 parameters
when an NC program is selected and in the
event of M02, M30 or 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 1013
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 [°]

September 2015 4.11 List of machine parameters 635


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
displayPaceInch Display step for position display in inches Change at 1013
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]

636 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgUnitOfMeasure
Definition of the unit of measure valid for the display
unitOfMeasure Unit of measure for display and user interface Program 1874
run is
101101 Format: Selection menu
locked
Input: (RUN)
 metric LEVEL1
Metric system
597110-01
 inch:
Inches
Default: metric
CfgProgramMode
Format of 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 1879
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

September 2015 4.11 List of machine parameters 637


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgDisplayLanguage
Definition of the NC and PLC conversational language
ncLanguage NC conversational language Program 1876
run is
101301 Format: Selection menu
locked
MP7230.0 Input: ENGLISH – English (RUN)
GERMAN – German
LEVEL1
CZECH – Czech
FRENCH – French 597110-01
ITALIAN – Italian
SPANISH – Spanish
PORTUGUESE – Portuguese
SWEDISH – Swedish
DANISH – Danish
FINNISH – Finnish
DUTCH – Dutch
POLISH – Polish
HUNGARIAN – Hungarian
RUSSIAN – Russian
CHINESE – Chinese
(simplified)
CHINESE_TRAD – Chinese
(traditional)
SLOVENIAN – Slovenian
KOREAN – Korean
NORWEGIAN – Norwegian
ROMANIAN – Romanian
SLOVAK – Slovak
TURKISH – Turkish
Default: ENGLISH
plcDialogLanguage PLC conversational language Program 1876
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 1877
run is
101303 Format: Selection menu
locked
MP7230.2 Input: see MP_ncLanguage (RUN)
Default: ENGLISH LEVEL1
597110-01

638 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
helpLanguage Language for online help Program 1877
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 1795
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 1796
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 1796
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 1796
any time
101404 Format: Selection menu
(NOTHING)
MP7365.6 Input: see MP_background
LEVEL3
Default: light_blue
597110-01

September 2015 4.11 List of machine parameters 639


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
channel4 Color for channel 4 Change at 1796
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 1797
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 1797
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 1798
any time
101408 Format: Selection menu
(NOTHING)
Input: see MP_background
LEVEL3
Default: black
597110-01
select Color for selected channel Change at 1798
any time
101409 Format: Selection menu
(NOTHING)
MP7365.3 Input: see MP_background
LEVEL3
Default: red
597110-01
grid Color for graduation Change at 1798
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 1798
any time
101411 Format: Selection menu
(NOTHING)
MP7365.2 Input: see MP_background
LEVEL3
Default: really_dark_gray
597110-01

640 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgStartupData
Behavior during control startup
powerInterruptMsg Acknowledge the Power interrupted message Change at 2077
any time
101501 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 TRUE
Start-up is not continued until the message has 597110-01
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 1909
any time
124101 Format: Selection menu
(NOTHING)
Input:
LEVEL1
 Available
The user can select the Retraction operating 597110-08
mode during control start-up.
 Prohibited
The Retraction operating mode is not available
to the user.
Default: Prohibited

September 2015 4.11 List of machine parameters 641


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgShutDown
Behavior when exiting control operation
shutdownOnConfig Behavior when RESET configuration data is Change at 2084
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 2084
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 2085
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

642 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
shutdownOnOem Behavior when PLC Module 9279 is called Change at 2085
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 2086
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, optional parameter
powerOffDevice Bus address of the HSCI device Change at 2086
any time
101608 System with HSCI interface:
(NOTHING)
For an HSCI system, enter the bus address of the
(optional parameter)
HSCI PL or HSCI MB in the parameter LEVEL3
MP_powerOffDevice, e.g. the bus address of a
597110-04
PL 62xx, UEC 11x or MB 7xx at which the control
is to set a PLC output after shutdown.
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 2086
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, optional parameter

September 2015 4.11 List of machine parameters 643


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
powerOffPort PLC output to be set after shutdown Change at 2087
any time
101606 System with HSCI interface:
(NOTHING)
See the 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, optional parameter
powerOffDelay Delay time until the PLC output is set Change at 2087
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, optional parameter
timeoutShutdownSK Delay time until shutdown dialog is displayed Change at 2087
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 2088
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

644 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
rebootOption Setting for the "Shut down control" dialog Change at 2088
any time
101612 This parameter specifies whether, in the "Shut
(NOTHING)
down control" dialog, the control offers the user
(optional parameter)
the restart option for the NC software without a LEVEL3
complete shutdown of the operating system. The
597110-09
behavior defined in MP_shutdownOnUser is
always in effect.
Format: Selection menu
Input: see MP_rebootOption
Default: TERMINATE

September 2015 4.11 List of machine parameters 645


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgTable
Display properties of the table editor
tableView Selection of various table views Change at 1980
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 regulation
 TABLIST: List
 TABLISTPICT: List + graphics
 TABFORM: Fillable form
 TABFORMPICT: Form + graphics
 TABFORMTEXT: Form + text
 TABLEPROP: Table properties
MP_signCorrNominalVal
 TABLESELECT: Select from table
Default: TABLIST
enableNotify Switch for table change notification Change at 1981
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
dispComplCol Display mode of column at right margin Change at 1981
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

646 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 1862
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
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 1863
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

September 2015 4.11 List of machine parameters 647


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgGraphics
Settings for 3-D simulation graphics
modelType Model type of the 3-D simulation graphics Change at 1865
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
modelQuality Model quality of the 3-D simulation graphics Change at 1865
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

648 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgSoftkeys (optional parameter)
Settings for soft-key rows
leftSoftkeyRow Behavior of the left vertical OEM soft-key row Change at 1864
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
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

September 2015 4.11 List of machine parameters 649


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgPositionDisplay (optional parameter)
Settings for the digital readout
progToolCallDL Position display with TOOL CALL DL Pgm run is –
locked
124501 Specifies the position display with TOOL CALL
(RUN)
DL.
LEVEL1
Format: Selection menu
597110-09
Input:
 As Tool Length
Default behavior of the TNC 640. The oversize
DL programmed in the TOOL CALL block is
considered 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
considered in the nominal position display. It is
therefore effective as workpiece oversize.
CfgKeyboard
Assignment of orange axis selection 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 1868
panel run is
101804
locked
Format: String
MP410.3 (PLC/RUN)
Input: e.g. "C"
(optional parameter) LEVEL1
Default: C

650 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
axisKeyV Designation of axis V on the operating panel PLC/Pgm 1868
run is
101805 Format: String
locked
MP410.4 Input: e.g. "B" (PLC/RUN)
(optional parameter) Default: B LEVEL1
presetWithAxisKey Workpiece presetting through axis keys PLC/Pgm 1985
run is
101806 Format: Selection menu
locked
MP7296 Input: (PLC/RUN)
(optional parameter)  TRUE LEVEL1
The datum is set with the SET DATUM soft key
and by pressing an orange axis key.
 FALSE
The datum is only set 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;
Paths of files that can be created and changed by the OEM.
oemTable Path for OEM tables Shut down 2499
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 557
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...10]
Input: Name of the text file
Max. 80 character
cycleMainTreeFile Path and name for the OEM cycle file (.CDF) Shut down 2418
control
102003 Format: String
(RESET)
(optional parameter) Input: Path and name, max. 260
LEVEL3
characters
597110-01

September 2015 4.11 List of machine parameters 651


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
cycleSubTreeFiles List of path/names of user cycle files (.CDF) Shut down 2418
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...10] 597110-01
Input: Path and name, max. 260
characters
oemCycle Path for OEM cycles Shut down 2418
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 2409
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...10]
Input: String, max. 260 characters
oemLogo Path for optional OEM logo Shut down 1863
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

652 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 run is 2410
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...10]
Input: String, max. 260 characters
fn16DefaultPath Default output path for the function FN16: F- Pgm run is 1887
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 is 1887
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

September 2015 4.11 List of machine parameters 653


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgPlcPath
Path/name of most recently compiled PLC program files
mainPgm Path/name of the PLC main program Change at 2415
any time
102301 Format: String
(NOTHING)
Input: Path and name, max. 260
LEVEL2
characters
pwmPgm Path/name of the PLC commissioning Change at 2415
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 2415
(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 2415
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

654 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
fn14ErrorText Name of the OEM text file for FN14 error Change at 2416
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
dialog Name of text file for PLC dialogs Change at 2416
any time
102305 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
softkeyProject Path/name of project file for PLC soft keys Change at 2416
(*.XRS) any time
102306
(NOTHING)
Format: String
LEVEL2
Input: Path and name, max. 260
characters
compCfgFile Path/name of configuration file for PLC Change at 2417
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

September 2015 4.11 List of machine parameters 655


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
keymapFile Path/name of configuration file for keyboard Change at 2417
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 2417
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
pythonScripts Python scripts to be started Change at 2417
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...8]
Input: Key name of max. 18 characters

656 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2500
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 2501
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 1913
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

September 2015 4.11 List of machine parameters 657


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgOemScript
Path for a script file
The key name is a symbolic name which can be used to call the script.
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 550
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 with max. 40 paths,
each with up to 260 characters
CfgPortionFiles
Path to an MP subfile to be loaded already during start-up. These subfiles may also include RESET
parameters, but the files cannot be unloaded at run time.
The key name is a symbolic name that can be used to call the MP subfile.
portionFiles Path to an MP subfile to be loaded during start-up Shut down 571
of the control. control
125401
(RESET)
The data objects in this list will be loaded in
alphabetical order, as specified by the key names. LEVEL3
Format: String 597110-10
Input: List with max. 40 paths,
each with up to 260 characters

658 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgBinFileCache
Settings for the binary saving of NC programs 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 1888
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 1889
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
freeSpace Maximum available memory for cache files Change at 1889
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: Default: 30 [MB]

September 2015 4.11 List of machine parameters 659


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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.
unitOfMeasure Unit of measure for length (metric/inch) Change at 2474
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 measurement
Default: UNIT_INDEPENDENT

660 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
standardEditor Standard editor used for this file Change at 2474
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 2474
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 in [kByte]
Default: 100
alternateEditor Alternate editor used for files starting from the Change at 2475
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
softkeyIcon Path/name of a graphic file for a graphic soft Change at 2475
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 character
softkeyIconVariant Variant number of the soft-key icon Change at 2475
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

September 2015 4.11 List of machine parameters 661


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
protect Disable file types Change at 2476
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
Locks the SELECT TYPE soft key for selection of
the file type.
 LOCK_FILETYPE
Lock file types from editing
 LOCK_ALL
Locks the SELECT TYPE soft key for selection of
the file type and locks the file type to prevent
editing.
Default: LOCK_OFF
freeDefinableTable File type is a freely definable table Change at 2476
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

662 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 1891
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
 LEVEL2
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 2460
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

September 2015 4.11 List of machine parameters 663


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
trackApiState Automatic tracking of the active M functions Change at 2461
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 API 3.0 symbolic
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 2461
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
delete the M functions from the list of active M
functions.
Default: FALSE

664 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
apiErrorReaction Reaction to unexpected error in a PLC module Change at 2462
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 1950
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 character
notifyWarning Symbolic name or the number of a marker Change at 1950
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 character
notifyError Symbolic name or the number of a marker Change at 1950
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 character

September 2015 4.11 List of machine parameters 665


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2369
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 character
iocOption Option data for IOC hardware (HSCI, Shut down 2370
PROFIBUS) control
103403
(RESET)
By inserting "–" in front of the name of the option,
it can be disabled. LEVEL3
Format: List [0...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 1155
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 2192
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 2192
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

666 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
overrideDelta Compensation for thermal noise in override Change at 2193
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 2193
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

September 2015 4.11 List of machine parameters 667


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgPlcTimer
Default values for PLC timers and counters
Changes do not become effective until the PLC program has been restarted.
Changes made to HEIDENHAIN time components (from 597110-10; only MP_unit and MP_value are
relevant) are transferred at runtime without requiring a restart of the control. The preset times can be
overwritten by the PLC program at any time.
[Key name of the PLC timer or counter]
run Process marker for the timer or counter Program 2382
run is
103503 Identifies the timer or counter, for which the
locked
respectively configured time applies.
(optional parameter) (RUN)
Timers: 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 2382
run is
103504 Identifies the start marker for the timer or counter.
locked
(optional parameter) Timers: 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
itself. The PLCdesign development environment
uses it for the automatic generation of PLC
definition files.
Format: String
Input: Start marker, max. 80 characters
gate Release marker for counters Program 2383
run is
103505 Identifies the enabling marker (gate marker) for
locked
the corresponding counter.
(optional parameter) (RUN)
Gate marker:C96 to C143
LEVEL3
This parameter is not evaluated by the control
597110-03
itself. The PLCdesign development environment
uses it for the automatic generation of PLC
definition files.
Format: String
Input: Gate marker, max. 80 characters

668 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
unit Time unit for PLC timers, counters, and Program 2383
HEIDENHAIN time components run is 2395
103501
locked
Format: Selection menu
(RUN)
Input:
LEVEL3
 SECONDS
Input in seconds [s] 597110-01
 PLC_CYCLES
Input in number of PLC cycles
Default: SECONDS
value Defaults for PLC timers, counters, and Program 2383
HEIDENHAIN time components run is 2395
103502
locked
Format: List [0...99]
MP4110 / 4120 (RUN)
Input: 0 to 1 000 000 [s or PLC cycles]
LEVEL3
Default: 0 [seconds or PLC cycles]
597110-01
CfgPlcDeferCutoff
Delays switched-off PLC output;
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

September 2015 4.11 List of machine parameters 669


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2396
run is
103701 Format: List [0...4]
locked
MP4130 Input: 0 to 9999 (RUN)
Default: 0 LEVEL3
597110-01
significance Activation criteria for fast PLC inputs Program 2397
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 2397
run is
103703 Name or number of the operand that is set
locked
through the fast PLC input.
(optional parameter) (RUN)
Format: List [0...4]
LEVEL3
Input: String, max. 24 characters
CfgPlcTechnology
PLC markers reserved for technology data – do not define;
Definition of a range of up to 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

670 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2422
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 9?999
Default: 0
max Number of the highest M function Shut down 2422
control
103902 Code of the last (greatest) M function written 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 9?999
Default: 0
signal Symbolic name or number of the PLC marker Shut down 2423
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 entry:
The data connected with the output of the strobe
is 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 2423
that is set for acknowledging the strobe control
103904
(RESET)
No entry:
(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

September 2015 4.11 List of machine parameters 671


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
code Symbolic name or number of the PLC word Shut down 2424
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_Funktion_M10
Format: String
Input: PLC operand, max. 80 characters
data Symbolic name or number of the PLC word Shut down 2424
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
revoke Numbers of M functions whose effect will be Shut down 2424
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 function M5
Calling function M5 cancels the effect of functions
M3 and M4. 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...10]
Input: 0 to 9?999

672 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
split The M function is split into the specified M Shut down 2425
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
track Automatic tracking of the active M functions Shut down 2425
control
103914 The PLC program normally needs to use the
(RESET)
Module 9088 to track the status of the active M
(optional parameter)
function. Set this parameter to TRUE if the PLC LEVEL3
run-time system is to implement the status
597110-03
automatically.
Format: Selection menu
Input:
 TRUE
The status of the active M function is
implemented automatically, depending on the
MP_trackMState parameter (CfgPlcOptions).
 FALSE
The status of the active M function must be
tracked by calling Module 9088.

September 2015 4.11 List of machine parameters 673


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
singular Function is output in a separate strobe Shut down 2426
control
103909 Use the parameter MP_singular to prevent the
(RESET)
function from being output in a strobe together
(optional parameter)
with other functions. If several M, S, T functions LEVEL3
are 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 2426
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
blockSearch Code output also during block scan Shut down 2426
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

674 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
sync Synchronization of function with the NC Shut down 2426
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
interpretation. 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 2428
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 character
noNested Nested execution of M-function macros Shut down 2428
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.

September 2015 4.11 List of machine parameters 675


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgPlcSStrobe
Settings for the S function for 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 2437
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...2
Default: 0
condition Condition for sending the strobe to the PLC Shut down 2436
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.

676 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
signal Symbolic name or number of the PLC marker Shut down 2436
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 entry:
The data connected with the output of the strobe
is 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 2436
that is set for acknowledging the strobe control
104003
(RESET)
No entry:
(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 2437
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 entry: 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 2438
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 entry: 597110-01
The spindle speed is not monitored.
Format: String
Input: PLC operand, max. 80 characters

September 2015 4.11 List of machine parameters 677


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
cuttingSpeed Symbolic name or number of the PLC word for Shut down 2438
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 entry: 597110-01
The constant surface speed cannot be read as a
numerical value.
Format: String
Input: PLC operand, max. 80 characters
spindleMode Symbolic name or the number of a word Shut down 2438
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 surface speed (VCONST ON)
Depending on the value of the word marker, the
PLC evaluates either the content of
MP_spindleSpeed or MP_cuttingSpeed.
No entry:
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 2442
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 entry: 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 2442
(operating mode 0) control
104008
(RESET)
Format: List [0...99]
(optional parameter)
LEVEL3
Input: Key name of parameter sets
(operating mode 0) 597110-02

678 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
gearSpeed1 Key names of parameter sets for gear ranges Shut down 2442
(operating mode 1) control
104009
(RESET)
Format: List [0...9]
(optional parameter)
LEVEL3
Input: Key name of parameter sets
(operating mode 1) 597110-02
gearStop Switch off the spindle when the gear range is Shut down 2442
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 2445
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 2439
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...19]
Input: 0 to 9999

September 2015 4.11 List of machine parameters 679


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
blockSearch Function output also during block scan Shut down 2439
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
sync Synchronization of function with the NC Shut down 2444
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
interpretation. 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

680 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
syncGear Synchronization of function with the NC if the Shut down 2444
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
interpretation. 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 for T functions (ToolCall and ToolDef);
Output of T strobe from NC to PLC:
Specifies the treatment of the T function during NC program run and the mapping to the PLC markers.
[Key name of the T strobe]
e.g. ToolCall, ToolDef, etc.
type Type of T function Shut down 2450
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

September 2015 4.11 List of machine parameters 681


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
condition Condition for sending the strobe to the PLC Shut down 2450
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 2450
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 entry:
The data connected with the output of the strobe
is 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 2451
that is set for acknowledging the strobe control
104104
(RESET)
No entry:
(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 2451
transmitting the tool number control
104105
(RESET)
No entry:
(optional parameter)
The tool number cannot be read as a numerical LEVEL3
value.
597110-01
Format: String
Input: PLC operand, max. 80 characters

682 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
toolIndex Symbolic name or number of the PLC word for Shut down 2451
transmitting the tool index control
104106
(RESET)
No entry:
(optional parameter)
The index cannot be read as a numerical value. LEVEL3
Input: String of max. 24 characters 597110-01
toolMagazine Symbolic name or number of the PLC word for Shut down 2451
transmitting the magazine number of the tool control
104107
(RESET)
No entry:
(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 2452
transmitting the pocket number of the tool control
104108
(RESET)
No entry:
(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 2452
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 2452
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

September 2015 4.11 List of machine parameters 683


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
internalTool Symbolic name or number of the PLC marker Shut down 2453
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
specialTool Symbolic name or number of the PLC marker Shut down 2453
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 2453
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 entry:
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 2454
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 entry:
The pocket number cannot be read as a numerical
value.
Format: String
Input: PLC operand, max. 80 characters

684 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
revoke Numbers of functions whose effect will be Shut down 2454
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...19]
Input: 0 to 9999
blockSearch Code output also during block scan Shut down 2455
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

September 2015 4.11 List of machine parameters 685


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
sync Synchronization of function with the NC Shut down 2456
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
interpretation. 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

686 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgPlcStrobeAlias
Implementation via 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 2458
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 2459
control
104202 Number of the M function to which the control-
(RESET)
dependent function is mapped.
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 9999
Default: 0

September 2015 4.11 List of machine parameters 687


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
mOffset Transferred M code is offset Shut down 2459
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 2252
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 2252
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 2252
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 2252
control
118404 Format: Selection menu with scripts from
(RESET)
CfgOemScript
(optional parameter)
LEVEL3
Input: Key name of a tool change
sequence

688 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
sequTextText Unloading and loading an external tool Shut down 2252
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 2252
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 2252
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 2252
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 2252
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 2252
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 2252
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

September 2015 4.11 List of machine parameters 689


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
sequTintTint Unloading an internal and loading an external Shut down 2252
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 2252
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 2252
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 2252
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 2252
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 2252
Tool-change sequence for calling an internal control
118417
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

690 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2252
tool to be loaded is to be taken control
118501
(RESET)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 1 to 9?999
unloadTo Number of the tool magazine in which a Shut down 2252
pocket is reserved for the tool to be unloaded control
118502
(RESET)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 1 to 9?999
sequT0Tint (see CfgToolChange) Shut down 2252
control
118503
(RESET)
(optional parameter)
LEVEL3
sequT0TintS (see CfgToolChange) Shut down 2252
control
118504
(RESET)
(optional parameter)
LEVEL3
sequTextTint (see CfgToolChange) Shut down 2252
control
118505
(RESET)
(optional parameter)
LEVEL3
sequTextTintS (see CfgToolChange) Shut down 2252
control
118506
(RESET)
LEVEL3
sequTintT0 (see CfgToolChange) Shut down 2252
control
118507
(RESET)
(optional parameter)
LEVEL3
sequTintT0S (see CfgToolChange) Shut down 2252
control
118508
(RESET)
(optional parameter)
LEVEL3
sequTintText (see CfgToolChange) Shut down 2252
control
118509
(RESET)
(optional parameter)
LEVEL3

September 2015 4.11 List of machine parameters 691


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
sequTintTextS (see CfgToolChange) Shut down 2252
control
118510
(RESET)
(optional parameter)
LEVEL3
sequTintTint (see CfgToolChange) Shut down 2252
control
118511
(RESET)
(optional parameter)
LEVEL3
sequTintTintS (see CfgToolChange) Shut down 2252
control
118512
(RESET)
(optional parameter)
LEVEL3
sequTintTintF (see CfgToolChange) Shut down 2252
control
118513
(RESET)
(optional parameter)
LEVEL3
squTintTintSF (see CfgToolChange) Shut down 2252
control
118514
(RESET)
(optional parameter)
LEVEL3
sequTint (see CfgToolChange) Shut down 2252
control
118515
(RESET)
(optional parameter)
LEVEL3

692 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 of the axis Program 985
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 985
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

September 2015 4.11 List of machine parameters 693


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgPlcOverrideDev
Configuration of sources for override values;
Specify 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 2183
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 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 an API signal
from the spindle or the NC channel.
If no value is transferred 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 2184
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
1st to 4th machine operating panel
 HR1:
Active handwheel
Default: No value

694 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
mode Evaluation of override values Change at 2184
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 values of the override device are
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 2185
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...63]
Input: 0.00 to 100.00 [%]

September 2015 4.11 List of machine parameters 695


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgPlc OverrideS
Configuration of the spindle override
[Key name of spindle]
e.g. S, spindle, etc.
Minimum Minimum value for override Change at 2186
any time
104401 Format: Numerical value
(NOTHING)
Input: 0 to 100 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 0
Maximum Maximum value for override Change at 2186
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 2187
any time
104403 Format: List [0...3]
(NOTHING)
Input: Device name from
LEVEL3
CfgOverrideDev
597110-01
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 2593
(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 2593
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

696 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2593
run is
104601 Format: List [0...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 2593
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
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 2593
(strings)
104901 LEVEL3
Format: List [0...9]
(optional parameter) 597110-01
Input: String of max. 100 characters
ignorePlc Do not copy data object into the PLC image NOTHING 2593
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

September 2015 4.11 List of machine parameters 697


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2593
(position) run is
104701
locked
Format: List [0...99]
LEVEL3
Input: -200 000 to +200 000
Max. 4 decimal places
ignorePlc Do not copy data object into the PLC image PLC/Pgm 2593
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

698 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 soft key in the Program Run operating
mode
path Path/name of the Python script Change at 2265
any time
120401 The specified Python script is started when you
(NOTHING)
press the soft key given in the key name.
LEVEL3
Format: String
597110-05
Input: Path/name of the Python script
Max. 260 character
Default: %SYS%\Python\tool\Client.py
jobName Name of the Python application Change at 2265
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 character
Default: tool_pockt, tool_tool oder
tool_usage
parameter Call parameters for the Python script Change at 2265
any time
120403 Specifies expanded call parameters for the Python
(NOTHING)
script.
LEVEL3
Format: String
597110-05
Input: Max. 127 character
Default: pocket, tool, or last

September 2015 4.11 List of machine parameters 699


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
memLimit Memory limit for the Python application Change at 2265
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 in [MB]
Default: 15
runControl Process monitoring Change at 2266
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 Activate/deactivate soft-key Change at 2266
superimpositioning any time
120406
(NOTHING)
Setting this parameter enables settings from
(optional parameter)
default soft key superimpositionings to be LEVEL3
overwritten or modified with the same key name.
597110-09
The parameter activates or deactivates a soft key
superimpositioning. If the superimpositioning is
deactivated it has no effect.
Format: Selection menu
Input:
 TRUE
Soft key superimpositioning activated.
 FALSE
Soft key superimpositioning deactivated.

700 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2464
any time
118303 The specified Python script is started when you
(NOTHING)
press the soft key given in the key name.
(optional parameter)
LEVEL3
Format: String
597110-05
Input: Path/name of the Python script
Max. 260 character
jobName Name of the Python application Change at 2464
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 character
parameter Call parameters for the Python script Change at 2464
any time
118301 Specifies expanded call parameters for the Python
(NOTHING)
script.
(optional parameter)
LEVEL3
Format: String
597110-05
Input: Max. 127 character
memLimit Memory limit for the Python application Change at 2464
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 in [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...3]
Input: Number of environment variable

September 2015 4.11 List of machine parameters 701


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 environment 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 2197
any time
105001 Format: Bit-coded 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 2197
857282 any time
105002
(NOTHING)
Format: Bit-coded 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

702 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
resetNcTimes Reset NC operating times with code number Change at 2197
857282 any time
105003
(NOTHING)
Format: Bit-coded 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
textNumber Dialogs for PLC operating times Change at 2198
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...19]
Input: 0 to 2147483647
Default: 0
CfgSafety (optional parameter)
Functional safety (FS) settings;
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 character
observe the Technical
Default: No value
Manual for Functional Safety
FS).

September 2015 4.11 List of machine parameters 703


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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
dataSetApproved 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).

704 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
permitSom4 Enabling of operating mode 4 Program –
run is
105113 Permissive button of the machine operating panel
locked
only for spindle 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

September 2015 4.11 List of machine parameters 705


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
noSS2onOpModChange No SS2 on switchover of the control operating Program –
mode run is
105138
locked
No SS2 stop reaction is triggered during a
MP560 (RUN)
switchover from the El. Handwheel or Traverse
(only evaluated in systems Reference Points operating mode 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 operating
mode El. Handwheel or Traverse reference
points
 off
SS2 on switchover from/to the operating mode
El. Handwheel or Traverse reference points
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

706 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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

September 2015 4.11 List of machine parameters 707


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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

708 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 Functional Safety (FS) settings;
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 character
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

September 2015 4.11 List of machine parameters 709


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
dataSetApproved 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 Specify the run times of the timers (max. 16) for
locked
the SPLC program here.
MP535 (RUN)
Format: List [0...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 for SPLC program's intermediate Program –
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).

710 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
splcPgmCrcMc MC checksum for SPLC program's binary code Program –
run is
122807 Format: Numerical value
locked
MP691.1 Input: 0 to 4 294 967 295 (RUN)
(optional parameter) Default: 0 LEVEL3
(only evaluated in systems 597110-05
with functional safety FS—
observe the Technical
Manual for Functional Safety
FS).
splcPgmCrcCc CC checksum for SPLC program's binary code Program –
run is
122808 Format: Numerical value
locked
MP691.2 Input: 0 to 4 294 967 295 (RUN)
(optional parameter) Default: 0 LEVEL3
(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...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

September 2015 4.11 List of machine parameters 711


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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...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 The supply must come over –TEST.A or 597110-05
with functional safety FS— –TEST.B of the PL 6xxx FS at which the input is
observe the Technical located.
Manual for Functional Safety
Format: List [0...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]

712 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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...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

September 2015 4.11 List of machine parameters 713


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 Manual 597110-05
for Functional Safety FS). Default: 0
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-coded value 597110-05
with functional safety FS—
observe the Technical Manual Input: %xxxxxxxx
for Functional Safety FS).
Default: 0
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 after SS2 in SOS

Default: DEFAULT

714 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2250
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:
Flexible pocket coding
 FALSE
Fixed-pocket coding
Default: FALSE
toolDefMode Behavior of the tool change cycles in TOOL DEF Shut down 2249
control
202202 Format: Selection menu
(RESET)
Input:
LEVEL1
 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

September 2015 4.11 List of machine parameters 715


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
modifyToolTblFrom Start: Modification of the tool table Shut down 2249
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 2250
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
M101BlockTolerance Delay of the tool change time point with M101 Shut down 2222
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 2243
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

716 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
logFilePath Path for ASCII file with the results of the last Program 2243
tool usage test run is
118702
locked
Format: String
(optional parameter) (RUN)
Input: Max. 500 character
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 2244
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 2244
run is
118704 Format: Numerical value
locked
MP7485 Input: 0 to 100 [%] (RUN)
Default: 10 LEVEL3
597110-05
allowToolDefCall Tool name/number for TOOL CALL and Shut down 2226
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 tool number are permissible
 ByNameOnly
Only tool name is permissible
 ByNrOnly
Only tool number is permissible
Default: ByNameAndNr

September 2015 4.11 List of machine parameters 717


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
seekNextTool Tool name/number for replacement tool Shut down 2226
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 tool numbers are considered
 ByNrOnly
Only tool numbers are considered
Default: ByNameAndNr
magazineSeekList Search sequence in tool magazines Shut down 2227
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...7]
Input: 0 to 7 (magazine number)
–1: Cancel
Default: -1

718 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
PalletSettings
Settings for pallet machining
CfgPalletBehaviour
Specifies the behavior of the system cycle for pallet machining
stopAt Specifies when the pallet processing stops Program 2139
run is
202101 Format: Selection menu
locked
Input: (RUN)
 Nowhere LEVEL1
Pallet processing is never stopped
 EveryRecord
Pallet processing is stopped after every line
 EveryPallet
Pallet processing is stopped after every pallet
 EndOfTable
Pallet processing is stopped at the end of the
pallet table
Default: EndOfTable
editTableWhileRun Specifies whether the current pallet table is Program 2139
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

September 2015 4.11 List of machine parameters 719


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
EditorSettings
Settings for the Programming operating mode
CfgEditorSettings
Settings for the NC editor
createBackup Generate backup file Change at 1881
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 back-up file *.bak
Default: TRUE
deleteBack Behavior of the cursor after deletion of lines Change at 1882
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 1882
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

720 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
lineBreak Line break on NC blocks with more than one Change at 1882
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 Activating help graphics Change at 1883
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 1883
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)

September 2015 4.11 List of machine parameters 721


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
warningAtDel Confirmation request when deleting an NC Change at 1884
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 1884
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 1885
increment any time
105409
(NOTHING)
Format: Numerical value
MP7220
LEVEL1
Input: 0 to 250
(optional parameter)
597110-04
Default: 10
useProgAxes Specify programmable axes Shut down 1886
control
105410 Format: Selection menu
(RESET)
(optional parameter) Input:
LEVEL1
 TRUE
Use the axis configuration defined in parameter
CfgChannelAxes/progAxis (200301).
On machines with traverse range switchover,
the editor offers all axes that are included in at
least one kinematic model of the machine.
 FALSE
Use the default axis configuration
XYZABCUVW.
Default: FALSE

722 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
enableStraightCut Allow or lock paraxial positioning blocks Change at 1886
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)
instead of a paraxial positioning block.
Default: No value (= behavior as for TRUE)
maxLineCommandSrch Number of lines for search for same syntax Change at 1885
elements any time
105412
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL1
Input: 500 to 400 000
597110-04
Default: 20 000

September 2015 4.11 List of machine parameters 723


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
TableSettings
Description of 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 2477
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...79]
597110-01
Input: Column name (max. 18 characters)
primaryKey Primary key (column name) for sorting Change at 2478
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)
foreignKey Foreign key for this table Change at 2478
any time
105503 Specify a character string for each list item:
(NOTHING)
<column name> <blank> <referential action>
(optional parameter)
LEVEL3
Valid values for <referential action> are:
 NO ACTION
 RESTRICT
 SET NULL
 SET DEFAULT
 INHERIT
Format: List [0...79]
Input: String of max. 40 characters
modificationKey Key name of the column in which the Change at 2478
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 character

724 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
passwordKey Column with password checksum of a data set Change at 2479
any time
105505 Name of the column containing the password and
(NOTHING)
checksum for protecting a dataset from undesired
(optional parameter)
modifications. This column must be TEXT data LEVEL3
type and must be at least 15 characters long.
597110-09
Format: String
Input: <Extension><Column name>
Max. 18 character
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].[Name of column]
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 2481
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 64
(column width: max. 64 characters)
Default: 2

September 2015 4.11 List of machine parameters 725


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
unit Data type of values in the column Program 2482
run is
105602 Format: Selection menu
locked
Input: (RUN)
 TEXT LEVEL3
Text input
 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 decimal point
 BOOL
Logical value
 INDEX
Index with subindexes
 TSTAMP
Time/date
Default: TEXT

726 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
initial Value automatically entered in a column when Program 2483
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 row is inserted, this
value is assigned as a default to the column.
Default: No value
minimum Smallest permissible input value Program 2484
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 2484 apply.
LEVEL3
Format: String
Input: Max. 50 characters
Default: No value
maximum Largest permissible input value Program 2484
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 2484 apply.
LEVEL3
Format: String
Input: Max. 50 characters
Default: No value
charset Permissible number of characters for columns Program 2484
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

September 2015 4.11 List of machine parameters 727


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
unique Specifies whether only unambiguous values Program 2485
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 2485
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 2486
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

728 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
noPasswordProtect Permit modification despite password Program 2486
protection run is
105610
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL3
 TRUE
Value in the column can also be modified 597110-09
without entering the password of this line.
 FALSE
Value can only be modified after entering the
password.
Default: No value

September 2015 4.11 List of machine parameters 729


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2491
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 of max. 40 characters
Default: No value
text Language-sensitive text Change at 2492
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 2492
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
iconVariant Number of a soft-key variant Change at 2492
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

730 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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...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
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 character

September 2015 4.11 List of machine parameters 731


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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]
You must enter the names from CfgSqlProperties/bindings as key names.
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...79]
LEVEL3
Input: String, max. 18 characters
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]
You must use the names from CfgTableBinding/binds as key names.
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 character

732 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
id System data ID (group number) RUN –
105902 Here id=0 means a binding with Q-parameter. If LEVEL3
no id is entered, no actual binding is generated,
(optional parameter)
and the interpreter is simply instructed to read in
the respective column description during the
configuration phase. Thus, this does not have 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
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 CfgTableSelect/filter.
softkeyText
Language-sensitive description of a soft key for activating the table filter;
use the text name from the text resource file (for language-dependent texts), or use texts that are
understood in all languages.
dialogRes Name of a text Change at 2491
any time
106001 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
597110-02

September 2015 4.11 List of machine parameters 733


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
text Language-sensitive text Change at 2492
any time
106001 See entry under CfgColumnText/dialogText
(NOTHING)
(optional parameter)
LEVEL3
597110-02
softkeyIcon Path/name of a soft key icon Change at 2492
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 2492
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
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 character
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...49]
Input: String, max. 50 characters
Default: No value

734 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 provided that
helpColumn and helpValue contain
corresponding entries.
Format: List [0...49]
Input: String, max. 80 characters
Default: No value
select Selected column names of table Change at 2490
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
exclude Reverse logic of column selection in MP_select Change at 2491
any time
106010 Format: Selection menu
(NOTHING)
(optional parameter) Input:
LEVEL3
 TRUE
The column selection made in MP_select is 597110-02
changed 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 2491
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

September 2015 4.11 List of machine parameters 735


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
option Further options for the display of the table Change at 2493
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 2493
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...49]
597110-06
Input: String, max. 50 characters
Default: No value
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 2494
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 2495
INCH format any time
106103
(NOTHING)
Format: String
(optional parameter)
LEVEL3
Input: Max. 80 characters
597110-05
Default: No value

736 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
enableReset Reset current table? Change at 2495
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
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].[Name of column]
e.g. 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 character
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 and LEVEL3
NAME.
Format: String
Input: Max. 50 character
Default: No value

September 2015 4.11 List of machine parameters 737


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 character
Default: No value
CfgTableUpdateList
Tables 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 its 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 50 entries are supported.
Format: String
Input: Synonym or path/name
of the table to be checked

738 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgConfigSettings
Settings for the configuration editor (Machine Parameter Programming mode of operation)
undoListSize Specifies the number of entries in the change Change at 509
list any time
106501
(NOTHING)
Every 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
advisable)
Default: 20
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 509
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 526
any time
106504 Format: Selection menu
(NOTHING)
Input:
LEVEL3
 TRUE
Hide write-protected configuration objects.
 FALSE
Display all configuration objects.
Default: TRUE

September 2015 4.11 List of machine parameters 739


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2772
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 2772
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 2773
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...2]
Input: String, max. 18 characters

740 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
baudRateLsv2 Data transfer rate for LSV2 communication in Change at 2773
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 2775
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

September 2015 4.11 List of machine parameters 741


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
protocol Communications protocol Change at 2775
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 2776
any time
106703 Format: Selection menu
(NOTHING)
MP5020 bit 0 Input:
LEVEL2
 7 bit:
7 data bits are transferred for each character
transferred.
 8 bit:
8 data bits are transferred for each character
transferred.
Default: 8 bits
parity Type of parity checking Change at 2776
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

742 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
stopBits Number of stop bits Change at 2777
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
flowControl Type of data-flow checking (handshake) Change at 2780
any time
106706 Format: Selection menu
(NOTHING)
MP5020 bit 2/3 Input:
LEVEL2
 NONE
No data-flow check. Handshake not active
 RTS_CTS
Hardware handshaking; transmission stop is
active through RTS
 XON_XOFF
Software handshaking; transmission stop is
active through DC3 (XOFF)
Default: RTS_CTS
fileSystem File system for file operation via serial Change at 2780
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 Floppy Disk Unit
FE 401 B or FE 401 from prog.No. 230626-03 or
for communication with the HEIDENHAIN PC
software TNCserver.
Default: EXT

September 2015 4.11 List of machine parameters 743


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
bccAvoidCtrlChar Block Check Character (BCC) is not a control Change at 2781
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
rtsLow Idle state of the RTS line Change at 2782
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 reception of an ETX control Change at 2782
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 2792
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

744 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
host Network address or host name of the remote Change at 2793
service host any time
114602
(NOTHING)
Enter the network address here 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
port Port number of the remote service host Change at 2793
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 2793
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 2793
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 2794
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]

September 2015 4.11 List of machine parameters 745


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
serverIp Network address or host name of the server Change at 2794
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
serverIpMask Subnet mask of the server network Change at 2794
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 2791
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

746 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 1894
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
hideOriginal Lock previous HEIDENHAIN code number Change at 1894
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

September 2015 4.11 List of machine parameters 747


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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]
funcList List of function names (= key names) that are Shut down 554
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...199]
Input: max. 18 characters
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 555
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 is run in the background.
Default: FALSE
skPos Position of the soft key in the 3rd menu bar Shut down 555
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

748 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
buttonText
Soft key text;
Enter either a language-neutral text or the name of a text from the 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 555
control
107103 See entry under CfgColumnText/dialogText
(RESET)
LEVEL3
text Language-sensitive text Shut down 555
control
107103 See entry under CfgColumnText/dialogText
(RESET)
LEVEL3
buttonImage Image for graphic soft key Shut down 556
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
funcKey Key name of the function being activated Shut down 556
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 556
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

September 2015 4.11 List of machine parameters 749


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 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 557
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 558
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
readOnly Open the configuration editor with read- Change at 557
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)

750 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
Versions
Software version of the PLC, software type and version of the NC
CfgPlcVersion
PLC program version
plcVersion PLC software version Change at 2419
any time
107301 Format: String
(NOTHING)
Input: Software version (max. 64 characters)
LEVEL2
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

September 2015 4.11 List of machine parameters 751


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
ProbeSettings
Touch-probe configuration
CfgProbes
Specifies the behavior of the TNC 640 during probing.
activeTT Active TT tool touch probe Change at 2299
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 2293
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 2293
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 effective 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
With the parameter, you specify the type of
(reserved parameter)
interface for the connected transmitter/receiver
unit.
Format: Selection menu
Input:
 TRUE
Transceiver unit with EnDat interface
 FALSE
Transceiver unit without EnDat interface
Default: FALSE

752 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 to find the stylus center Allowed in 2297
strobe
122501 Enter the number of the M function for spindle
(SYNC)
orientation by the PLC.
MP6160
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 2297
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
CfgTT
Configuration of tool measurement with the TT tool touch probe
Enter any name for the TT tool touch probe as key name.
e.g. TT140_1
The parameter CfgProbes/activeTT defines which tool touch probe is active.
type Type of tool touch probe used Program 2299
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

September 2015 4.11 List of machine parameters 753


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
port Input of the relevant tool touch probe Program 2299
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 2302
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
spindleOrientMode M function for spindle orientation Program 2303
run is
122704 Format: Numerical value
locked
MP6560 Input: -1 to 999 (RUN)
 –1 LEVEL1
Spindle orientation directly by the 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 by the PLC
Default: -1

754 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
probingRoutine Probing routine Program 2306
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 2303
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 2303
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 tool Program 2304
touch probe run is
122708
locked
Format: Numerical value
MP6550 (RUN)
Input: 10 to 300 000 [mm/min]
LEVEL1
Default: 600
597110-03
probingFeed Probing feed rate for tool measurement with Program 2308
non-rotating tool run is
122709
locked
Format: Numerical value
MP6520 (RUN)
Input: 1 to 30000 [mm/min]
LEVEL1
Default: 60
597110-03

September 2015 4.11 List of machine parameters 755


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
probingFeedCalc Calculation of the probing feed rate Program 2308
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 2308
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 2308
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 2309
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
measureTolerance1 Maximum permissible measuring error for Program 2309
tool measurement with rotating tool run is
122715
(first measurement error) locked
MP6510.0 (RUN)
Format: Numerical value
LEVEL1
Input: 0,001 to 0,999 [mm]
597110-03
Default: 0,005

756 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
measureTolerance2 Maximum permissible measuring error for Program 2309
tool measurement with rotating tool run is
122716
(second measurement 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 2310
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 2310
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
adaptToolTable Change the tool table during tool check and Program 2310
tool measurement run is
122719
locked
Format: Selection menu
MP6500, bit 11 (RUN)
Input:
LEVEL1
 AdaptNever
The tool table is not changed after tool check 597110-03
and tool measurement.
 AdaptOnBoth
The tool table is changed after tool check and
tool measurement.
 AdaptOnMeasure
The tool table is changed after tool
measurement.
Default: AdaptOnBoth

September 2015 4.11 List of machine parameters 757


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 2306
run is
114201 Format: List [0...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

758 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
stylusAxis Alignment of the probe contact of the TT tool Program 2305
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 2305
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 2304
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

September 2015 4.11 List of machine parameters 759


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
safetyDistStylus Safety zone around the probe contact of the Program 2304
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

760 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 is 1645
locked
120101 In the list of axis key names, select the key name
(RUN)
of the lathe spindle to which this configuration of
the unbalance measurement is to apply. LEVEL3
Format: Selection menu 597110-05
Input: Key names from CfgAxes/axisList
maxSpeed Maximum permissible speed for unbalance Pgm run is 1645
measurement locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: 0 to 1200 [rpm]
597110-05
Default: 400 [1/min]
radialPosition Default radial position at start of unbalance Pgm run is 1645
measurement locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: Position in [mm]
597110-05
Max.
value: 2 147 483 647
Default: 0
offset Offset for alignment of the rotary table Pgm run is 1646
locked
120101 Format: Numerical value
(RUN)
Input: Offset in [°]
LEVEL3
Max.
597110-05
value: 2 147 483 647
Default: 0
axisOfMeasure Axis for measured value capture Pgm run is 1646
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

September 2015 4.11 List of machine parameters 761


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
triggerMin Lower limit for trigger Pgm run is 1646
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 is 1647
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 is 1647
(following error) locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: Following error of the measuring axis
[mm] 597110-05
Default: No value
minUnbalance Minimum permissible unbalance deflection Pgm run is 1647
(following error) locked
120101
(RUN)
Format: Numerical value
LEVEL3
Input: Following error of the measuring axis
[mm] 597110-05
Default: No value
maxUnbalanceUsr Maximum permissible unbalance (user Pgm run is 1648
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 is 1648
locked
120101 Format: Numerical value
(RUN)
Input: Following error of measurement axis
LEVEL1
[mm]
597110-05
Default: 0

762 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
maxUnbalanceOem Maximum permissible unbalance (system monitor) Pgm run is 1647
locked
120101 Format: Numerical value
(RUN)
Input: Following error of measurement
LEVEL3
axis [mm]
597110-05
Default: 0
limitUnbalanceOem Maximum unbalance sum (system monitor) Pgm run is 1648
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 is 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 is 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 is 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 is 1650
locked
120101 Format: Numerical value
(RUN)
Input: –1: Spindle orientation by 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 is 1650
of the rotary table locked
120101
(RUN)
Format: String
LEVEL3
Input: Path/name of the *.ubc calibration table
Max. 80 character 597110-05

September 2015 4.11 List of machine parameters 763


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
timeOut Window for unbalance detection Pgm run is 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 1441
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 Activate/deactivate the PLC word marker Change at 1430
as an AFC input quantity 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
A spindle power of 50% corresponds to the value
500 to be entered 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 the PLC
Default: No value

764 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
CfgCameraApi (optional parameter, software option 136)
VSC (Visual Setup Control)
Camera-based monitoring of the clamping situation
openShutter Name of the PLC marker for opening and Change at 2313
closing the camera shutter any time
125601
(NOTHING)
Format: String
(optional parameter)
LEVEL3
Input: Max. 127 character
597110-10
Default: No value
openShutterAck Name of the PLC marker which provides Change at 2313
feedback to the NC about opening the camera any time
125602
shutter. (NOTHING)
(optional parameter)
Format: String LEVEL3
Input: Max. 127 character 597110-10
Default: No value

September 2015 4.11 List of machine parameters 765


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
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 1088.
[Arbitrary key name of the traverse range]
kinCompositeModel Kinematics to be activated from Allowed in 1090
CfgKinCompositeModel strobe
123901
(RUN)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-08
Key names of kinematics configured via
CfgKinCompositeModel. Enter the kinematics
to be selected when this traverse range is
activated.
Default: No value, parameter optional
axes Activate/deactivate axes, switch parameter Allowed in 1090
set strobe
123902
(RUN)
Format: List [0..23]
(optional parameter)
LEVEL3
Input:
597110-08
Up to 24 lists with parameters MP_axis,
MP_activation and MP_parSet 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 1091
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 1091
strobe
123902 Format: Selection menu
(RUN)
(optional parameter) Input:
LEVEL3
Specifies whether the axis in MP_axis is activated
597110-08
or deactivated with selection of this traverse
range:
 Activate
Axis is activated.
 Deactivate
Axis is deactivated.
Default: No value, parameter optional

766 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
parSet Parameter set Allowed in 1091
strobe
123902 Format: Selection menu
(RUN)
(optional parameter) Input:
LEVEL3
Key name of the parameter set from Axes/
597110-08
ParameterSets becoming effective on activation
of this traverse range for the axis specified in
MP_axes.
Default: No value, parameter optional
basisTrans Path of the preset table *.pr for this traverse Allowed in 1091
range strobe
123903
(RUN)
Format: String
(optional parameter)
LEVEL3
Input: Path specification, max. 500
characters 597110-08
Default: No value, optional parameter
activeTT Active table touch probe TT for this traverse Allowed in 1092
range strobe
123904
(RUN)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-08
Key name of the table touch probe from CfgTT
Default: No value, optional parameter
plcMarker PLC status marker for traverse range Allowed in 1092
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 exited. The marker is set to 1
following successful switchover in the traverse
range.
Default: No value, optional parameter

September 2015 4.11 List of machine parameters 767


Parameter Function and input Behavior Page
MP number access
iTNC MP number Software
version
handwheelAxes Selection of axes for the handwheel for this Allowed in 1093
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.
 For panel-mounted handwheels HR 150 via
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 panel-mounted handwheel HR 130:
Do not define the parameter. The axes are
assigned via the PLC program (e.g. Module
9036).
Format: List [0...23]
Input: Select the axes using the selection
menu

768 HEIDENHAIN Technical Manual TNC 640


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 1170
strobe
202901 Enter the subkinematics comprising the machine
(SYNC)
kinematics, going from the tool to the workpiece.
LEVEL3
Format: List [0...5]
597110-03
Input: Key names from
CfgKinSimpleModel
activeSpindle Key name of the active spindle of this Allowed in 1171
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 1171
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

September 2015 4.11 List of machine parameters 769


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
viewDirUpward Orientation of the 3-D view in the kinematics NC syntax 1171
viewer allowed
202907
(NC-SYN)
Describes the Z direction of the world coordinate
(optional parameter)
system in kinematics viewer. Specify here which LEVEL3
coordinate axis of the machine base system
597110-10
should point upwards in the kinematics viewer.
Format: Selection menu
Input:
 X_Pos
 X_Neg
 Y_Pos
 Y_Neg
 Z_Pos
 Z_Neg
viewDirRightward Orientation of the 3-D view in the kinematics NC syntax 1171
viewer allowed
202907
(NC-SYN)
Describes the X direction of the world coordinate
(optional parameter)
system in kinematics viewer. Specify here which LEVEL3
coordinate axis of the machine base system
597110-10
should point to the right in the kinematics viewer.
Format: Selection menu
Input:
 X_Pos
 X_Neg
 Y_Pos
 Y_Neg
 Z_Pos
 Z_Neg

770 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgKinSimpleModel
Definition of subkinematics
[Key name of subkinematics]
kinObjects List of key names of objects in the kinematics Allowed in 1168
chain strobe
202801
(SYNC)
Format: List [0...49]
LEVEL3
Input: Key names of objects from
CfgKinSimpleTrans 597110-03
CfgKinSimpleAxis
CfgKinAnchor
progAxes Programmable axes Allowed in 1169
strobe
202802 Format: List [0...11]
(SYNC)
(optional parameter) Input: Programmable axes for this
LEVEL3
subkinematic.
For a kinematic model, 597110-08
the programmable axes
are created by combining
the corresponding lists
CfgKinSimpleModel/progAxes
and CfgChannelAxes/progAxis
.
Default: No value

September 2015 4.11 List of machine parameters 771


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgKinSimpleTrans
Definition of transformations in three dimensions
dir Direction of the transformation Allowed in 1167
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 1167
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 1209
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
temperatureComp Formula for temperature compensation Allowed in 1209
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

772 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgKinSimpleAxis
Definition of the machine axes in the kinematics chain
[Key name of the machine axis]
dir Direction of the machine axis Allowed in 1165
strobe
202701 Format: Selection menu
(SYNC)
Input: X, Y, Z, A, B, C
LEVEL3
597110-03
axisRef Reference to the associated axis Allowed in 1166
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 the axis
kinCompErr List of errors for KinematicsComp Allowed in 1485
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 1485
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
locErrY Position error Allowed in 1485
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 1485
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

September 2015 4.11 List of machine parameters 773


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
locErrA Position error Allowed in 1485
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 1485
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 1485
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
compErrX Component error Allowed in 1485
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 1485
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

774 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compErrZ Component error Allowed in 1485
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 1485
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 1485
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
compErrC Component error Allowed in 1485
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

September 2015 4.11 List of machine parameters 775


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
errOnToolSide Sequence of compensations Allowed in 1485
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 1485
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

776 HEIDENHAIN Technical Manual TNC 640


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 1164
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

September 2015 4.11 List of machine parameters 777


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgKinToolSocket
Definition of insertion points for tool carrier kinematics
[Key name of the insertion point]
Definition of the tool carrier insertion point in NC syntax 1192
the kinematics chain allowed
(NC-SYN)
In a kinematics chain (e.g. in a
CfgKinComposModel), you may define an LEVEL3
insertion point for a tool carrier. It must be located
597110-10
between the tool and the next kinematic axis.
In the required kinematic model
(CfgKinSimpleModel) enter the insertion point
(e.g. with the key name ToolKin) at the correct
position in the list.
Format: String
Input: Enter the key name
CfgCMO (optional parameter)
Description of a CMO (Collision Monitoring Object)
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 2128
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 2128
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

778 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 2128
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 2129
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 2128
run is
119405 Enter a descriptive name for the collision object. If
locked
the object collides, this text appears in an error
(optional parameter) (RUN)
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: –

September 2015 4.11 List of machine parameters 779


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgCMOCylinder (optional parameter)
Definition of the "cylinder" geometric primitive ("cylinder" form 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 2123
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 2124
run is
119102 With this entry you describe the alignment of the
locked
center point of the cylinder bottom 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 2124
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 2124
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

780 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 2125
run is
119105 Enter a descriptive name for the cylinder. If the
locked
cylinder collides, this text appears in an error
(optional parameter) (RUN)
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 "cuboid" geometric primitive ("cuboid" form primitive)
Define the cuboid by specifying a corner and its length. 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 2125
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 2124
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

September 2015 4.11 List of machine parameters 781


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
name Name displayed in the event of collision Program 2125
run is
119203 Enter a descriptive name for the cuboid. If the
locked
cuboid collides, this text appears in an error
(optional parameter) (RUN)
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 "half-space" geometric primitive ("half-space" form 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 2123
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 2123
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

782 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 2123
run is
119303 Format: Selection menu
locked
Input: (RUN)
 LimitMin LEVEL3
The control reports a collision if other CMOs
interfere with the half-space in negative 597110-06
direction of the coordinate axis given in axis.
 LimitMax
The control reports a collision if other CMOs
interfere with the half-space in positive direction
of the coordinate axis given in axis.
Default: LimitMin
name Name displayed in the event of collision Program 2125
run is
119304 Enter a descriptive name for the half-space. If the
locked
half-space collides, this text appears in an error
(optional parameter) (RUN)
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 the geometric primitive in M3D format
Define the primitive by specifying 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 an M3D file Allowed in 2125
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: –

September 2015 4.11 List of machine parameters 783


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
name Name displayed in the event of collision Allowed in 2125
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 the object
(max. 32 characters)
Default: –

784 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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 977
control
200301 Programmable axis names and axis names for the
(RESET)
position display in the workpiece system.
LEVEL3
Format: Array [0...11]
Input: Selection of key names from
CfgAxes/axisList
restoreAxis Sequence for returning to the contour Shut down 984
control
200305 Defines the order in which the axes are returned
(RESET)
to the contour after NC stop or during block scan.
(optional parameter)
After NC stop, the axes are moved to stop LEVEL3
position. During block scan, they are moved to the
597110-03
calculated restore position.
Format: List [0 to 9] / selection menu
Input: Selection of key names from
CfgAxes/axisList
deactFastClamping Deactivation of "fast" clamping Program 978
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

September 2015 4.11 List of machine parameters 785


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgChannelFile
Definition of initialization data 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 character
geoIniProgram Path/name of the lead program for program Shut down 1913
run control
200402
(RESET)
Format: String
LEVEL3
Input: Max. 260 character
geoIniBlock Path/name of the lead program for MDI mode Shut down –
control
200403 Format: String
(RESET)
Input: Max. 260 character
LEVEL3
geoIniCycle Path/name of the lead program for manual Shut down –
cycles control
200404
(RESET)
Format: String
LEVEL3
Input: Max. 260 character
geoCycleEnd Path/name of the trailing program for Shut down 1918
program end control
200405
(RESET)
Format: String
LEVEL3
Input: Max. 260 character
geoCancelCycle Path/name of the trailing program if program Shut down 1920
aborts control
200406
(RESET)
Format: String
LEVEL3
Input: Max. 260 character
geoTCallCycPath Path/name for the TOOL CALL cycle Shut down –
control
200407 Format: String
(RESET)
Input: Max. 260 character
LEVEL3
geoTDefCycPath Path/name for the TOOL DEF cycle Shut down –
control
200408 Format: String
(RESET)
Input: Max. 260 character
LEVEL3
geoAutoTCallSycle Path/name for the automatic TOOL CALL cycle Shut down –
Called after expiration of the tool life. control
200409
(RESET)
Format: String
LEVEL3
Input: Max. 260 character

786 HEIDENHAIN Technical Manual TNC 640


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 character
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 character
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 character
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 character
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 character
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 character

September 2015 4.11 List of machine parameters 787


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 1172
machining channel strobe
203001
(SYNC)
Format: List [0...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 1173
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 model 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 1173
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

788 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
enableSelection Kinematics selection with the MOD key Program 1173
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 for
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 1094
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 last used traverse range is reactivated.
 Default
A default traverse range is activated. Specify
this with MP_defaultRange.
Default: No value, parameter optional
defaultRange Default traverse range after control startup Program 1094
run is
205002 Format: Selection menu
locked
(optional parameter) Input: (RUN)
List with traverse ranges from LEVEL3
CfgWorkingRange.
597110-08
Default: No value, parameter optional

September 2015 4.11 List of machine parameters 789


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...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...39]
LEVEL3
Input: String, max. 18 characters
CfgNcErrorReaction
Behavior of programmed 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 979
run is
200601 Format: Numerical value
locked
Input: 0 to 4 (RUN)
0: FN14 errors with WL = 0 are triggered LEVEL1
1: FN14 errors with WL </= 1 are triggered
2: FN14 errors with WL </= 2 are triggered
3: FN14 errors with WL </= 3 are triggered
4: FN14 errors with WL </= 4 are triggered
Default: 0
onKinemReset Reaction during data reset through kinematic Program 980
change run is
200602
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL1
 Stop
Display message and stop NC program. 597110-08
An NC start is required for program
continuation.
 Warning
Display error, do not stop program.
 Continue
Do not display error, do not stop program.
Default: Warning

790 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgNcPgmParState
Definition for saving 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 980
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 981
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 character
CfgNcPgmBehaviour
Defines the behavior of the TNC 640 during NC program run
operatingTimeReset Reset the machining time when program Shut down 981
starts. control
200801
(RESET)
Format: Selection menu
LEVEL2
Input:
597110-01
 TRUE
The machining time is reset at each program
start.
 FALSE
The machining time is totaled.
Default: FALSE
plcSignalCycle PLC signal: Number of the currently pending Program 1924
machining cycle run is
200803
locked
Input:
(optional parameter) (RUN)
Name or number of a PLC word marker
LEVEL2
Format: String
597110-09
Max. 500 character
Default: No value, optional parameter

September 2015 4.11 List of machine parameters 791


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 of the radius Allowed in 1910
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 1989
run is
201001 Format: Numerical value
locked
MP7430 Input: 0,001 to 1,414 (RUN)
Default: 1 LEVEL1
displaySpindleErr Display error message Spindle ? if M3/M4 is Program 1990
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
displayDepthErr Error message Enter depth as negative is Program 1990
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

792 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
apprDepCylWall Behavior when moving to wall of slot in the Allowed in 1989
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 milled.
Default: CircleTangential
mStrobeOrient M function for spindle orientation in the fixed Program 1991
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 1990
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
restoreCoolant Define the behavior of M7 and M8 in Cycles Program 1991
202 and 204 run is
201008
locked
Format: Selection menu
(RUN)
Input:
LEVEL1
 TRUE:
At the end of Cycles 202 and 204, the status of 597110-05
M7 and M8 is restored to that before the cycle
call.
 FALSE:
At the end of Cycles 202 and 204, the status of
M7 and M8 is not restored automatically.
Default: TRUE

September 2015 4.11 List of machine parameters 793


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 2243
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

794 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgStretchFilter
Geometry filter for filtering linear elements;
The operating method of the stretch filter depends on the settings. If the filter smooths 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 1274
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 smooths corners.
Default: Off
tolerance Maximum distance of the filtered to the Allowed in 1275
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 1275
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

September 2015 4.11 List of machine parameters 795


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgRotWorkPlane
Configuration of the tilt-working-plane function
rotateWorkPlane Permit tilting of the working plane Shut down 1218
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 1219
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
autoMoveAxes Automatic positioning of the rotational axes Shut down 1219
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

796 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
rotPreference Cycle 19 and PLANE function: Realization of Shut down 1220
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
autoCorrectVector Automatic vector compensation Shut down 1220
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

September 2015 4.11 List of machine parameters 797


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
enableVTaxis Virtual tool axis Shut down 1220
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 1987
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
CfgTCPM
Configuration of TCPM (Tool Center Point Management)
toolRefPoint Tool reference point for programmed path Program 1911
run is
201302 Format: Selection menu
locked
Input: (RUN)
 ToolTip LEVEL1
Tool tip
 ToolCenter
Tool center
Default: ToolTip

798 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxCompFeed Maximum velocity of the principal axes during Program 1911
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
KinematicsOpt (software option 48 required)
maxModification KinematicsOpt: Maximum permitted change Change at 1212
value any time
204801
(NOTHING)
Format: Numerical value
MP6600
LEVEL3
Input: 0.01 bis 1 [mm]
With max. 3 decimal places 597110-05
Default: 0.05 [mm]
maxDevCalBall KinematicsOpt: Radius deviation of the Change at 1212
calibration sphere any time
204802
(NOTHING)
Format: Numerical value
MP6601
LEVEL3
Input: 0.01 bis 0.1 [mm]
With max. 3 decimal places
Default: 0.02 [mm]
mStrobeRotAxPos KinematicsOpt: Number of the M-function Change at 1213
macro for positioning the rotary axes any time
204803
(NOTHING)
Format: Numerical value
MP6602
LEVEL3
Input: 0 to 999
-1: Function inactive 597110-05
Default: -1

September 2015 4.11 List of machine parameters 799


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 1413
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 1413
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 1413
function run is
201403
locked
Name or number of the PLC operand (logical
(optional parameter) (RUN)
marker or input) that can be used by the PLC
program to suppress the lift-off function during an LEVEL3
NC stop.
597110-05
Format: String
Input: Max. 80 character

800 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgDCM (optional parameter)
Parameter for collision monitoring (DCM)
reactionIfRTC Reaction to RTC commands with active DCM Program 1131
run is 2100
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 and an error
message is displayed.
 None
RTC commands are being executed. During this
time, DCM is deactivated. This is indicated by
a warning.
Default: Cancel
reactionIfUnref Reaction to non-referenced axes with active Program 2100
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
597110-09
1).
Format: Selection menu
Input:
 Cancel
The NC program is aborted and an error
message is displayed.
 None
DCM is deactivated as long as at least one axis
has no reference or is driven in following error
mode. Warnings are issued.
Default: Cancel

September 2015 4.11 List of machine parameters 801


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxAngleTolerance Maximum angle tolerance for DCM Program 2132
run is
205303 An angle tolerance programmed with Cycle 32 for
locked
M128 or the TCPM function is limited to this value
MP1290 (RUN)
if DCM collision monitoring is active. If DCM is
(optional parameter) switched off (via FUNCTION DCM or by switching LEVEL3
to kinematics without collision-object definitions),
597110-10
the value programmed in Cycle 32 is in effect
again.
Format: Numerical value
Input: 0 to 10 [°]
With max. 9 decimal places
Default: 5
maxLinearTolerance Maximum linear axis tolerance for DCM Program 2132
run is
205305 A linear axis tolerance programmed with Cycle 32
locked
for M128 or the TCPM function is limited to this
(optional parameter) (RUN)
value if DCM collision monitoring is active. If DCM
is switched off (via FUNCTION DCM or by LEVEL3
switching to kinematics without collision-object
597110-10
definitions), the value programmed in Cycle 32 is
in effect again.
Format: Numerical value
Input: 0 to 20 [mm]
With max. 9 decimal places
Default: 9
manualOversize Manual oversize for DCM Program 2132
run is
205304 If M128 or the TCPM function is active, DCM will
locked
increase the dimensions of all CMOs by the
MP1292 (RUN)
oversize configured here. The system will
(optional parameter) compensate for angle tolerances from Cycle 32. LEVEL3
Format: Numerical value 597110-10
Input: 0 to 1000 [mm]
With max. 9 decimal places
Default: 0

802 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgLaPath
Parameter for calculating the contouring 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 1292
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 1293
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
maxG1Feed Maximum machining feed rate. If this value is Allowed in 1294
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 1295
strobe 2312
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

September 2015 4.11 List of machine parameters 803


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxPathJerkHi Maximum jerk on the path at rapid traverse Allowed in 1295
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 1295
measurement strobe 2312
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 1294
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 via cycle 32.
597110-01
Format: Numerical value
Input: 0.0001 to 10 [mm]
With max. 9 decimal places
Default: 0.01
pathToleranceHi Path tolerance after the filter at rapid traverse Allowed in 1294
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 1296
strobe
201508 Format: Numerical value
(SYNC)
Input: 0 to 1 000 000 [mm/s4]
LEVEL3
With max. 9 decimal places
597110-01
Default: 4 000

804 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxPathYankHi Mode of yank limitation at rapid traverse Allowed in 1296
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 1305
beginning of a contour element strobe
201516
(SYNC)
Format: Selection menu
MP1205
LEVEL3
Input:
(optional parameter)
597110-05
 TRUE
Reduction of the contouring feed rate is active
(slower but more accurate if required)
 FALSE
Reduction of the contouring feed rate is not
active
(fast, possibly less precise)
Default: TRUE
curveTolFactor Factor for path tolerance in circles Allowed in 1308
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

September 2015 4.11 List of machine parameters 805


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
curveJerkFactor Factor for feed rate reduction at curvature Allowed in 1308
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 1297
(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 1297
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 1278
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
maxTransAcc Maximum radial acceleration on circles and Allowed in 1298
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

806 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxTransAccHi Maximum radial acceleration on circles and Allowed in 1298
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 2420
control
201601 Format: List [0...299]
(RESET)
Input: Key name of the M function
LEVEL3
Selection from CfgPlcMStrobe
sStrobe List of S strobe descriptions in this channel Shut down 2434
control
201602 Format: List [0...5]
(RESET)
Input: Key name of the S function
LEVEL3
Selection from CfgPlcSStrobe
tStrobes List of T strobe descriptions in this channel Shut down 2447
control
201603 Format: List [0...2]
(RESET)
Input: Key name of the T function
LEVEL3
Selection from CfgPlcTStrobe
aliasStrobes List of implemented strobes in this channel Shut down 2457
control
201604 Reproduction of control-dependent functions on a
(RESET)
uniform M-function transfer to the PLC program.
LEVEL3
Format: List [0...4]
597110-01
Input: Key name of the M function
Selection from CfgPlcMStrobe

September 2015 4.11 List of machine parameters 807


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
unitOfMeasure Symbolic name or number of the PLC marker for Shut down 2420
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 2259
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 2259
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 2259
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
updateTable Symbolic name or number of a marker Shut down 2259
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

808 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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 986
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 986
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
Minimum Minimum value for override Change at 2189
any time
201901 Format: Numerical value
(NOTHING)
Input: 0 to 100 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 0
Maximum Maximum value for override Change at 2189
any time
201902 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 2189
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

September 2015 4.11 List of machine parameters 809


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgPlcOverrideR (optional parameter)
Configuration of rapid traverse override for this channel
Minimum Minimum value for override Change at 2190
any time
202001 Format: Numerical value
(NOTHING)
Input: 0 to 100 [%]
LEVEL3
With max. 2 decimal places
597110-01
Default: 0
Maximum Maximum value for override Change at 2190
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 2191
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

810 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.

September 2015 4.11 List of machine parameters 811


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 2187
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 behaviorTNC 640)
During thread cutting, the potentiometer is
effective for the feed rate knob. The
potentiometer for the spindle speed override is
not active.
Default: No value
thrdWaitingTime Dwell time for reversal of spindle rotational Program 1611
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 1611
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

812 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 1609
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 1632
mode any time
204202
(NOTHING)
Format: Numerical value
LEVEL1
Input: 0...999
597110-05
0
Tool orientation is deactivated
 1 to 999-

Number of the M function for orienting the tool
Default: 0
toolClampSpacing Position for clamping the tool carrier (milling Change at 1632
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

September 2015 4.11 List of machine parameters 813


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
eccLimSpeedFactor Factor for max. spindle speed during eccentric Change at 1633
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...9999.999
Factor for maximum speed
Default: 0

814 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 992
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 992
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

September 2015 4.11 List of machine parameters 815


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
progKind Type of axis Shut down 993
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 993
commands control
300004
(RESET)
The index is a default value. Enter one of the
following values according to 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 994
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 the axis from
Axes/PhysicalAxis

816 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 996
control
300101 Note:
(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 NC syntax 997
allowed
300102 Modulo limit of 360 degrees for the position
(NC-SYN)
display of rotary axes.
LEVEL3
Format: Selection menu
597110-01
Input:
 TRUE
Modulo display from 0 to 360 [°]. The axis is a
rotary axis that can roll over (“rollover axis”) The
parameters in CfgRollOver are evaluated.
 FALSE:
No modulo display
Default: FALSE
restoreModuloCntr Save modulo counter of the axis in SRAM Program 997
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

September 2015 4.11 List of machine parameters 817


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
isHirth Axis with Hirth coupling Program 1138
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 1000
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 (without function)
Default: InOutCC

818 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 1001
control
300105 Format: Selection menu
(RESET)
MP10 (expanded) Input:
LEVEL3
 NotActive
Axis not present 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 1001
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 need
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 1002
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...10]
Input: Key name(s) from ParameterSets
realAxis Key name of the associated real axis Shut down 1002
control
300108 With 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 the axis from
Axes/PhysicalAxis

September 2015 4.11 List of machine parameters 819


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 1003
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 start-up Program 1081
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

820 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 1004
run is
300112 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 noBreakAtProbe 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
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
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
Reserved for special settings of analog drives.

September 2015 4.11 List of machine parameters 821


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
advancedSettings  backlashOnMC Program 1004
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
 ignoreKinematics Program 1004
Specifies whether the active kinematics model run is
is to be ignored during manual traverse. locked
• TRUE (RUN)
Regardless of the kinematics model effec-
tive in manual operation, this axis can LEVEL3
always be moved by using the manual 597110-08
direction keys.
• FALSE
If a kinematic configuration is effective in
manual operation, only one axis can be
moved at a time. The active kinematic con-
figuration is not ignored.
• Default:
FALSE
 clearShutoffPos Program 1004
Reset switch-off position of the axis saved in run is
SRAM. locked
• TRUE (RUN)
Set switch-off position of the axis in SRAM
to zero. After evaluation, the parameter will LEVEL3
be reset at the next start-up. 597110-09
• FALSE
Function not active
• Default:
FALSE

822 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
 hwEncoderFilter
For special TTL encoder handwheels with an
extremely short and speed-invariant high signal
period (approx. 100 µs), you can configure a
signal input filter that splits the encoder input
signal via a mean-value filter into 5 IPO clock
pulses.
• TRUE
Split signal via mean-value filter into 5 IPO
clock pulses
• FALSE
Function not active
• Default:
FALSE
advancedSettings Caution: The following parameters may only be Program –
reset after consultation with HEIDENHAIN. run is
300112
locked
 useCtrlOutputLimit
(optional parameter) (RUN)
Compensate following errors via controller
output limit LEVEL3
• TRUE
597110-10
Enable “old” method for compensating fol-
lowing errors
• FALSE
Function not active
• Default:
FALSE
 specialGantry
Special handling of gantry couplings
Caution: This disables the internal function that
monitors which axes may be coupled at what
time.
• TRUE
Configure display axes as gantry slaves
• FALSE
Function not active
• Default:
FALSE
compatibility Reserved, do not change Program –
run is
300113
locked
(optional parameter) (RUN)
(reserved parameter) LEVEL3
597110-10

September 2015 4.11 List of machine parameters 823


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgAxisPropKin
Description of special axis properties;
Specifies various properties that are important for the kinematics
specKinCoordSys Type of special coordinate system Shut down 1014
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 a rotary axis.
presetToAlignAxis Controls the treatment of the preset for Shut down 1015
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 only affects the display
Default: TRUE

824 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
hasSpecAxisData Reserved: Special axis data available, only for Shut down 1015
special axes control
300204
(RESET)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
 TRUE
Special axis data available
 FALSE
No special axis data available
Default: FALSE
parAxComp Compensation of parallel linear axes Shut down 1225
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.

September 2015 4.11 List of machine parameters 825


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgAxisSafety (optional parameter)
Functional safety (FS) settings;
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)

826 HEIDENHAIN Technical Manual TNC 640


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)

September 2015 4.11 List of machine parameters 827


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)

828 HEIDENHAIN Technical Manual TNC 640


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: Feed axis: 0.001 ... 30.000
(only evaluated in systems
[mm], default: 0.5 [mm]
with functional safety FS—
Rotary axes: 0.001 ... 30.000 [°],
observe the Technical
default: 0.5 [°]
Manual for Functional Safety
Spindle: may be set (but
FS).
not transferred in SOS monitoring),
(optional parameter) default: 180 [°]
With max. 9 decimal places
Default: 0.5
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)

September 2015 4.11 List of machine parameters 829


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 bis 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)

830 HEIDENHAIN Technical Manual TNC 640


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 bis 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 bis 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)

September 2015 4.11 List of machine parameters 831


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)

832 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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: The parameters under CfgRollOver are only evaluated if the
CfgAxis/isModulo parameter is set to TRUE!
shortestDistance Traverse path of rotary axis with modulo Allowed in 998
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°) Display the axis in modulo
display (0° to 360°).
 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 999
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

September 2015 4.11 List of machine parameters 833


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgMachDatumExtra
Definition of a machine-based datum
Datum for positioning blocks with M92, e.g. for tool-change position.
distFromMachDatum Position of the machine reference point for Program 1983
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...+999 999 999
[mm] or [°]
With max. 9 decimal places
Default: 0
CfgBrake (optional parameter)
Specifies the settings for the brake. You define the name of the brake through the key name.
connection Control of brake or brake wiring Program 1539
run is
403301 Format: Numerical value
locked
MP830.x, MP831.x Input: (RUN)
(optional parameter)  –2 LEVEL3
The brake is controlled through X344 of the
inverter. 597110-08
 –1
The brake is controlled 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 1539
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 1539
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

834 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
timeToBrakeTest Max. time until the test of the motor holding- Shut down 1539
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, using the serial
numbers of the identified EnDat encoders for this purpose.
endatMultiturnCtr EnDat multiturn counter Change at 1042
any time
403501 NOTE: Usually automatically written to by
the control. LEVEL3
(optional parameter)
Format: Numerical value 597110-09
Input: -2147483648 to 2147483647
Default: 0
endatOverflowPos Metric position of the last EnDat overflow Change at 1042
any time
403502 NOTE: Usually automatically written to by
the control. LEVEL3
(optional parameter)
Format: Numerical value 597110-09
Input: 0 to 360
9 decimal places
Default: 0
motName Name of the motor from the motor table Change at 1042
any time
403503 Format: String
LEVEL3
(optional parameter) Input: 40 characters
597110-09

September 2015 4.11 List of machine parameters 835


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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
Defines 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 1056
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
The algebraic sign of the position encoder is not
inverted.
Default: off
signCorrNominalVal Sign reversal of the speed command signal Program 1056
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

836 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 1031
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)

September 2015 4.11 List of machine parameters 837


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderType Position measurement via position encoder or Program 1032
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
EnDat position encoder on the MC
(X01 to X04, X05 optional)
 NO_ENCODER
No position measurement
distPerMotorTurn Distance of one motor revolution Program 1033
run is
400004 With analog 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 1033
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 the syntax, see page505
Default: No value

838 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderDist Distance for number of signal periods from Program 1039
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 or formula LEVEL3
Input: 0.000 000 001 to 99 999.9999 597110-01
[mm] or [°] or formula
(max. 300 characters).
For the syntax, see page505
Default: 5
posEncoderIncr Number of signal periods for distance from Program 1040
MP_posEncoderDist run is
400006
locked
Number of increments of the external encoder.
MP332, MP3142 (RUN)
For spindles enter the line count of the encoder
used. Condition:
For multiturn encoders with EnDat interface REF
enter: increments per encoder revolution.
LEVEL3
Format: Numerical value
597110-01
Input: 1 to 16 777 215 [incr]
Default: 2048 [incr.]
genExtIntPolFactor External interpolation for encoder signals Program 1045
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

September 2015 4.11 List of machine parameters 839


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderInput Assignment of a position encoder input to the Program 1049
axis run is
400008
locked
Format: Selection menu
MP110, MP111 (RUN)
Input:
Condition:
 none REF
No position encoder connected.
LEVEL3
 X01...X06
Position encoder inputs are X01 toX06 (on the 597110-01
MC 42x)
 X35...X38
Position encoder inputs are X35 toX38 (on the
MC 42x)
 X201...X210
Position encoder inputs are X201 toX210 (on
the CC)
Default: none
posEncoderInput Assignment of a position encoder input to the Program 1046
axis run is
400008
locked
Format: Selection menu
MP110, MP111 (RUN)
Input:
Condition:
 none REF
No position encoder connected.
LEVEL3
 X01...X06
Position encoder inputs are X01 toX06 (on the 597110-01
MC 128 or MC 32x)
 X35...X38
Reserved
 X201...X210
Reserved
Default: none
posEncoderSignal Signal amplitude at the position encoder input Program 1051
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 a 1 VPP
Default: 1 Vpp

840 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posEncoderSignal Signal amplitude at the position encoder input Program 1047
run is
400009 Format: Selection menu
locked
MP115.0, MP116.0 Input: (RUN)
 1 VPP LEVEL3
The input signal of the encoder is a 1 VPP
597110-01
 11 µA
Input signal of encoder is 11 µA
Default: 1 Vpp
posEncoderFreq Input frequency of position encoder inputs Program 1051
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 1052
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 1049
axis run is
400012
locked
Format: Selection menu
MP112 (RUN)
Input:
Condition:
 none REF
No speed encoder connected
LEVEL3
 X15...X20
Speed encoder inputs are X15 toX20 597110-01
 X80...X83
Speed encoder inputs are X80 toX83
 X301...X306
Reserved
 X306
Reserved
Default: none

September 2015 4.11 List of machine parameters 841


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
inverterInterface Assignment of the speed command output to Program 1049
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...X56 597110-01
PWM outputs are X51 to X60
 X80...X85
Only on UEC 11x: Motor connections are
X80...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 1050
chain run is
400014
locked
Assign the index according to 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 277
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...7] 597110-03
Input: Name of the switch-off group
Group1 to Group8, or None

842 HEIDENHAIN Technical Manual TNC 640


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...4]
Input: Name of the brake
posEncoderTwoHead Dual-head evaluation Program 1066
run is
400022 Activate the dual-head evaluation dual-head
locked
calculation for two encoders with EnDat 2.2
(optional parameter) (RUN)
interface on a rotary axis.
Condition:
Format: Selection menu
REF
Input:
LEVEL3
 on
Dual-head evaluation active. 597110-10
 off
Dual-head evaluation inactive.
Default: off

September 2015 4.11 List of machine parameters 843


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgPosControl
Position control parameters
kvFactor Kv factor (proportional component of position Allowed in 1316
controller) strobe
400801
(SYNC)
Note:
MP1510, MP1810, MP3440
The unit of the kv factor on the TNC 640 differs LEVEL3
from that of the iTNC 530:
597110-01
Unit TNC 640: mm / (mm · s)
Unit iTNC 530: m / (mm · min)
The result is:
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 value for following-error monitoring Allowed in 1499
(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: 0.5
servoLagMax1 Maximum value for following-error Allowed in 1499
monitoring (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: 0.5

844 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
servoLagMin2 Minimum for following-error monitoring Allowed in 1500
(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: 2.0
servoLagMax2 Maximum for following-error monitoring Allowed in 1500
(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: 2.0
feedForwardFactor Factor for velocity feedforward control Allowed in 1314
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
ctrlOutputLimit Controller output limit for the position Allowed in 1317
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 1 666 [mm/min] or [°/min]
With max. 9 decimal places
Default: 0

September 2015 4.11 List of machine parameters 845


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
servoLagGainFactor Multiplication factor for the kv factor Allowed in 1316
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 1067
run is
400101 Format: Selection menu
locked
MP120, Input: (RUN)
MP121
 none: LEVEL3
No analog output assigned
 analog output 1...13:
Analog inpiut 1...6 (terminal X8 on MC 3xx or
MC 4xx)
Analog output 1...4 (CMA-H 04-04-00)
Analog output 7...13 (terminal X9 on MC 4xx)
Default: analog Output 1
analogOffset Offset on analog axis Program 1394
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]

846 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
kvFactor2 Proportional component of position controller Program 1385
above MP_kvSpeedLimit run is
400103
locked
Parameter only for analog axes.
(optional parameter) (RUN)
Note:
LEVEL3
The unit of the kv factor on the TNC 640 differs
from that of the iTNC 530:
Unit TNC 640: mm / (mm · s)
Unit iTNC 530: m / (mm · min)
The result is:
iTNC kv factor · 16.66 = TNC 640 kv factor
Format: Numerical value
Input: 0.000 to 1 000.000 [1/s]
Default: 0.000 [1/s]
kvSpeedLimit Limit velocity for MP_kvFactor2 Program 1386
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 1068
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: 4 999.9898
accForwardFactor Factor for acceleration feedforward control Program 1388
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

September 2015 4.11 List of machine parameters 847


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compStrength Strength of the compensation Program 1389
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 1389
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

848 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 1390
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
compFFAdjust Acceleration compensation Program 1390
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

September 2015 4.11 List of machine parameters 849


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compRefAcc Reference acceleration Program 1391
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 1391
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
noOffsetAdjust Excludes the axis from automatic offset Program 1394
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 will be adjusted.
Default: No value

850 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
unipolar Algebraic sign with analog unipolar drives Program 1601
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 is < 0, then 0 is output. If
it is > 0, the nominal voltage is output.
 clip negative
If the nominal voltage is > 0, then 0 is output. If
it is < 0, the nominal voltage is output.
Default: off

September 2015 4.11 List of machine parameters 851


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgAxisHandwheel
Configuration of the handwheel for this axis
input Connection of the encoder handwheel Change at 2151
any time
400201 Format: Selection menu
(NOTHING)
Input: none or
LEVEL3
X01 to X06
X35 to X38 597110-01
X201 to X210
Default: none
hsciCcIndex Index of the CC controller unit on the HSCI Change at 2151
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 2153
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

852 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
distPerRevol Axis traverse per handwheel revolution Change at 2153
any time
400203 Applies to 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 2153
encoder input any time
400204
(NOTHING)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 100 to 2 147 483 647 [incr.]
597110-01
Default: 1024
rasterPerRevol Detent steps per revolution of handwheel at Change at 2154
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 2151
handwheel any time
400206
(NOTHING)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-01
 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:
Input signal of the encoder is a TTL signal.
Default: 1 Vpp

September 2015 4.11 List of machine parameters 853


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
encoderFreq Input frequency of position encoder input for Change at 2152
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 2152
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
decToSoftLimit Braking ramp for handwheel movement to Change at 2155
software limit switch any time
400209
(NOTHING)
(MP_swLimitSwitchPos or
(optional parameter)
MP_swLimitSwitchNeg) LEVEL3
Format: Numerical value 597110-03
Input: Braking ramp in [m/s2]or
[1000°/s2] for rotary axes
0 to max. value
Decimal places:Max. 9
Default: 0

854 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgFeedLimits
Define velocities and acceleration of the axis;
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 1300
spindle speed strobe 1590
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 1300
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
rapidFeed Rapid traverse in manual mode Allowed in 1300
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: 4 999.98

September 2015 4.11 List of machine parameters 855


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
manualFeed Maximum manual feed rate Allowed in 1301
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: 4 999.98
maxAcceleration Max. permissible axis acceleration during Allowed in 1301
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 1576
shaft speed control strobe
400311
(SYNC)
This parameter is only effective for spindles. If 0 is
(optional parameter)
entered or there is no parameter, the acceleration LEVEL3
from MP_maxAcceleration is used.
597110-03
Format: Numerical value
Input: Value in [1/min/s] or [°/s2]
Decimal places:Max. 9
Default: 0
maxAccSpeedCtrl Optional acceleration for the spindle with Allowed in –
shaft speed control strobe
400311
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-03

856 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxDecSpeedCtrl Optional braking ramp for the spindle with Allowed in 1577
shaft speed control strobe
400312
(SYNC)
This parameter is only effective for spindles. If the
(optional parameter)
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 1578
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

September 2015 4.11 List of machine parameters 857


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
limitSpeedDec Limit speed for reduction of the braking Allowed in 1578
deceleration strobe
400314
(SYNC)
Braking deceleration of the spindle with a “kink”
(optional parameter)
in the 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 1578
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 1578
MP_limitSpeedAcc strobe
400317
(SYNC)
Acceleration of the spindle with a "kink" in the
(optional parameter)
acceleration curve. LEVEL3
For the syntax for formula input, see page 505. 597110-09
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

858 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
limitAccSpeedCtrlF Formula input for acceleration. Effective above Allowed in –
MP_limitSpeedAcc strobe
400317
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-09
limitDecSpeedCtrl Absolute deceleration during braking. Allowed in 1579
Effective above MP_limitSpeedDec strobe
400316
(SYNC)
Braking deceleration of the spindle with a “kink”
(optional parameter)
in the 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 Form input for deceleration during braking. Allowed in 1579
Effective above MP_limitSpeedDec strobe
400318
(SYNC)
Braking of the spindle with a "kink" in the
(optional parameter)
deceleration curve. LEVEL3
For the syntax for formula input, see page 505. 597110-09
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
limitDec8peedCtrlF Formula input for acceleration. Effective above Allowed in –
MP_limitSpeedDec strobe
400317
(SYNC)
Reserved.
(optional parameter)
LEVEL3
597110-09
M19MaxSpeed Maximum rotational speed limit for M19 Allowed in 1564
strobe
400307 Format: Numerical value
(SYNC)
MP3520.1 Input: 100 to 20 000 [1/min]:
LEVEL3
Default: 1 000
597110-01

September 2015 4.11 List of machine parameters 859


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
M19MaxMode Braking behavior with M19 above NC syntax 1565
MP_M19MaxSpeed allowed
400319
(NC-SYN)
Format: Selection menu
(optional parameter)
LEVEL3
Input:
597110-10
 MaxCurrent:
This setting is used to brake the spindle at the
limit of current until the value in
MP_M19MaxSpeed is reached.
 UsePmax2:
This setting is used to brake the spindle at the
limit of current, too, but the maximum power is
limited to the value of the MP_Pmax2
parameter in CfgServoMotor.
 UseNormalDec:
This setting is used to brake the spindle using
the configured M5 ramp, including the
characteristic with a kink until the value in
MP_M19MaxSpeed is reached.
Default: without
M19NcSpeed Nominal speed for an oriented spindle stop Allowed in 1565
commanded by the NC strobe
400310
(SYNC)
Format: Numerical value
LEVEL3
Input: Speed in [1/min]
597110-03
Default: 8
nominalSpeed Rated speed for the gear range Allowed in 2443
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: Speed in [1/min]
Default: 0
restoreFeed Feed rate for returning to the contour Allowed in 984
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]

860 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgReferencing
Axis parameter for the reference run;
For rotary axes and spindles, the velocity is specified in [°/min].
 refAuxFunctions (optional parameter)
Additional settings for scanning the reference mark
refType Functional sequence for traversing the Program 1257
reference mark run is
400401
locked
The setting in MP_onTheFly defines whether the
MP1350 (RUN)
reference run can only be started with NC Start or
also with the axis direction keys or, for the Condition:
spindle, with M3, M4. 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.
 Mode1
Encoder with one reference mark (rotational or
linear).
Sequence: Adopt reference point at any time;
if trip dog is traversed: reverse direction of
traverse
 Mode2
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
 Mode3
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
 Mode5
Encoder with EnDat interface; reference run is
not required
 Mode10
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
 Mode11
Reserved
Default: None

September 2015 4.11 List of machine parameters 861


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
onTheFly Reference mark evaluation "on the fly" Program 1257
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 597110-06
via axis 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 1268
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 1501
during switch-on run is
400405
locked
Format: Numerical value
(RUN)
Input: -100 000 to 100 000
Condition:
[mm] or [°]
REF
Decimal
LEVEL3
places: Max. 9
597110-01
Default: 0
refFeedLow Low velocity for traversing the reference mark Program 1258
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 REF
[mm/min] or [°/min]
LEVEL3
Decimal
597110-01
places: Max. 9
Default: 600

862 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
refFeedHigh High speed for finding the reference mark Program 1258
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
REF
[mm/min] or [°/min]
LEVEL3
Decimal places:Max. 9
597110-01
Default: 1200
refDirection Traversing direction for finding the reference Program 1258
mark run is
400408
locked
Format: Selection menu
MP1320 (RUN)
Input:
Condition:
 positive REF
Positive traverse direction
LEVEL3
 negative
Negative traverse direction 597110-01
Default: negative
posEncoderRefDist Nominal increment between two fixed Program 1040
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 1268
mark run is
400409
locked
Format: Selection menu
(RUN)
Input:
Condition:
 on REF
Positioning after reference-mark traverse is
active LEVEL3
 off 597110-02
No positioning after reference-mark traverse
Default: off

September 2015 4.11 List of machine parameters 863


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
moveAfterRefType Type of movement after finding the reference Program 1269
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 1269
reference mark run is
400411
locked
Format: Numerical value
(RUN)
Input: -100 000 to 100 000
Condition:
[mm] or [°]
REF
Decimal places:Max. 9
LEVEL3
Default: 0
597110-01
moveAfterRefFeed Feed rate for positioning after traversing the Program 1269
reference mark run is
400412
locked
Format: Numerical value
(RUN)
Input: 0 to 36 000 000
Condition:
[mm/min] or [°/min]
REF
Decimal places:Max. 9
LEVEL3
Default: 6 000
597110-01

864 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
refSwitchLowActive (bit 0) Trip dog (reference end position) is low active Program 1265
run is
400415 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE Condition:
Trip dog (reference end position) is REF
low active (0)
LEVEL3
 FALSE
Trip dog (reference end position) is 597110-06
high active (1)
Default: FALSE
endatSerial (bit 1) Connecting incremental encoders via the EIB Program 1033
run is 1265
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 is used 597110-04
Default: FALSE
moveOnAfterSwitch (bit 2) After trip dog, continue for half of distance Program 1265
from MP_distPerMotorTurn run is
400415
locked
Specifies whether the reference mark will be
(optional parameter) (RUN)
evaluated only after the axis, on reaching the trip
dog, has continued to move for half the distance Condition:
from MP_distPerMotorTurn. REF
Format: Selection menu LEVEL3
Input: 597110-06
 TRUE
Reference-mark evaluation is activated only
after actuation of the trip dog followed by a
movement over half the distance from
MP_distPerMotorTurn.
 FALSE
Reference-mark evaluation is activated
immediately after actuation of trip dog.
Default: FALSE

September 2015 4.11 List of machine parameters 865


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
doubleRef (bit 3) Double referencing is active Program 1266
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
doubleRefOffset (bit 4) Distance between speed encoder and position Program 1266
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
LEVEL3
[mm] or [°]
597110-06
Decimal places:Max. 9
Default: 0
doubleRefImmed Axis is referenced if the EnDat interface of the Program 1266
speed encoder has been used for referencing run is
400415
locked
Is evaluated only if double referencing
MP1357.x (RUN)
(MP_doubleRef = TRUE) is activated.
(optional parameter) Condition:
Format: Selection menu
REF
Input:
LEVEL3
 TRUE
After the reference run with the EnDat speed 597110-10
encoder, the axis is considered as referenced
(REF_OK)
 FALSE
The axis is only considered as referenced after
a double reference run
Default: FALSE

866 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
externRefPulse (bit 5) Referencing with external reference signal Program 1571
run is
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 reference signal at 597110-04
the -SP.REF input at X9 of the external PL is
evaluated.
In analog systems (e.g. MC 321), the reference
signal at input X30 is evaluated.
Default: off
multiturnModulo Modulo axis with multiturn EnDat rotary Program –
encoder run is
400415
locked
Format: Selection menu
(optional parameter) (RUN)
Input:
LEVEL3
 TRUE
For endlessly rotating axes (spindles) with gear 597110-08
transmission and a motor encoder with
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
endatDiffFatal Disable position capturing for axes with EnDat Program 1501
encoder run is
400415
locked
Format: Selection menu
MP1147 (RUN)
Input:
(optional parameter) LEVEL3
 TRUE
Position capturing disabled. Reset error when 597110-10
confirming the “Load the current position?”
dialog.
 FALSE
Position can be captured.
Default: FALSE

September 2015 4.11 List of machine parameters 867


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgPositionLimits
Axis-specific setting of the software limit switches;
The TNC 640 currently supports only one traverse range.
swLimitSwitchPos Positive software limit switch Program 1105
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 1105
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 1106
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
Outputting 597110-01
Decimal
places: Max. 9
Default: 100

868 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgControllerAuxil
General parameters for the position controller
driveOffLagMonitor Following-error monitoring with drive Program 1500
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
checkPosStandstill Standstill monitoring Program 1506
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 with 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 1502
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 places:Max. 9
597110-03
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

September 2015 4.11 List of machine parameters 869


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxSpeedDiff Max. velocity difference between position and Program 1502
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
maxSpeedDiff Max. velocity difference between position and Program –
speed measuring system run is
400609
locked
Reserved.
(optional parameter) (RUN)
LEVEL3
597110-06
posDiffCountDir Counting direction of the motor encoder Program 1503
run is
400604 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 automatic Condition:
Motor encoder counts in positive or negative REF
direction (depending on the counting direction
ascertained for movements in the opposite LEVEL3
direction) 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
400606
locked
(optional parameter) (RUN)
LEVEL3
reserve2 Parameter reserved, do not assign Program –
run is
400607
locked
(optional parameter) (RUN)
LEVEL3
reserve3 Parameter reserved, do not assign Program –
run is
400608
locked
(optional parameter) (RUN)
LEVEL3

870 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgEncoderMonitor
Hardware monitoring functions for the position encoders
checkAbsolutPos Monitoring the absolute position for distance- Program 1059
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
checkEncoderState Monitor the encoder status signals (with EnDat Program 1062
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
checkRefDistance Monitoring the reference mark of the spindle Program 1573
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

September 2015 4.11 List of machine parameters 871


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
movementThreshold Threshold above which the movement Program 1505
monitoring functions run is
400705
locked
Format: Numerical value
MP1140 (RUN)
Input: 0 to 36 000 000
LEVEL3
[mm/min] or [°/min]
0: Monitoring switched off 597110-01
Decimal places:Max. 9
Default: 199.98
thresholdDistance Tolerance at and above which the following Program 1505
error is included run is
400706
locked
Format: Numerical value
(optional parameter) (RUN)
Input: 0 to 36 000 000 [mm] or [°]
LEVEL3
Decimal places:Max. 9
597110-01
Default: 5

872 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgSpindle
Machine parameter for configuring the spindles;
Only define for an axis that is configured as spindle.
fastInputType Treatment of the fast input for the spindle Program 1570
run is
401501 Format: Selection menu
locked
Input: (RUN)
 none LEVEL3
The signal from MP_fastInput 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 1570
reference run run is
401502
locked
Note: From NC software version 597110-09,
(optional parameter) (RUN)
parameterization should be done using IOconfig.
LEVEL3
Format: Numerical value
597110-01
Input: 0 to 32767
Default: 0
zeroPosEdge Evaluation of the edge Program 1570
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

September 2015 4.11 List of machine parameters 873


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
stopOnSwitchSpeed Shaft speed for positioning to the trip dog Program 1571
run is
401504 If the value forStopping is set 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: Speed in [1/min]
With max. 9 decimal places
Default: No value
gearShiftSpeed Speed for gear shifting Program 2444
run is
401505 Format: Numerical value
locked
(optional parameter) Input: Speed in [1/min] (RUN)
Max. 9 decimal places
LEVEL3
Default: No value
597110-03
gearShiftVoltage Nominal voltage value output for gear shifting Program 2444
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 1058
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 1566
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 1 000 [1/s]
With max. 9 decimal places
Default: 0

874 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
kvFactorTapping kv factor for tapping Program 1609
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 1 000 [1/s]
With max. 9 decimal places
Default: 0
kvFactorSync Kv factor for spindle synchronization Program 1603
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 1567
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 1591
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

September 2015 4.11 List of machine parameters 875


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
relSpeedTolerance Maximum permissible overshoot of the Program 1591
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
absSpeedTolerance Entry of an absolute value for the permissible Program 1591
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 1591
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 1594
run is
401516 Format: Selection menu
locked
MP3530, MP13530 Input: (RUN)
(optional parameter)  TRUE: LEVEL3
Increased spindle power active for roughing
597110-09
 FALSE:
Function not active

876 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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 linear axes
 axisCutterLoc:
Axis-specific configuration of the nominal position value filter for rotary axes with active
Tool Center Point Management (TCPM)
shape Shape of the nominal position value filter Allowed in 1288
strobe
401606, 401607 Format: Selection menu
(SYNC)
MP1200 Input:
LEVEL3
 Off
Filter switched 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 1289
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 1289
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

September 2015 4.11 List of machine parameters 877


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxHscOrder Max. filter order for HSC and Allowed in 1289
AdvancedHSC filters strobe
401606, 401607
(SYNC)
Format: Numerical value
(optional parameter)
LEVEL3
Input: 25 to 63
MP1262, MP1263
597110-06
Default: 63
manualFilterOrder Axis-specific order of the mean-value filter for Allowed in 1290
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 1290
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

878 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgLaAxis
Axis-dependent parameter for the 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 1302
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 1304
strobe 2311
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
axPathJerkHi Axis-specific maximum jerk during rapid Allowed in 1304
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 1304
measurement strobe 2311
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 1309
strobe
401702 Format: Numerical value
(SYNC)
Input: 0.01 to 100 [factor]
LEVEL3
Decimal places:Max. 9
597110-01
Default: 1 (for linear axes)

September 2015 4.11 List of machine parameters 879


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgAxisComp
Axis compensation parameters
active Switch on/off all axis compensations Program 1140
run is
401801 Format: Selection menu
locked
Input: (RUN)
 on LEVEL3
Backlash compensation, linear or nonlinear axis-
error compensation, reversal-error 597110-01
compensation and thermal compensation are all
active.
 off
Axis compensations are not active.
Default: off
backLash Backlash compensation; Program 1143
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
linearCompValue Linear axis error compensation Program 1147
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 1147
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 1143
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

880 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posCtrlRevErr Backlash compensation (distance) Program 1145
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 1145
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 1143
run is
401808 Effective 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
backlashTimeConst Time for dynamic backlash compensation Program 1143
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 1329
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 1329
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

September 2015 4.11 List of machine parameters 881


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlIntTime Limiting the integral-action component of the Allowed in 1350
speed controller strobe
400903
(SYNC)
Format: Numerical value
MP2512.x
LEVEL 3
Input: 0 to 30 [s]
With max. 9 decimal places 597110-02
Default: 0
vCtrlDiffGain Differential component of the speed controller Allowed in 1331
strobe
400904 Format: Numerical value
(SYNC)
MP2520.x, MP2521.x Input: 0 bis 1 [As2/rev.]
LEVEL 3
With max. 9 decimal places
597110-01
Default: 0
vCtrlFiltLowPassT PT2 element of the speed controller (second- Allowed in 1332
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
vCtrlEncInputFilt Filter order of the FIR filter (low-pass filter) Allowed in 1338
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

882 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType1 Filter type for filter 1 Allowed in 1337
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: First-order lead lag filter (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Second-order lead lag filter (speed
ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: First-order lead lag filter (position
ctrlr.)
111: PT2 low-pass filter (position ctrlr.)
112: Band-rejection filter (position ctrlr.)
113: Phase increase (position ctrlr.)
114: Second-order lead lag filter
(position ctrlr.)
Default: 0
vCtrlFiltFreq1 Center frequency of the band-rejection filter Allowed in 1337
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 1337
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
vCtrlFiltDamping1 Damping the band-rejection filter for filter 1 Allowed in 1337
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

September 2015 4.11 List of machine parameters 883


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType2 Filter type for filter 2 Allowed in 1337
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: First-order lead lag filter (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Second-order lead lag filter
(speed ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: First-order lead lag filter (pos.ctrlr.)
111: PT2 low-pass filter (position ctrlr.)
112: Band-rejection filter (position ctrlr.)
113: Phase increase (position ctrlr.)
114: Second-order lead lag filter (pos .ctrlr.)
Default: 0
vCtrlFiltFreq2 Center frequency of band-rejection filter for Allowed in 1337
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 1337
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 of band-rejection filter for filter 2 Allowed in 1337
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

884 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType3 Filter type for filter 3 Allowed in 1337
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: First-order lead lag filter (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Second-order lead lag filter (speed
ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: First-order lead lag filter (position ctrlr.)
111: PT2 low-pass filter (position ctrlr.)
112: Band-rejection filter (position ctrlr.)
113: Phase increase (position ctrlr.)
114: Second-order lead lag filter (position
ctrlr.)
Default: 0
vCtrlFiltFreq3 Center frequency of band-rejection filter for Allowed in 1337
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 band-rejection filter for filter 3 Allowed in 1337
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 of band-rejection filter for filter 3 Allowed in 1337
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

September 2015 4.11 List of machine parameters 885


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType4 Filter type for filter 4 Allowed in 1337
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: First-order lead lag filter (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Second-order lead lag filter (speed
ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: First-order lead lag filter (position
ctrlr.)
111: PT2 low-pass filter (position ctrlr.)
112: Band-rejection filter (position ctrlr.)
113: Phase increase (position ctrlr.)
114: Second-order lead lag filter
(position ctrlr.)
Default: 0
vCtrlFiltFreq4 Center frequency of band-rejection filter for Allowed in 1337
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 band-rejection filter for filter 4 Allowed in 1337
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 of band-rejection filter for filter 4 Allowed in 1337
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

886 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType5 Filter type for filter 5 Allowed in 1337
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: First-order lead lag filter (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Second-order lead lag filter (speed
ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: First-order lead lag filter (position
ctrlr.)
111: PT2 low-pass filter (position ctrlr.)
112: Band-rejection filter (position
ctrlr.)
113: Phase increase (position ctrlr.)
114: Second-order lead lag filter
(position ctrlr.)
Default: 0
vCtrlFiltFreq5 Center frequency of band-rejection filter for Allowed in 1337
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 1337
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 of band-rejection filter for filter 5 Allowed in 1337
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

September 2015 4.11 List of machine parameters 887


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlFiltType6 Filter type for filter 6 Allowed in 1337
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: First-order lead lag filter (speed ctrlr.)
101: PT2 low-pass filter (speed ctrlr.)
102: Band-rejection filter (speed ctrlr.)
103: Phase increase (speed ctrlr.)
104: Second-order lead lag filter (speed
ctrlr.)
11: PT2 low-pass filter (position ctrlr.)
12: Band-rejection filter (position ctrlr.)
13: Phase increase (position ctrlr.)
14: First-order lead lag filter (position
ctrlr.)
111: PT2 low-pass filter (position ctrlr.)
112: Band-rejection filter (position
ctrlr.)
113: Phase increase (position ctrlr.)
114: Second-order lead lag filter
(position ctrlr.)
Default: 0
vCtrlFiltFreq6 Center frequency of band-rejection filter for Allowed in 1337
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 1337
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 1337
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

888 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlSwitchOffDelay Time between the braking signal and switch- Allowed in 1533
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 1533
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 1548
strobe
400928 Monitoring time for the braking process. If after
(SYNC)
the time has expired the axes are still in motion,
MP2173.x
the pulses of the power modules are switched LEVEL 3
off.
597110-05
The time must be greater than the maximum
electrical braking time for the axis/spindle.
Format: Numerical value
Input: 0.1 to 100 [s]
With max. 9 decimal places
Default: 3 [s]

September 2015 4.11 List of machine parameters 889


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
vCtrlSpinSpeedTol Permissible spindle speed shortfall Allowed in 1593
strobe
400930 Permissible lower limit of the actual spindle speed
(SYNC)
multiplied by a percentage of the nominal speed.
MP3540
If the current spindle speed falls below the LEVEL 3
(optional parameter) defined value, the TNC 640 outputs an error
597110-05
message.
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 1593
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 1593
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 from CC 61xx) strobe
400932
Format: Bit-coded value LEVEL 3
MP2561.x
Input: 597110-05
(optional parameter)
 Bit 0 = 0:
Maximum input frequency for motor encoders
= 400 kHz
 Bit 1 = 0:
Maximum input frequency for motor encoders
= 800 kHz
 Bit 1 to bit 32:
Reserved, assign 0
Default: 0

890 HEIDENHAIN Technical Manual TNC 640


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 1367
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 1367
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 1345
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

September 2015 4.11 List of machine parameters 891


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
iCtrlDiffFreqFF Only CC 61xx/UEC 11x: Allowed in 1370
Cutoff frequency for current controller strobe
401007
feedforward (SYNC)
MP2440.x
Format: Numerical value LEVEL 3
(optional parameter)
Input: 0 Hz to fg 597110-03
0: Current controller feedforward
disabled
The cutoff frequency fg depends on the PWM
frequency (for table, see page 1368).
Default: 0
iCtrlAddInfo Only CC 61xx/UEC 11x: Dead-time Allowed in 1370
compensation strobe
401008
(SYNC)
Format: Bit-coded value
MP2450.x
LEVEL 3
Input:
(optional parameter)
597110-03
 Bit 0 = 0:
Compensation not active
 Bit 0 = 1:
Compensation active
Default: 0
CfgControllerTol
Position and speed tolerances in the servo control
posTolerance Positioning window Allowed in 1508
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 1508
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 1590
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

892 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
timeSpeedOK Hysteresis time for monitoring the speed Allowed in 1590
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 synchronism Allowed in 1603
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 synchronism Allowed in 1603
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 1694
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 1710
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 energy recovery

September 2015 4.11 List of machine parameters 893


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ampBusVoltage DC-link voltage Uz Program 1709
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 in [V]
(0 to 3 000 [V] with max. 9 decimal
places)
Regenerative inverter: 650 [V]
Non-regenerative inverter:
565 [V]
Default: 650 [V]
ampVoltProtection Field weakening for synchronous motors Program 1405
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

894 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ampReadyWaitTime Waiting time between the switch-on of the Program 1361
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 power Program 1520
module run is
401208
locked
Format: Numerical value
MP2304.x (RUN)
Input: 0 to 1?000
(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

September 2015 4.11 List of machine parameters 895


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
powStatusCheckOff Suppress error messages from the Program 1531
HEIDENHAIN supply units run is
401209
locked
Format: Bit-coded value (32 bits)
MP2195 (RUN)
Input:
(optional parameter) LEVEL3
 Bit 0 - Status signals that are already active
during control power-up 597110-01
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 for CC 61xx/UEC 11x)
0: Do not suppress error message
1: Suppress error message
 Bit 8 - PF.PS.DC signal
(only for 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 for CC 61xx/UEC 11x)
0: Uz monitoring or LIFTOFF function is active
1: Uz monitoring or LIFTOFF function is not
active
 Bit 10 - Spindle power is reduced if maximum
power is exceeded when supplied by the same
UV
0: Power reduction is not active
1: Power reduction is active if maximum power
is exceeded
Default: All bits = 0

896 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
ampAdditionalInfo Configure the switch position of the current Program 1695
sensor (column S of the inverter.inv power run is
401210
module table). locked
(optional parameter) (RUN)
Is required for the D series of HEIDENHAIN
inverters (UM 1xx D) in order to use the higher LEVEL3
currents at the lower PWM frequencies.
597110-04
Format: Bit-coded value (32 bits)
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 the inverter.inv table = 0
1: Column S in the inverter.inv table = 1
 Bit 1 - reserved
 Bit 2 - reserved
 Bit 3 - Inverter manufacturer:
0: Other inverter manufacturer
1: HEIDENHAIN inverter
 Bit 4 to bit 31 - reserved
Default: No value
plugAndPlay Evaluation of the electronic ID labels Program 1670
run is
117201 With each new start, the TNC 640 checks
locked
whether the connected inverter has been
MP7690, bit 0 (RUN)
modified and detects this automatically (global
(optional parameter) configuration via CfgHardware/plugAndPlay). The LEVEL3
evaluation of the electronic ID label can be
597110-09
deactivated with this parameter for individual
inverters.
 Inactive
Evaluation of the electronic ID label for this
inverter is deactivated.
 Global setting
The setting from CfgHardware/plugAndPlay is
active.
Default: Active

September 2015 4.11 List of machine parameters 897


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgServoMotor
Specifies the settings for the motor
motName Name of the motor Program 1668
run is
401301 Format: Selection menu
locked
MP2200.x Input: Select the name of the motor from (RUN)
the
Condition:
motor table.
REF
When making an entry in
MP_motName, LEVEL3
the TNC 640 opens the currently
597110-01
active motor table. Select the
the name of the motor.
Default: –
starDelta Motor with wye/delta switchover Program 1406
run is
401302 Format: Selection menu
locked
Input: (RUN)
 star-connection: LEVEL3
Wye connection
597110-01
 delta-connection:
Delta connection
Default: star-connection

898 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motEncCheckOff Monitoring functions Program
run is
401303 Format: Bit-coded value (32 bits)
locked
MP2220, MP2221 Input: (RUN)
 Bit 0 – Monitoring of the reference mark: LEVEL3
0: Monitoring is active 1572
1: Monitoring is inactive 597110-01
 Bit 1 – Monitoring of the direction of rotation:
0: Monitoring is active 1572
1: Monitoring is inactive
 Bit 2 – Power limit of spindle with ERR.IZ.GR
(only for HEIDENHAIN inverters, except UE
2xx): 1377
0: Power limit is active
1: Power limit is inactive
 Bit 3 – Switching off the controller when the
motor brakes are activated 1532
0: Suppress oscillations
1: Oscillations are allowed
 Bit 4 – Monitoring of excessive motor
temperature 1555
0: Monitoring is active
1: Monitoring is inactive
 Bit 5 – Monitoring of insufficient motor
temperature 1555
0: Monitoring is active
1: Monitoring is inactive
 Bit 7 – Monitoring of input frequency of the
speed encoder 1555
0: Monitoring is active
1: Monitoring is inactive
 Bit 8 – Adjust mechanical offset by gradually
increasing the kv factor 1555
0: Function is active
1: Function is inactive
 Bit 9 to bit 31 – reserved
Default: All bits = 0
motFactorI2t Reference value for I2t monitoring of motor Program 1515
run is
401304 Format: Numerical value
locked
MP2302.x Input: 0 to 1?000 (RUN)
[rated current of motor or
LEVEL3
stall current] with a max. of 9
decimal places 597110-01
0: Monitoring is switched off
1: Rated current of motor as
reference value
Default: 1

September 2015 4.11 List of machine parameters 899


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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 1372
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 current limit 597110-02
Default: 0
motPbrMax Maximum braking power Program 1377
run is
401307 Format: Numerical value
locked
MP2391.x Input: 0 to 3 000 [kW] (RUN)
With max. 9 decimal places
LEVEL3
0: Braking power is not
limited 597110-01
Default: 0
motPMax Power limiting of motor Program 1377
run is
401308 Format: Numerical value
locked
MP2392.x Input: 0 to 3 000 [kW] (RUN)
With max. 9 decimal places
LEVEL3
0: No power limiting
597110-01
Default: 0
motPMax2 Max. motor power after PLC request Program 1377
run is
401325 Format: Numerical value
locked
MP2393.x Input: 0 to 3 000 [kW] (RUN)
With max. 9 decimal places
LEVEL3
Default: 0
597110-06
motPbrMaxAcFail Maximum braking power during a power fail Program 1377
run is
401309 Format: Numerical value
locked
MP2394.x Input: 0 to 3 000 [kW] (RUN)
With max. 9 decimal places
LEVEL3
0: Braking power is not
limited 597110-01
Default: 0

900 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motMMax Maximum torque Program 1378
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 1691
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: –

September 2015 4.11 List of machine parameters 901


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motEncType Overwrite the type of speed encoder from the Program 1668
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 w/o 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 1669
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

902 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 1669
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
REF
active
>0: Line count of the motor LEVEL3
encoder
597110-02
Default: 0
motTypeOfFieldAdjust Rough determination of the field angle Program 1680
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 after consultation with
HEIDENHAIN.
(For very noisy encoder signals.)
Default: mode 0

September 2015 4.11 List of machine parameters 903


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motFieldAdjustMove Field-angle adjustment mode Program 1676
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 without 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 on CC 424, CC 61xx.
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

904 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 1687
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 does not need to be 597110-01
determined or was not yet
determined
Default: 0
motEncSerialNumber Control or encoder identification for the field Program 1687
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 does not need to be
determined or was not yet 597110-01
determined
Default: 0
motAdditionalInfo Reserved, do not assign Program –
run is
401318 Format: Numerical value
locked
(optional parameter) Input: Reserved (RUN)
Default: 0 LEVEL3
motSpeedSwitchOver Shaft speed for PWM switchover Program 1411
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 1411
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

September 2015 4.11 List of machine parameters 905


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
motSeriesInduct Overwrite the inductance of the series reactor Program 1704
run is
401328 Overwrites the value L from the motor table.
locked
MP2208.x Format: Numerical value (RUN)
(optional parameter) Input: Inductance of the 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 1697
motor run is
401329
locked
Overwrites the value J 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
motTorqueRipple Name of the file for "torque ripple Allowed in 1417
compensation" (TRC) strobe
401331
(SYNC)
Is entered by TNCopt during TRC adjustment
MP2260.x
LEVEL3
Format: String
(optional parameter)
597110-10
Input: File name, generated by TNCopt
xx_<MotorNameFromMotorTable>.TRC
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

906 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 1670
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
The setting from CfgHardware/plugAndPlay is
active.
Default: Active

September 2015 4.11 List of machine parameters 907


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgControllerComp
Specifies compensation settings in the controller unit
compFriction0 Friction compensation at low speed Allowed in 1159
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 1159
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 1159
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
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 1355
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

908 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compAcc Acceleration feedforward control Allowed in 1349
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 1351
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 1351
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 1354
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
compActDampFact Factor for active damping of low-frequency Allowed in 1346
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 1346
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

September 2015 4.11 List of machine parameters 909


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compActDampFreq Separation frequency for Crossover Position Allowed in 1420
Filter (CPF) strobe
401416
(SYNC)
For passive damping of machine resonances.
MP2609.x
Usable 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
compTorsionFact Torsion compensation between position Allowed in 1419
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
compTimeLimit Limitation of values for backlash, stiction and Allowed in 1144
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 Allowed in 1417
controller or current controller strobe
401414
(SYNC)
Format: Bit-coded value (32 bits)
MP2261.x
LEVEL3
Input:
(optional parameter)
 Bit 0 - Torque ripple compensation
0: Torque ripple compensation switched on
1: Torque ripple compensation switched off
 Bit 1 - Kinematic compensation
0: Kinematic compensation switched on
1: Kinematic compensation switched off
 Bit 2 - Position-dependent torsion compen-
sation
0: Position-dependent torsion compensation
switched on
1: Position-dependent torsion compensation
switched off
 Bit 3 to bit 31: reserved
Default: All bits = 0

910 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 1450
functions strobe
401415
(SYNC)
Format: Bit-coded 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
compAccMode Specify ACC damping mode Allowed in 1472
strobe
401418 Only valid if bit 4 is set in MP_enhancedComp.
(SYNC)
MP2710.x Format: Numerical value
LEVEL3
(optional parameter) Input:
597110-06
 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

September 2015 4.11 List of machine parameters 911


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
compFileNameIndex Index of the file from MP_enhancedComp for Allowed in 1424
AVD, CTC, LAC, PAC strobe
401419
(SYNC)
Index assignment for compensation files
MP2720.x
LEVEL3
Format: Selection menu
(optional parameter)
597110-08
Input, example for AVD:
 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

912 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 1228
run is 1242
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 1228
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 1228
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
typeOfOffset Specifies how the position offset between Program 1228
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
parameter MP_posOffset is taken as the
absolute position offset. When the coupling
closes, there is an immediate compensating
movement.
Default: None

September 2015 4.11 List of machine parameters 913


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
posOffset Value of the position offset with closed Program 1228
coupling run is
402305
locked
Format: Numerical value
MP855.x (RUN)
Input:
LEVEL3
Position offset [mm] or [°] that is compensated
and maintained if MP_typeOfOffset = Parameter 597110-04
is set
Decimal places:Max. 9
Default: 0
offsetFeed The velocity at which an offset between the Program 1228
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 1228
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
ultimatePosDiff Synchronization monitoring—non-deletable Program 1228
emergency stop message run is
402308
locked
Format: Numerical value
(RUN)
Input: Maximum permissible offset in
LEVEL3
[mm] or [°]
With max. 9 decimal places 597110-04
Default: 0
scalingFactor Scaling factor for calculating the slave position Program 1228
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

914 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
accFilterTime Time constant for filtering the acceleration Program 1228
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 1246
for master-slave torque control (entry for the run is
402310
slave axis) locked
MP2900.x (RUN)
Format: Numerical value
LEVEL3
Input: –1 000 to 1 000 [Nm]
With max. 9 decimal places 597110-04
Default: 0
propGain P factor of the torque controller for master- Program 1246
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 1236
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
inverseVelocity Reversal of the algebraic sign of the nominal Program 1246
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

September 2015 4.11 List of machine parameters 915


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
autoBrakeTest Motor brake test for synchronized axes Program 1249
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

916 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 Functional description for RTC Program 1129
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 page1126
597110-08
Default: No value
typeOfOffset Handling of position offset with RTC Program 1129
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
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
offsetFeed Maximum permissible speed when Program 1129
compensating the offset run is
403403
locked
Format: Numerical value
(RUN)
Input: 0 to 9960 [mm/min]
LEVEL3
With max. 9 decimal places
597110-08
Default: 960
maxFeed Maximum permissible speed for RTC Program 1130
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 of CfgFeedLimits/
maxFeed used to
100%)

September 2015 4.11 List of machine parameters 917


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
maxAcc Maximum permissible acceleration for RTC Program 1130
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 of CfgFeedLimits/
maxAcceleration used to
100%)
filterTime Mean-value filter for formula result Program 1130
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 switched off)
limiter Limit for the result of the RTC formula Program 1130
run is
403409 The calculation result, applied to the axis in the
locked
form of a position offset, is limited to the
(optional parameter) (RUN)
maximum value you enter here. This makes it
possible, for example during commissioning, to LEVEL3
limit the results of an RTC calculation to a
597110-10
maximum distance traversed.
Format: Numerical value
Input: 0 to 100 [mm]
With max. 9 decimal places
Default: 0 (= No limitation)
testMode Activate the test mode for RTC Program 1131
run is
403406 Format: Selection menu
locked
(optional parameter) Input: (RUN)
 TRUE LEVEL3
Test mode active.
The formula calculation result is only output in 597110-09
the integrated oscilloscope (RTC channel) and is
not applied to the axis.
 FALSE
Test mode inactive
Default: FALSE

918 HEIDENHAIN Technical Manual TNC 640


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgCCAuxil (optional parameter)
Extended settings for the CC controller unit (optional);
Use only after consultation with HEIDENHAIN.
miscCtrlFunct0 Special controller functions Change at 1408
any time
402201 Format: Bit-coded 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 = When the drive is switched off before the
wye-delta switchover, the motor
is actively demagnetized
Default: No value
miscCtrlFunct1 Special controller functions Change at 1378
any time
402202 Format: Bit-coded value (16 bits) 1408
(NOTHING)
MP2223.x Input: 1614
LEVEL3
(optional parameter)  Bit 1 – If a torque is specified through 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.
0 = Inactive
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

additionalFileIO Overwriting of parameters with settings from Change at –


files any time
402204
(NOTHING)
Format: Bit-coded value (16 bits)
MP2800.x
LEVEL3
Parameter reserved. Use only after consultation
(optional parameter)
with HEIDENHAIN.
(reserved parameter)

September 2015 4.11 List of machine parameters 919


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
CfgAxParSafety (optional parameter)
Axis-specific functional safety (FS) settings;
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 Manual –1: Axis is not safe
for Functional Safety FS).
Default: 0
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 Manual Input: 0 to 30 [mm] or [°]
for Functional Safety FS). With max. 9 decimal places
(optional parameter) Default: 1
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 Manual Input: -99 999.9999 to 99 999.9999
for Functional Safety FS). [mm] or [°]
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 FS). Default: 1
(optional parameter)

920 HEIDENHAIN Technical Manual TNC 640


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
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 FS). Default: No value
(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 Manual Default: 10
for Functional Safety FS).
(optional parameter)
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 Manual Default: 2000
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 Manual Default: 2000
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 Manual Default: 2000
for Functional Safety FS).
(optional parameter)

September 2015 4.11 List of machine parameters 921


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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 Manual Default: 500
for Functional Safety FS).
(optional parameter)
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 Manual Default: 500
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 Manual Default: 500
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 FS). Default: 0
(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 FS). Default: 0
(optional parameter)

922 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 Manual Default: 0.5
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 Manual Default: 2
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 FS). Default: 1
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 FS). Default: 1
(optional parameter)
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 Manual Default: 0.5
for Functional Safety FS).
(optional parameter)

September 2015 4.11 List of machine parameters 923


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
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 bis 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical Manual
for Functional Safety FS). Default: 2
(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 bis 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical Manual
for Functional Safety FS). Default: 5
(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 bis 10 000 [rev.] 597110-06
with functional safety FS—
With max. 9 decimal places
observe the Technical Manual
for Functional Safety FS). Default: 5
(optional parameter)
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)

924 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
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 Manual 597110-06
for Functional Safety FS). Format: Selection menu
(optional parameter) Input:
 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 functional safety (FS) settings;
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 character
observe the Technical Manual
Default: No value
for Functional Safety FS).
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 Manual
Format: Numerical value
for Functional Safety FS).
Input: 0 to 999
Default: 0

September 2015 4.11 List of machine parameters 925


Parameter Function and input Reaction/ Page
MP number Access
iTNC MP number SW
version
dataSetAccepted 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 Manual
 accepted
for Functional Safety FS). Data record accepted
 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 Manual
Default: 0
for Functional Safety FS).

926 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 565
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 of max. 18 characters
excludeList List with configuration objects to be excluded RESET 565
109502 Cancel the reference at LEVEL3
CfgKeySynonym/relatedTo for the entered
configuration objects shown in the list.
Format: List [0...50]
Input: Key names to be excluded

September 2015 4.11 List of machine parameters 927


4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers

Attention

Some of the machine parameters on the iTNC 530 have different units of
measurement than on 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 parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
MP10, MP12 axisMode 300105 1001
Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
MP20.0 checkAbsolutPos 400701 1059
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP110.x, MP111.x posEncoderInput 400008 1049
MP112.x, MP113.x speedEncoderInput 400012 1054
MP115.0, MP116.0 posEncoderSignal 400009 1051
MP115.1, MP116.1 posEncoderResistor 400011 1052
MP115.2, MP116.2 posEncoderFreq 400010 1051
MP120.x, MP121.x inverterInterface 400013 1049
MP210 signCorrActualVal 400001 1056
MP331.x posEncoderDist 400005 1039
MP332.x posEncoderIncr 400006 1040

928 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP334.x posEncoderRefDist 400416 1040
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP340.x genExtIntPolFactor 400017 1045
System
CfgKeyboard
MP410.3 axisKeyIV 101804 –
MP410.4 axisKeyV 101805 –
Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
MP420 isHirth 300103 1138
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 –

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 929
iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisComp
MP708 backlashDistance 401808 1143
MP709 backlashTimeConst 401809 1143
MP709.x filterTime 401805 1143
MP710.x backLash 401802 1143
MP720.x linearCompValue 401803 1147
MP730 compType 401804 1147
MP750.x posCtrlRevErr 401806 1145
MP752.x posCtrlRevErrTime 401807 1145
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
MP850.x masterAxis 402301 1233
MP855.x posOffset 402305 1234
MP855.x maxPosDiff 402307 1235
MP860.x, bit 0 typeOfOffset 402304 1234
MP860.x, bit 2 autoBrakeTest 402316
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
MP910.x swLimitSwitchPos 400501 1105
MP920.x swLimitSwitchNeg 400502 1105
Axes
PhysicalAxis
[Key name of the axis]
CfgMachDatumExtra
MP950.x distFromMachDatum 300501 1983
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP960.x refPosition 400403 1268

4.12.2 Positioning and feedback control

930 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
MP1010.x maxFeed 400302 1300
MP1010.x rapidFeed 400303 1300
MP1020.x manualFeed 400304 1301
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerTol
MP1030.x posTolerance 401101 1508
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP1040 signCorrNominalVal 400002 1056
MP1054.x distPerMotorTurn 400004 1033
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
MP1060.x maxAcceleration 400305 1301
Channels
ChannelSettings
[Key name of the channel]
CfgLaPath
MP1070 maxTransAcc 201514 1298
MP1070 maxTransAccHi 201515 1298
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 1304
MP1086.x axPathJerkHi 401704 1304
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerAuxil
MP1110.x checkPosStandstill 400602 1506
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerAuxil
MP1120.x chkPosHoldFieldAdj 400610 –

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 931
iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
MP1140.x movementThreshold 400705 1505
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerAuxil
MP1144.x maxPosDiff 400705 1502
System
CfgFilter
defaultPosition
MP1200 shape 100405 1288
defaultCutterLoc
shape 100406 1288
Channels
ChannelSettings
[Key name of the channel]
CfgLaPath
MP1202.0 pathTolerance 201506 1294
MP1202.1 pathToleranceHi 201507 1294
MP1205 reduceCornerFeed 201516 1305
System
CfgFilter
defaultPosition 100405
MP1210, MP1211, frequency 1289
MP1212, MP1213 defaultCutterLoc 100406
frequency 1289
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 1302
System
CfgFilter
defaultPosition 100405
MP1262, MP1263 maxHscOrder 1289
defaultCutterLoc 100406
maxHscOrder 1289
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionFilter
MP1262, MP1263 axisPosition
maxHscOrder 401606 1289
axisCutterLoc
maxHscOrder 401607 1289

932 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP1320 refDirection 400408 1258
MP1330.x refFeedLow 400406 1258
MP1330.x refFeedHigh 400407 1258
MP1350.x refType 400401 1257
Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
MP1391, ..92, ..96 feedForwardFactor 400806 1314
MP1410.x servoLagMin1 400802 1499
MP1420.x servoLagMax1 400803 1499
MP1510.x, MP1810.x kvFactor 400801 1316
Channels
ChannelSettings
[Key name of the channel]
CfgLaPath
MP1522 filterFeedTime 201513 1278
Axes
ParameterSets
[Key name of the parameter set]
CfgPosControl
MP1820 servoLagGainFactor 400811 1316
MP1830 servoLagKinkSpeed 400812 –

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 933
4.12.3 PWM interface (DSP)

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
MP2100.x ampName 401201 1694
MP2150 ampAcFailSelection 401207 –
MP2160.x ampVoltProtection 401205 1405
MP2170 ampReadyWaitTime 401206 1361
MP2180.x ampPwmFreq 401204 1659
System
CfgCycleTimes
MP2172 watchdogTime 100303 ~
Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
MP2173.x vCtrlTimeSwitchOff 400928 –
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 1411
MP2188.x motSpeedSwitchBack 401320 1411
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
MP2190 ampBusVoltage 401203 1709
MP2191 ampPowerSupplyType 401202 1710
MP2192 limitOfDcVoltage 401211 –
MP2195 powStatusCheckOff 401209 –
System
CfgSupplyModule
[Key name of supply module]
MP2198 name 117201 1694

934 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2200.x motName 401301 1668
MP2202.x motStr 401313 1669
MP2204.x motDir 401312 1669
MP2206.x motEncType 401311 1668
MP2208.x motSeriesInduct 401328 1704
MP2209.x motInertia 401329 1697
Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
MP2210.x iCtrlMotVRedFact 401005 1345
MP2211.x iCtrlMotVRedSpeed 401006 –
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor 1377,
MP2220.x, (MP2221.x) motEncCheckOff 401303 1572
MP2221.x Axes
ParameterSets
[Key name of the parameter set]
CfgEncoderMonitor
checkRefDistance 400704 1573
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2230.x testBrakeCurrent 401323 –
MP2232.x testBrakeTolerance 401324 –
MP2236.x maxSpeedBrakeOpen 401326 –

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 935
iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2250.x motTypeOfFieldAdjust 401314 1680
MP2254.x motFieldAdjustMove 401315 1676
MP2256.x motPhiRef 401316 1687
MP2257.x motEncSerialNumber 401317 1687
CfgServoMotor
MP2260.x motTorqueRipple 401331 1417
CfgServoMotor
MP2302.x motFactorI2T 401304 1515
CfgPowerStage
MP2304.x ampFactorI2T 401208 1515
CfgSpeedControl
MP2308.x vCtrlSwitchOffDelay 400927 –
MP2309.x vCtrlSwitchOnDelay 400929 –
CfgServoMotor
MP2391.x motPbrMax 401307 1377
MP2392.x motPMax 401308 1377
MP2393.x motPMax2 401325 1377
MP2394.x motPbrMaxAcFail 401309 1377
MP2396.x motMMax 401310 1378
Axes
ParameterSets
[Key name of the parameter set]
CfgCurrentControl
MP2420.x iCtrlPropGain 401001 1367
MP2430.x iCtrlIntGain 401002 1367
MP2440.x iCtrlDiffFreqFF 401007 1370
MP2450.x iCtrlAddInfo, bit 0 401008

936 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgSpeedControl
MP2500.x vCtrlPropGain 400901 1329
MP2510.x vCtrlIntGain 400902 1329
MP2512.x vCtrlIntTime 400903 1350
MP2520.x vCtrlDiffGain 400904 1331
MP2530.x vCtrlFiltLowPassT 400905 –
MP2540.x, MP2542.x vCtrlFiltDamping1 400910 1337
MP2543.x vCtrlFiltDamping2 400914 1337
MP2544.x vCtrlFiltDamping3 400918 1337
MP2545.x vCtrlFiltDamping4 400922 1337
MP2546.x vCtrlFiltDamping5 400926 1337
MP2547.x vCtrlFiltDamping6 400937 1337
MP2550.x, MP2552.x vCtrlFiltFreq1 400908 1337
MP2553.x vCtrlFiltFreq2 400912 1337
MP2554.x vCtrlFiltFreq3 400916 1337
MP2555.x vCtrlFiltFreq4 400920 1337
MP2556.x vCtrlFiltFreq5 400924 1337
MP2557.x vCtrlFiltFreq6 400935 1337
MP2560.x vCtrlEncInputFilt 400906 1338
MP2561.x vCtrlEncInputFunc 400932 1651
MP2562.x vCtrlFiltType1 400907 1337
MP2563.x vCtrlFiltType2 400911 1337
MP2564.x vCtrlFiltType3 400915 1337
MP2565.x vCtrlFiltType4 400919 1337
MP2566.x vCtrlFiltType5 400923 1337
MP2567.x vCtrlFiltType6 400934 1337
MP2572.x vCtrlFiltBandWidth1 400909 1337
MP2573.x vCtrlFiltBandWidth2 400913 1337
MP2574.x vCtrlFiltBandWidth3 400917 1337
MP2575.x vCtrlFiltBandWidth4 400921 1337
MP2576.x vCtrlFiltBandWidth5 400925 1337
MP2577.x vCtrlFiltBandWidth6 400936 1337
Axes
ParameterSets
[Key name of the parameter set]
CfgServoMotor
MP2590.x motEmergencyStopRamp 401306 1372

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 937
iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
MP2600.x compAcc 401406 1349
MP2602.x compIpcT1 401407 1351
MP2604.x compIpcT2 401408 1351
MP2606.x compIpcJerkFact 401409 1351
MP2607.x compActDampFact 401410 1347
MP2608.x compActDampTime 401411 1347
MP2609.x compActDampFreq 401416 1422
MP2610.x compFriction0 401401 1159
MP2612.x compFrictionT1 401402 1159
MP2614.x compFrictionT2 401403 1159
MP2620.x compFrictionNS 401404 –
MP2630.x compCurrentOffset 401405 1355
MP2640.x compTorsionFact 401413 1419
MP2690.x compTimeLimit 401417
MP2700.x enhancedComp 401415 1450
MP2710.x compAccMode 401418 1472
MP2720.x compFileNameIndex 401419 –
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisCoupling
MP2900.x torqueBias 402310 1246
MP2910.x propGain 402311 1246
MP2912.x compOnlySlave 402317 1236

938 HEIDENHAIN Technical Manual TNC 640


4.12.4 Spindle control (1st spindle)

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of spindle parameter set]
CfgAxisHardware
MP3130 signCorrNominalVal 400002 1056
MP3140 signCorrActualVal 400001 1056
MP3142 posEncoderIncr 400006 1040
Axes
ParameterSets
[Key name of spindle parameter set]
CfgFeedLimits
MP3240.1 minFeed 400301 1300
1590
Axes
ParameterSets
[Key name of spindle parameter set]
CfgSpindle
MP3350 relSpeedTolerance 401513 1592
MP3351 absSpeedTolerance 401514 1592
Axes
ParameterSets
[Key name of spindle parameter set]
CfgFeedLimits
MP3411.x maxAcceleration 400305 1301
Axes
ParameterSets
[Key name of spindle parameter set]
CfgControllerTol
MP3420 posTolerance 401101 1508
Axes
ParameterSets
[Key name of the parameter set]
CfgReferencing
MP3430 refPosition 400403 1268
Axes
ParameterSets
[Key name of spindle parameter set]
CfgPosControl
MP3440.x kvFactor 400801 1316
Axes
ParameterSets
[Key name of spindle parameter set]
CfgFeedLimits
MP3510.7 nominalSpeed 400308 2443
MP3515.x maxFeed 400302 1300
MP3520.1 M19MaxSpeed 400307 1564

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 939
iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
Axes
ParameterSets
[Key name of spindle parameter set]
CfgSpindle
MP3530, MP13530 incrPowForRoughing 401516 1594
Axes
ParameterSets
[Key name of spindle parameter set]
CfgSpeedControl
MP3540 vCtrlSpinSpeedTol 400930 1593
MP3542 vCtrlSpinMinSpeed 400931 1593
MP3550 delayEmStopSpin 400933 1593

940 HEIDENHAIN Technical Manual TNC 640


4.12.5 Integrated PLC

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
System
PLC
CfgPlcPeriphery
MP4020 pt100Discrete 103404 –
MP4030.0 plNumber 103401 –
System
DisplaySettings
CfgShutDown
MP4040 shutdownOnConfig 101601 2084
MP4040 shutdownOnError 101602 2084
MP4040 shutdownOnUser 101603 2085
MP4040 shutdownOnOem 101604 2085
MP4041 powerOffPort 101606 2087
MP4042 powerOffDelay 101607 2087
Axes
ParameterSets
[Key name of the parameter set]
CfgPositionLimits
MP4050.x lubricationDist 400503 1106
System
PLC
CfgPlcPeriphery
MP4070 tempCompensation 103405 1155
System
PLC
CfgPlcTimer
[Key name of the timers]
MP4110.x, MP4120.x value 103502 2383
System
PLC
CfgPlcFastInput
MP4130.x number 103701 2396
MP4131.x significance 103702 2397

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 941
4.12.6 Serial interface

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
System
Network
Serial
CfgSerialInterface
[Key name of the
MP5020.3, bit 0 c 106703 2776
MP5020.3, bit 1 o 106708 2781
MP5020.3, bit 2 + bit 3 n 106706 2780
MP5020.3, bit 4 + bit 5 f 106704 2776
MP5020.3, bit 6 + bit 7 i 106705 2777
MP5020.3, bit 8 g 106709 2782
MP5030.1 u 106702 2775
MP5040.0 r 106701 2775
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 parameters machine parameters: MP numbers
Name and position in the tree structure
System
ProbeSettings
CfgTS
[Key name of spindle]
MP6160 mStrobeUTurn 122501 2297
MP6161 mStrobePos 122502 2297

942 HEIDENHAIN Technical Manual TNC 640


4.12.8 Tool touch probe for tool measurement

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
System
ProbeSettings
CfgTT
[Key name of the TT]
MP6500, bit 0 stylusType 122703 2302
MP6500, bit 4 spindleSpeedCalc 122711 2308
MP6500, bit 5 stopOnCheck 122717 2310
MP6500, bit 6 stopOnMeasurement 122718 2310
MP6500, bit 8 probingRoutine 122705 2306
MP6500, bit 11 adaptToolTable 122719 2310
MP6505.x probingDirRadial 122706 2303
MP6507 probingFeedCalc 122710 2308
MP6510.0 measureTolerance1 122715 2309
MP6510.1 measureTolerance2 122716 2309
MP6520 probingFeed 122709 2308
MP6530.x offsetToolAxis 122707 2303
CfgTTRoundStylus
MP6531.x stylusDimension 114202 2305
MP6540.0 safetyDistToolAx 114203 2304
MP6540.1 safetyDistStylus 114204 2304
CfgTT
MP6550 [Key name of the TT] 122708 2304
MP6560 rapidFeed 122704 2303
MP6570 spindleOrientMode 122712 –
MP6572 maxPeriphSpeedMeas 122714 2309
maxSpeed
MP6580.x, MP6581.x, CfgTTRoundStylus 114201 2306
MP6582.x centerPos

4.12.9 KinematicsOpt

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
Channels
ChannelSettings
[Key name of the channel]
CfgKinematicsOpt
MP6600 maxModification 204801 1212
MP6601 maxDevCalBall 204802 1212
MP6602 mStrobeRotAxPos 204803 1212

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 943
4.12.10 Tapping

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
Channels
ChannelSettings
[Key name of the channel]
CfgThreadSpindle
MP7120.0 thrdWaitingTime 113601 1611
MP7120.1 thrdPreSwitchTime 113602 1611
MP7160, bit 1 limitSpindleSpeed 113604 1609

4.12.11 Display and programming

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
System
CfgMachineSimul
MP7210 simMode 100201 1897
System
EditorSettings
CfgEditorSettings
MP7220 blockIncrement 105409
System
EditorSettings
CfgEditorSettings
MP7229.x maxLineGeoSearch 105408 1884
System
DisplaySettings
CfgDisplayLanguage
MP7230.0 ncLanguage 101301 1876
MP7230.1 plcDialogLanguage 101302 1876
MP7230.2 plcErrorLanguage 101303 1877
MP7230.3 helpLanguage 101304 1877
System
CfgPlcOperTimes
MP7237.0 displayPlcTimes 105001 2197
MP7237.1 resetPlcTimes 105002 2197
MP7237.2 resetNcTimes 105003 2197
MP7238.x textNumber 105004 2198
System
EditorSettings
CfgEditorSettings
MP7246, bit 1 warningAtDel 105407 1884
MP7246, bit 0 enableStraightCut 105411 1886

944 HEIDENHAIN Technical Manual TNC 640


iTNC 530 TNC 640 TNC 640 Page
machine parameters machine parameters: MP numbers
Name and position in the tree structure
System
ToolSettings
CfgToolUsage
MP7246, bit 2 createUsageFile 118701 2243
System
CfgAfc
MP7246, bit 3 enable 120001 1441
System
DisplaySettings
CfgDisplayData
MP7270 axisFeedDisplay 100806 1012
MP7280 decimalCharacter 100805 1012
System
EditorSettings
CfgEditorSettings
MP7281.x lineBreak 105404 1882
System
DisplaySettings
CfgPosDisplayPace
MP7290.x displayPace 101001 1013
MP7290.x displayPaceInch 101002 1013
System
CfgKeyboard
MP7296 presetWithAxisKey 101806 1985
System
DisplaySettings
CfgStatusAndQPar
MP7300 clearMode 100901 1869
System
DisplaySettings
CfgOsciColor
MP7365.0 background 101401 1795
MP7365.1 grid 101410 1798
MP7365.2 cursorText 101411 1798
MP7365.3 select 101409 1798
MP7365.4 channel1 101402 1796
MP7365.5 channel2 101403 1796
MP7365.6 channel3 101404 1796
MP7365.7 channel4 101405 1796
MP7365.8 channel5 101406 1797
MP7365.9 channel6 101407 1797

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 945
4.12.12 Machining and program run

iTNC 530 TNC 640 TNC 640 Page


machine parameters machine parameters: MP numbers
Name and position in the tree structure
Channels
ChannelSettings
[Key name of the channel]
CfgGeoCycle
MP7420, bit 4 posAfterContPocket 201007 1989
MP7430 pocketOverlap 201001 1989
CfgGeoTolerance
MP7431 circleDeviation 200901 1910
CfgGeoCycle
MP7441, bit 0 displaySpindleErr 201002 1990
MP7441, bit 2 displayDepthErr 201003 1990
MP7442 mStrobeOrient 201005 1991
Channels
ChannelSettings
[Key name of the channel]
CfgTCPM
MP7471 maxCompFeed 201303 1911
System
ToolSettings
CfgToolUsage
MP7483 allowToolDefCall 118705 2226
MP7484 magazineSeekList 118707 2227
MP7485 usageFactor 118704 2244
Channels
ChannelSettings
[Key name of the channel]
CfgRotWorkPlane
MP7500, bit 0 rotateWorkPlane 201201 1218
MP7500, bit 1 planeOrientation 201202 1219
MP7500, bit 2 autoMoveAxes 201204 1219
Channels
ChannelSettings
[Key name of the channel]
CfgPresetSettings
MP7500, bit 5 chkTiltingAxes 204601 1987
Channels
ChannelSettings
[Key name of the channel]
CfgRotWorkPlane
MP7500, bit 6 rotPreference 201206 1220

946 HEIDENHAIN Technical Manual TNC 640


4.12.13 Hardware

iTNC 530 TNC 640 TNC 640


machine parameters machine parameters: MP numbers
Name and position in the tree structure
System
CfgCycleTimes
MP7600.0 ipoCycle 100301 1312
MP7600.2, MP7602 plcCount 100302 2322
Axes
ParameterSets
[Key name of the parameter set]
CfgAxisHardware
MP7610 ctrlPerformance 400018 1658
System
CfgHandwheel
MP7640 type 100601 2144
MP7641, bit 2 plcPlusMinus 100612 2168
MP7641, bit 3 plcStartStop 100613 2168
Channels
ChannelSettings
[Key name of the channel]
CfgRotWorkPlane
MP7641, bit 4 enableVTaxis 201208 –
System
CfgHandwheel
MP7641, bit 5 plcInputs 100611 2167,
2162
MP7641, bit 7 plcTeachIn 100614 2169
MP7641, bit 8 plcCtrlKey 100615 2169
MP7641, bit 9 lockPlcSoftkeys 100616 2169
MP7650 countDir 100605 2153
MP7660 sensitivity 100606 2146
MP7670.1, MP7670.2, speedFactor 100607 2146
MP7670.3
Channels
ChannelSettings
[Key name of the channel]
CfgTCPM
MP7680, bit 6 toolRefPoint 201302 1911
CfgGeoCycle
MP7680, bit 12 apprDepCylWall 201004 1989
Axes
PhysicalAxis
CfgRollOver
MP7682 shortestDistance 300401 998

September 2015 4.12 Overview: iTNC 530 MP Numbers <–> TNC 640 MP Numbers 947
iTNC 530 TNC 640 TNC 640
machine parameters machine parameters: MP numbers
Name and position in the tree structure
System
CfgAutoStart
MP7683 autoStartEnabled 100701 1915
System
CfgHardware
MP7690 plugAndPlay 100109 1670
Axes
ParameterSets
[Key name of the parameter set]
CfgPowerStage
MP7690, bit 0 plugAndPlay 401212 1670
CfgServoMotor
MP7690, bit 1 plugAndPlay 401330 1670
System
CfgSupplyModule
MP7690, bit 2 plugAndPlay 117200 1670

948 HEIDENHAIN Technical Manual TNC 640


5 Modules and PLC operands

5.1 Overview of modules

Module Function SW vers. Page


9000/ Copy in the marker or word range 597110-01 2715
9001
9006 Set and start PLC timer 597110-01 2385
9010/ Read in the word range 597110-01 2716
9011/
9012
9019 Size of the processing stack 597110-01 2626
9020/ Write in the word range 597110-01 2717
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 575

September 2015 5.1 Overview of modules 949


Module Function SW vers. Page
9035 Read NC status information 597110-01 1870,
2160,
 Function 0: Editor main operating mode
2195,
 Function 2: Editor mode in background 1074
 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 111: Configuration of simulation mode
(programming station mode)
 Function 120: Status of the latest service files saving job
issued by the PLC (Module 9274)
 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

950 HEIDENHAIN Technical Manual TNC 640


Module Function SW vers. Page
9036 Write NC status information 597110-01 2157,
2194
 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: Lock handwheel operation for operating-
mode group 0...
 Function 24: Handwheel mode depends on the machine
mode for operating-mode 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 1069
 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 1072
9041 Read the axis coordinates (format 0.0001) 597110-01 1073
9045 Read the data from 3-D ROT 597110-04 1221
9046 Copy controller data to the PLC memory 597110-06 1341,
1462
9047 Reset or initialize controller algorithms 597110-06 1465
9048 Interrogate the operating states of axes 597110-05 1086
9049 Read position value and speed value of an axis 597110-03 1071
9050 Conversion from binary –> decimal 597110-01 2718
9051 Conversion from binary –> decimal (format) 597110-01 2719
9052 Convert decimal string to decimal number with an exponent 597110-01 2720
9053 Conversion from binary –> ASCII/hexadecimal 597110-01 2720
9054 Conversion from ASCII/hexadecimal –> binary 597110-01 2721
9060 M function status 597110-01 2431
9061 Status of non-modal M functions 597110-01 2432
9063 Activate/deactivate collision monitoring 597110-06 2133
9064 Status information about collision monitoring 597110-06 2134
9065 Status of the commissioning function 597110-05 1685
9066 Status of HEIDENHAIN hardware 597110-04 –
9067 Status of HEIDENHAIN software 597110-04 –

September 2015 5.1 Overview of modules 951


Module Function SW vers. Page
9070 Copy a number from a string 597110-01 2692
9071 Find the string length 597110-01 2693
9072 Copy a byte block into a string 597110-01 2693
9073 Copy a string into a byte block 597110-01 2694
9074 Load texts from error/dialog files into a PLC string 597110-09 2695
9075 Symbolic PLC operand, writing to 597110-09 2373
9076 Symbolic PLC operand, reading... 597110-09 2374
9080 Clear the small PLC window 597110-01 2062
9082 Display a string in the small PLC window 597110-01 2063
9083 Display a moving-bar diagram in the small PLC window 597110-01 2064
9084 Display PLC error message with additional data 597110-01 1954
9085 Display PLC error message 597110-01 1955
9086 Clear PLC error message 597110-01 1956
9087 Status of PLC error message 597110-01 1957
9088 Display the M functions in the status display 597110-01 2432
9090 Select a line in the pallet table 597110-01 2139
9091 Find the line number of a tool in the tool table 597110-01 2228
9092 Search for an entry in the tables selected for execution 597110-01 2208
(.T/.D/.TCH)
9093 Read data from tables selected for program run (.T/.D/.TCH) 597110-01 2211
9094 Write data into a tool and datum table 597110-01 2215
9095 Activate axis-error compensation 597110-01 1153
9096 Delete a line from the tool table 597110-01 2216
9097 Activate kinematics configuration 597110-04 1187
9098 Find active kinematics configuration 597110-04 1188
9100 Assign data interface 597110-01 2796
9101 Release data interface 597110-01 2797
9102 Status of data interface 597110-01 2798
9103 Transmit string through data interface 597110-01 2799
9104 Receive string through data interface 597110-01 2800
9105 Transmit binary data through data interface 597110-01 2801
9106 Receive binary data through data interface 597110-01 2802
9107 Binary data from receive buffer 597110-01 2803
9110 Transmit a message via LSV2 597110-01
9111 Receive a message via LSV2 597110-01 2804
9112 Transmit ASCII characters via data interface 597110-01 2805
9113 Receive ASCII characters via data interface 597110-01 2806

952 HEIDENHAIN Technical Manual TNC 640


Module Function SW vers. Page
9117 Reset a BIS C-6002 BALLUFF identification system 597110-04 –
9118 Read and convert data from a BIS C-6002 BALLUFF identi- 597110-04 –
fication system
9119 BIS C-6002 BALLUFF processor unit: Write tool data to a 597110-04 –
data carrier
9120 Position PLC axis 597110-01 1107
9121 Stop PLC axis 597110-01 1109
9122 Status of PLC axis 597110-01 1110
9123 Traverse the reference marks of PLC axes 597110-01 1111
9124 Feed rate override for PLC axis 597110-01 1113
9125 Stop PLC axis at next Hirth grid position 597110-01 1139
9126 Configure axis coupling 597110-04 1237
9127 Request status of an axis coupling 597110-04 1238
9128 Torque limiting by the PLC (in mA or %) 597110-04 1379
9129 Status of torque limiting by the PLC 597110-04 1380
9132 Assignment of operating panels (selection of override 597110-06 189
potentiometer)
9133 Download the internal ADCs 597110-01 1511
9142 Position preset for programmed axis 597110-04 994
9143 Activate motor brake test 597110-05 1540
9144 Configuration of the emergency stop test 597110-04 1553
9145 Actual-to-nominal value transfer 597110-01 1326
9146 Save and reestablish actual position values 597110-04 1615
9147 Set a reference value 597110-02 1253
9149 Read or set the commutation angle of an axis 597110-05 1690
9155 Switch axes from closed-loop to open-loop condition 597110-04 1084
9156 Switch axes from open-loop to closed-loop condition 597110-04 1085
9157 Transfer the status of the drive controller 597110-01 1363
9158 Torque limiting by the PLC (in mA) 597110-04 1381
9159 200 ms early warning for standstill of the drives 597110-01 1363
9160 Interrogate the status of temperature and I2t monitoring 597110-01 1520
9161 Enable the drive controller (current controller) 597110-01 1364
9162 Interrogate the status of the drive controllers (speed con- 597110-01 1364
trollers)
9163 Switch between wye/delta 597110-01 1599
9164 Read the actual speed value of a motor 597110-01 1329
9165 Sample the current motor temperature 597110-01 1512
9166 Read momentary utilization of drive motor 597110-01 1527
9167 Monitoring of DC-link voltage 597110-01 1709
9168 Read the commissioning status 597110-05 1716
9171 Spindle orientation (when using the symbolic API, use 597110-01 1587
Module 9414)
9173 Activate speed-dependent monitoring of the wye/delta 597110-01 1407
switchover

September 2015 5.1 Overview of modules 953


Module Function SW vers. Page
9174 Read momentary spindle status in reference to the wye/ 597110-01 1407
delta switchover
9180 Keystroke simulation 597110-01 2091
9181 Disable NC key by PLC 597110-01 2091
9182 Re-enable NC key through the PLC 597110-01 2092
9183 Disable NC key groups by PLC 597110-01 2092
9184 Re-enable locked NC key groups by PLC 597110-01 2093
9186 Call a soft-key function 597110-01 2094
9187 Status request of a soft-key call 597110-01 2094
9189 Shutting down the control 597110-01 2088
9190 Start the PLC operating hours counter 597110-01 2198
9191 Stop the PLC operating hours counter 597110-01 2198
9192 Transfer the operating hours counter 597110-01 2199
9193 Set the operating hours counter 597110-01 2199
9194 Alarm when operating time exceeded 597110-01 2200
9196 Find the PLC cycle time 597110-01 2322
9197 Start cyclic timers 597110-01 2386
9199 Measure PLC run times, trigger PLC run time errors 597110-10 2322
9203 Activate PLC soft-key menu 597110-02 2070
9204 Refresh the soft-key menu 597110-02 2072
9208 Interrogate the status information of PLC soft keys 597110-02 2072
9216 Pop-up window with tool selection list 597110-05 2231
9217 Display pop-up window for messages 597110-05 1964
9220 Reference mark, traversing 597110-01 1255
9221 Start a PLC positioning movement 597110-01 1114
9222 Status request of a PLC positioning movement 597110-01 1116
9223 Free rotation (not for NC axes during program run) 597110-01 1866
9224 PLC positioning movements, stopping 597110-01 1117
9226 Set the status for an axis 597110-03 1082
9227 Position auxiliary axes and NC axes 597110-04 1118
9228 Coupling function of auxiliary axes 597110-08 1132
9229 Status of coupling function of auxiliary axes 597110-08 1134
9231 Compensation of thermal expansion 597110-01 1156
9240 Open a file 597110-01 2502
9241 Close a file 597110-01 2503
9242 Position in a file 597110-01 2504
9243 Read from a file line by line 597110-01 2505
9244 Write to a file line by line 597110-01 2506
9245 Read a field from a table 597110-01 2507
9246 Write to a field in a table 597110-01 2508
9247 Search for a condition in a table 597110-01 2509
9248 Copy, rename or delete a file 597110-01 –
9249 Transfer BS variable "errno" 597110-01 2510

954 HEIDENHAIN Technical Manual TNC 640


Module Function SW vers. Page
9250 Start the table editor by PLC 597110-05 2514
9251 Stop the table editor by PLC 597110-05 2516
9252 Position the cursor in the table editor 597110-05 2517
9255 Read a field from a table 597110-01 2511
9256 Write to a field in a table 597110-01 2512
9260 Receive events and wait for events 597110-01 2701
9261 Send events 597110-01 2703
9262 Context change between spawn processes 597110-01 2704
9263 Interrupt a spawn process for a defined time 597110-01 2704
9264 Wait for a condition 597110-01 2705
9270 Read an entry from the CfgOemString configuration object 597110-02 2594
9271 Write an entry to the CfgOemString configuration object 597110-02 2595
9274 Generating service files 597110-10 1947
9275 Write ASCII data into the log 597110-01 1960
9276 Write operand contents into the log 597110-01 1961
9277 Write data into the OEM log 597110-01 1942
9279 Shutdown by PLC 597110-01 2089
9280 Start the NC macro (Run pallet entry) 597110-04 2141
9281 Select a line in the pallet table 597110-01 2140
9282 Run a tool usage test for a pallet table 597110-05 2245
9283 Generate a tool usage file 597110-09 2247
9285 Set OEM access rights 597110-04 1903
9286 Select the VNC participant and control the focus assign- 597110-06 2746
ment if there are several operator terminals
9287 General status requests regarding VNC clients 597110-06 2748
9288 Status requests regarding an individual VNC client 597110-06 2750
9290 Select the NC main program 597110-03 1917
9291 Start an NC macro 597110-02 2606
9300 Lock and release the pocket table 597110-02 2217
2238
9301 Determine line number in pocket table 597110-02 2239
9302 Search for a vacant pocket in the tool magazine 597110-02 2240
9304 Copy OEM values from the pocket table 597110-02 2218
9305 Move tools in the pocket table 597110-02 2219
9306 Move tools between magazines 597110-02 2220
9311 Friction compensation 597110-05 1160
9320 Status of the NC program end 597110-02 –
9321 Find the current block number 597110-01 1922
9322 Query information of the NC program 597110-02 1923
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 2234

September 2015 5.1 Overview of modules 955


Module Function SW vers. Page
9341 Clear, reserve and assign magazine pockets 597110-02 2235
9342 Find magazine and pocket numbers 597110-02 2237
9343 Compile and activate magazine rules 597110-02 2238
9346 Query the CC data of an axis 597110-10 1343,
1467
9350 Read data from the tool table 597110-04 2212
9351 Write data to tool table 597110-04 2214
9355 Query tool life 597110-05 2224
9356 Modify tool life information 597110-10 2225
9360 Monitor the temperature of the power modules 597110-01 1514
9363 Activate brake test for an axis by selecting the axis brake(s) 597110-08 1542
9367 I2t monitoring 597110-01 1521
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 SIE- 597110-01 –
MENS 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 1966
9391 Display an error message with additional offset 597110-04 1966
9392 Display an error message with additional offset and further 597110-04 –
parameters
9393 Read PLC column from the PET table 597110-09 1958
9403 Set a Q parameter (channel-specific) 597110-01 2556
9404 Beginning of a movement within an active strobe (channel- 597110-01 1928
specific)
9405 Conversion of symbolic operands 597110-01 2375
9406 Read symbolic operands 597110-01 –
9407 Give default tool number for an NC channel 597110-02 2240
9409 Set status information of an operating-mode group 597110-03 1905

956 HEIDENHAIN Technical Manual TNC 640


Module Function SW vers. Page
9410 Read spindle status 597110-01 1583
9411 Read spindle position / speed 597110-01 1074
9412 Stop the spindle 597110-01 1584
9413 Move the spindle 597110-01 1585
9414 Position the spindle 597110-01 1595
9415 Synchronize spindles 597110-09 1604
9416 Select gear range and assigned settings for spindle 597110-02 2441
9417 Set default shaft speed for spindle 597110-02 1586
9418 Set status for spindle 597110-02 1083
9419 Specify status for spindle (parameters can be specified in 597110-08 1620
addition to status)
9420 Measure PLC axes 597110-01 2289
9421 Interrogate the probing position 597110-01 2290
9422 Request information about current probing cycle 597110-03 2291
9425 Select a pallet file or an NC program as main program for an 597110-04 1906
operating-mode group
9427 Execute NC program as cycle (macro) 597110-04 2604
9429 Interrogate the status of the executed NC program 597110-04 1925
9430 Temporarily change the numeric value of a machine para- 597110-01 589
meter
9431 Read the numeric value of a machine parameter 597110-01 591
9432 Temporarily change the string value of a machine parameter 597110-01 592
9433 Read the string value of a machine parameter 597110-01 594
9434 Select parameter set 597110-01 611
9435 Determine the active parameter set 597110-01 612
9436 Change the numeric value of a machine parameter persi- 597110-05 595
stently
9438 Change the value of a machine parameter persistently 597110-05 597
9440 SQL: Open a transaction 597110-01 2533
9441 SQL: Save changes and end the transaction 597110-01 2534
9442 SQL: Find a record in the result set 597110-01 2535
9443 SQL: Get a record from the result set 597110-01 2536
9444 SQL: Change a record in the result set 597110-01 2537
9445 SQL: Read a single value in a table 597110-01 2538
9447 SQL: Delete record from result set 597110-01 2539
9448 SQL: Load column description 597110-01 2540
9449 SQL: Extract a value from a comma-separated list 597110-01 2541
9450 Execute SQL command 597110-01 2542
9451 SQL: Reject changes and end transaction 597110-01 2543

September 2015 5.1 Overview of modules 957


Module Function SW vers. Page
9452 SQL: Find next record in the result set of a query 597110-01 2544
9453 SQL: Pull binary data from the query result 597110-01 2545
9454 SQL: Update binary data in the result set of a query 597110-01 2546
9455 SQL: Read a single numeric value in a table 597110-01 2547
9458 SQL: Unload column description 597110-01 2548
9459 SQL: Change or insert a value in a list separated by comma 597110-01 2548
9465 Change options for the access to machine parameters 597110-10 600
9466 Handling of machine parameter subfiles 597110-10 577
9470 Status request of special operating modes and special 597110-05 1686
functions of an axis
9490 Select TT tool touch probe 597110-06 2300
9491 Assign input for TS touch probe 597110-06 2294
9492 Switch the touch probe on/off 597110-06 2284
9493 Read status information of TS/TT probes 597110-06 2285

958 HEIDENHAIN Technical Manual TNC 640


5.2 Overview of the PLC operands

5.2.1 Groups of the PLC operands

Group Type of Structure definitions API 3 API 4


structure
General data (page 959) ApiGen PlcApiGeneral X X
Operating modes (page 961) ApiOmg PlcApiOmg[OMG_COUNT] X X
Processing channels (page 962) ApiChn PlcApiChannel[CHANNEL_COUNT] X X
Axes (page 965) ApiAxis PlcApiAxis[AXIS_COUNT] X –
Spindles (page 967) ApiSpin PlcApiSpindle[SPINDLE_COUNT] X –
Axes and spindles (Page 969) ApiAxis PlcApi4Axis[AXIS_COUNT] – X

5.2.2 PLC operands of the General Data group

Operand Description SW vers. Page


General – Control configuration
D NN_GenOmgCount Number of configured operating mode 597110-01 –
groups
D NN_GenChnCount Number of configured machining channels 597110-01 974
D NN_GenAxCount Number of configured logical axes (inclu- 597110-01 975
ding spindles)
D NN_GenSpiCount Number of configured spindles 597110-01 1559
General – Control status
D NN_GenOmgManual Selected operating mode group for manual 597110-01 1900
control
D NN_GenChnManual Selected machining channel for manual 597110-01 1930
control
D NN_GenSpiManual Selected spindle for manual control 597110-01 1930
M NN_GenCycleAfterPowerOn 1st PLC scan after switch-on 597110-01 2077
(M4172)
M NN_GenCycleAfterPlcStop 1st PLC scan after PLC interruption 597110-01 2077
(M4173)
M NN_GenCycleAfterReConfig 1st PLC scan after changing the configura- 597110-01 2077
tion data-
(M4174)
M NN_GenNcInitialized Control is being initialized (after start-up 597110-01 2077
cycles)
(M4184)
M NN_GenNcEmergencyStop Control in external emergency stop state 597110-01 1546
(M4178)
M NN_GenCtrlVoltageOn Request for machine control voltage ON 597110-06 –
Request
(M4192)

September 2015 5.2 Overview of the PLC operands 959


Operand Description SW vers. Page
M NP_GenShutdownRequest Soft key for control shutdown was pressed 597110-06 –
(M4195)
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 Error code that appeared while using an API 597110-01 –
Code 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 per-
formed if this marker is set
General – Key information
D NP_GenKeyCode Code of the depressed key 597110-01 2090
(W274)
D NP_GenModCode Code of the code number last entered 597110-01 1893
(D276)
M PP_GenHandwheelLocked Disable handwheel motion 597110-01 2149
(M4576)
General – Touch probe
M NN_GenTchProbeReady Touch probe: Ready (hardware signal) 597110-01 2292
(M4050)
M NN_GenTchProbeDeflected Touch probe: Stylus deflected (hardware 597110-01 2292
signal)
(M4052)
M NN_GenTchProbeBatteryLow Touch probe: Weak battery (hardware 597110-01 2292
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 1550
(M4282)
General – Table editor
M NN_GenTableEditEnd PLC editor: END key or soft key pressed 597110-01 2513
(M4159)

960 HEIDENHAIN Technical Manual TNC 640


5.2.3 PLC Operands of the "Operating Mode Group" Group

Operand Description SW vers. Page


OMG – Configuration
D NN_OmgChnCount Number of machining channels of this ope- 597110-01 –
rating mode group
D NN_OmgChn Array of machining channels for this opera- 597110-01 –
ting mode group
OMG – Operating modes
M NN_OmgManual Manual Operation operating mode 597110-01 1900
(M4150)
M NN_OmgHandwheel Electronic Handwheel operating mode 597110-01 1900
(M4151)
M NN_OmgMdi Positioning with Manual Data Input opera- 597110-01 1900
ting mode
(M4152)
M NN_OmgProgramSingle Program Run, Single Block operating mode 597110-01 1900
(M4153)
M NN_OmgProgramRun Program Run, Full Sequence operating 597110-01 1900
mode
(M4154)
M NN_OmgReference Reference operating mode 597110-01 1900
(M4155)
M NN_OmgJogIncrement Incremental Jog operating mode 597110-01 1900
(M4579)
D NN_OmgAuxiliaryMode Product-specific code for special modes and 597110-01 1900
submodes
M PP_OmgHandwheelNot Reserved for expanded handwheel 597110-04 –
Allowed functions (disable activation of HR420 and
HR5xx handwheel for these operating
modes)
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 1904
operating mode group
M PP_OmgNCStop NC stop for all machining channels of this 597110-01 1904
operating mode group

September 2015 5.2 Overview of the PLC operands 961


5.2.4 PLC Operands of the "Machining Channels" Group

Operand Description SW vers. Page


Channel – Configuration
D NN_ChnAxisCount Number of axes of this machining channel 597110-01 978
D NN_ChnAxis Array D[8] of the axes of this machining 597110-01 978
channel
D NN_ChnSpindleCount Number of spindles of this machining chan- 597110-08 978
nel
D NN_ChnSpindle Array D[1] of spindles of this machining 597110-08 978
channel
Channel – Error handling
M NN_ChnErrorWarning Error or warning occurred 597110-01 1929
M NN_ChnErrorFStop Feed stopped because of an error 597110-01 1929
(M4220)
M NN_ChnErrorNCStop NC stop because of an error 597110-01 1929
(M4221)
M NN_ChnErrorCancel Program canceled because of an error 597110-01 1929
(M4223)
M NN_ChnErrorEmergency Emergency stop because of an error 597110-01 1929
Stop
(M4222)
M NN_ChnErrorReset Reset because of an error 597110-01 1929
M NN_ChnErrorReact NC stop at block end triggered by an error 597110-09 1929
M NN_ChnErrorLiftOff NC stop, lift-off and emergency stop after a 597110-09 1929
standstill triggered by an error
Channel – Program run
M PP_ChnNcStart NC start or cycle on 597110-01 1912
(M4564)
M PP_ChnNCStop NC stop or cycle off 597110-01 1918
(M4560)
M NN_ChnNcStartExtern External request for an NC start 597110-01 1912
Request
M NN_ChnNcStopExtern NC stop or cycle off 597110-01 1919
M NN_ChnControlInOperation Control is in operation 597110-01 1927
(M4176)
M NN_ChnProgStoppedAsync Asynchronous NC program interruption 597110-01 1919
M NN_ChnProgStopped NC program interruption 597110-01 1919
M NN_ChnProgCancel NC program cancellation 597110-01 1920
M NN_ChnProgEnd End of NC program reached 597110-01 1918
D NN_ChnMachiningMode Active technology of machine: 597110-05 –
0: Operating mode permanently or tempora-
rily undefined, 1: Milling, 2: Turning

962 HEIDENHAIN Technical Manual TNC 640


Operand Description SW vers. Page
M NN_ChnAutostart Autostart function – request for program 597110-01 1916
start
(M4182)
M NN_ChnAutostartTime Autostart function – request for program 597110-01 1916
Expired start
M PN_ChnAutostartEnable Enable the autostart function 597110-01 1916
(M4586)
M NP_ChnProgSelected NC program selected 597110-04 1886
(M4181)
M NN_ChnBlockScan Mid-program startup (or block scan) active 597110-01 1921
(M4158)
M NN_ChnBlockScanStrobe Restore status at block scan (M/S/T/Q trans- 597110-01 1921
Transfer fer)
(M4161)
M NN_ChnProgManTraverse Manual traverse of the axes active (for 597110-01 1920
lathes: inspection operation)
(M4156)
M NN_ChnProgReturnContour Return to contour active (after manual tra- 597110-01 1920
verse or block scan)
(M4157)
Channel – Touch probe
M NN_ChnTchProbeCycle Touch probe: Touch probe cycle active 597110-01 2292
(M4053) (FN17: ID990 NR2)
M PP_ChnTchProbeMonitor Touch probe: Enable the probing process; 597110-01 2292
NC stop in all operating modes if stylus is
(M4056)
deflected
M PP_ChnTchProbeMonitorOff Disable touch probe monitoring temporarily 597110-06 2292
Channel – Feed rate
D NN_ChnProgFeedMinute Programmed feed rate per minute [mm/min] 597110-01 1321
(D360)
D NN_ChnProgFeedRevolution Programmed feed rate per revolution [mm/ 597110-01 1321
rev]
D NN_ChnProgFeedThread Programmed feed rate per thread [mm/rev] 597110-01 1321
M NN_ChnFeedMinuteActive Feed rate per minute active 597110-01 1321
M NN_ChnFeedRevolution Feed per revolution active 597110-01 1321
Active
M NN_ChnFeedThreadActive Feed rate per thread active 597110-01 1321
M NN_ChnFeedRapidTraverse Rapid traverse active (FMAX) 597110-04 1321
Active
(M4180)
D NN_ChnContourFeed Current contouring feed rate [mm/min] 597110-01 1321
(D388)
D PP_ChnContourFeedMax Max. feed rate from PLC [mm/min] 597110-01 1321
(D596)

September 2015 5.2 Overview of the PLC operands 963


Operand Description SW vers. Page
D NN_ChnFeedOverrideInput Feed-rate override set [%] 597110-01 2190
(W494)
D PP_ChnFeedOverride Feed-rate override entered by the PLC [%] 597110-01 2190
(W766)
D NN_ChnRapidFeedOverride Rapid traverse override set [%] 597110-01 2191
Input
(W496)
D PP_ChnRapidFeedOverride Rapid traverse override entered by the PLC 597110-01 2191
[%]
(W752)
D PP_ChnConfigOverride Configurable override (e.g. rapid traverse) 597110-01 –
M PP_ChnFeedEnable Feed-rate enable for all axes 597110-01 1327
M PP_ChnWorkFeedEnable Enabling of machining feed rate: if this mar- 597110-01 1327
ker is not set, only rapid-traverse move-
ments are permitted.
Channel – Status
M NN_ChnToolLifeExpired Tool life 1 expired 597110-01 2223
(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 1425
spindle load
(W330)
D NN_ChnAfcOverrideOutput Override factor for interpolator (= AFC out- 597110-06
put 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)
D NP_ChnAfcError Error from AFC that led to NC stop 597110-06
(W350)
M NP_ChnAfcToolWearLimit Tool-wear limit exceeded 597110-06
(M4510)
D PP_ChnAfcIntFact Setting of I factor 597110-06
(W626)

964 HEIDENHAIN Technical Manual TNC 640


Operand Description SW vers. Page
D PP_ChnAfcTimeConstant Time constant of IIR filter for AFC 597110-06 1425
(W628)
D PP_ChnAfcPlcControl Alternative control input variable for AFC 597110-06
(W632)

5.2.5 PLC operands of the Axis group

Note

The PLC operands of the PlcApiAxis structure definition are only available if
you use the API 3 programming interface.

Operand Description SW vers. Page


Axis – Configuration
D NN_AxLogNumber Logical axis number (identical to the axis 597110-01 975
number from "Axes of the machining chan-
nel")
–1: Axis is deactivated
–2: Axis is a spindle
D NN_AxChannel Index of the NC channel to which the axis is 597110-08 975
currently assigned
–1: Axis is a PLC axis
Axis – Drive
M NN_AxDriveReady Axis drive is ready 597110-01 1323
M PP_AxDriveOnRequest Switch axis drive on 597110-01 1323
(CM9161)
M NN_AxDriveOn Axis drive is switched on (and is at least 597110-01 1323
speed-controlled)
(CM9162)
M PP_AxPosControlRequest Position-control the axis 597110-01 1323
(W1040)
M NN_AxPosControl Axis is position-controlled 597110-01 1323
(W1024)
M PP_AxValueActToNominal Actual-to-nominal value transfer 597110-01 1326
M NN_AxCorrectingLagError Eliminate following error active 597110-01 1317
M PP_AxClampModeRequest Prepare to open the position control loop 597110-01 1325
(W1038)
Axis – Control
M NN_AxReferenceAvailable 0: Reference mark not traversed 597110-01 1267
(W1032) 1: Reference mark traversed
M PP_AxReferenceEndPosition 0: Trip dog not triggered 597110-01 1267
(W1054) 1: Trip dog triggered

September 2015 5.2 Overview of the PLC operands 965


Operand Description SW vers. Page
D PP_AxManualFeedMax Maximum axis feed rate in all operating 597110-01 1322
D PP_AxFeedMax modes [mm/rev] 597110-06 1322
(PP_AxManualFeedMax from version
597110-06 renamed to PP_AxFeedMax)

M PP_AxFeedEnable Axis-specific feed-rate enable 597110-01 1327


(W1060)
M NN_AxMotionRequest Axis movement by the interpolator 597110-02 1509

M NN_AxMotionNegativeDir Drive with unipolar motor: 597110-06 1600


0: Nominal value output for positive tra-
verse direction
1: Nominal value output for negative tra-
verse direction
M NN_AxInMotion Axes in motion 597110-01 1509
(W1028)
M NN_AxInPosition Axes in position 597110-01 1508
(W1026)
M NN_AxStopExtern Axis motion is stopped and canceled by run- 597110-05 –
time system (e.g. upon demand by functio-
nal safety (FS))
M PP_AxTraversePos Manual traverse in positive direction 597110-01 1322
(W1046)
M PP_AxTraverseNeg Manual traverse in negative direction 597110-01 1322
(W1048)
M PP_AxHandwheelLocked Disable handwheel motion for specific axes 597110-01 2149
(W1062)
M PP_AxDeactivateMonitoring Deactivate monitoring functions 597110-01 1495
(W1042)
M NN_AxLubricationPulse Lubrication pulse: Value in 597110-01 1106
MP_lubricationDist exceeded. Remains set
(W1056)
until the path is reset by
PP_AxLubricationDistReset
M PP_AxLubricationDistReset Reset the accumulated distance for lubrica- 597110-01 1106
tion
(W1058)
D NN_AxBrakeReleaseRequest Request to release the axis brake(s). Bit- 597110-08 1538
coded brake 1 to brake n correspond to bit
(M4031)
0...n

966 HEIDENHAIN Technical Manual TNC 640


5.2.6 PLC operands of the Spindle group

Note

The PLC operands of the PlcApiSpindle structure definition are only availa-
ble if you use the API 3 programming interface.

Operand Description SW vers. Page


Spindle – Configuration
D NN_SpiLogNumber Logical axis number of the spindle 597110-01 1559
D NN_SpiChannel Index of the NC channel to which the 597110-08 1559
spindle is currently assigned
–1: Spindle is free (not assigned)
Spindle – Drive
M NN_SpiDriveReady Spindle drive is ready 597110-01 1581
M PP_SpiDriveOnRequest Switch spindle drive on 597110-01 1581
(CM9161)
M NN_SpiDriveOn Spindle drive is switched on (and is at least 597110-01 1581
speed-controlled)
(CM9162)
Spindle – Control
M NN_SpiReferenceAvailable Reference position found 597110-01 1560
(M4018)
M PP_SpiReferenceMarkSignal Trip dog 597110-01 1560
D PP_SpiSpeedMax Maximum spindle speed 597110-01 1582
(D604)
M PP_SpiEnable Spindle enabling 597110-01 1582
(M4008)
M NN_SpiMotionRequest Spindle movement by interpolator 597110-01 1509
(M4000)
M NN_SpiInMotion Spindle in motion 597110-01 1582
(M4002)
M NN_SpiSpeedOK Spindle speed reached 597110-01 1590
(M4001)
M NN_SpiControl Spindle in position control loop 597110-01 1596
M NN_SpiControlInPos Spindle in position 597110-01 1596
(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 achieved 597110-01 –
D NN_SpiOverrideInput Speed override set [%] 597110-01 2188
(W492)

September 2015 5.2 Overview of the PLC operands 967


Operand Description SW vers. Page
D PP_SpiOverride Speed override entered by the PLC [%] 597110-01 2188
(W764)
M NN_SpiTapping Tapping active 597110-01 1596
(M4030)
M NN_SpiRigidTapping Tapping with spindle interpolated with Z 597110-01 1596
axis active
(M4031)
D NN_SpiBrakeReleaseRequest Request to release the axis brake(s). Bit- 597110-08 1538
coded brake 1 to brake n correspond to bit
(M4031)
0...n

968 HEIDENHAIN Technical Manual TNC 640


5.2.7 PLC operands of the Axes and Spindles group

Note

The PLC operands of the PlcApi4Axis structure definition are only available
if you use the API 4 programming interface.

Operand Description SW vers. Page


Axis – Configuration
D NN_AxLogNumber Logical axis number (identical to the axis or 597110-10 975
spindle number from MP_axisList, “Axes
of the machining channel”)
–1: Axis or Spindle is deactivated
D NN_AxChannel Index of the NC channel to which the axis or 597110-10 975
spindle is currently assigned
–1: Axis or spindle is a PLC axis or not assi-
gned
D NN_AxSpindle Logical spindle number (identical to the 597110-10 1559
spindle number from MP_spindleIndices)
–1: Spindle is deactivated
Axis – Drive
M NN_AxDriveReady Axis or spindle drive is ready 597110-10 1323
M PP_AxDriveOnRequest Switch axis or spindle drive on 597110-10 1323
(CM9161)
M NN_AxDriveOn Axis or spindle drive is switched on (and is 597110-10 1323
at least speed-controlled)
(CM9162)
M PP_AxPosControlRequest Position-control the axis or spindle 597110-10 1323
(W1040)
M NN_AxPosControl Axis or spindle is position-controlled 597110-10 1323
(W1024)
M PP_AxValueActToNominal Actual-to-nominal value transfer 597110-10 1326
M NN_AxCorrectingLagError Eliminate following error active 597110-10 1317
M PP_AxClampModeRequest Prepare to open the position control loop 597110-10 1325
(W1038)
Axis – Control
M NN_AxReferenceAvailable 0: Reference mark not traversed 597110-10 1267
(W1032) 1: Reference mark traversed
M PP_AxReferenceEndPosition 0: Trip dog not triggered 597110-10 1267
(W1054) 1: Trip dog triggered
D PP_AxFeedMax Maximum axis feed rate in all operating 597110-10 1322
modes [mm/rev] for motion as an axis
D PP_SpiSpeedMax Maximum spindle speed. This value is only 597110-01 1582
set and evaluated if the axis is used as a
(D604)
spindle

September 2015 5.2 Overview of the PLC operands 969


Operand Description SW vers. Page
M NN_SpiSpeedOK Spindle speed reached 597110-01 1590
(M4001)
M PP_AxFeedEnable Feed rate enable for axis or spindle 597110-10 1327
(W1060)
M NN_AxMotionRequest Axis or spindle movement by interpolator 597110-10 1509
(as an axis)

M NN_SpiMotionRequest Spindle movement by interpolator 597110-01 1509


(M4000)
M NN_AxMotionNegativeDir Drive with unipolar motor: 597110-10 1600
0: Nominal value output for positive tra-
verse direction
1: Nominal value output for negative tra-
verse direction
D NN_AxOverrideInput Speed or feed rate override set [%] 597110-01 2188
(W492)
D PP_AxOverride Speed or feed rate override entered by the 597110-01 2188
PLC [%]
(W764)
M NN_AxInMotion Axes or spindle in motion 597110-10 1509
(W1028)
M NN_AxInPosition Axes or spindle in position 597110-10 1508
(W1026) 0: Traverse is pending
1: Traverse completed (not when exiting a
speed-controlled mode of operation)
M NN_AxStopExtern Axis or spindle motion is stopped and can- 597110-10 –
celed by run-time system (e.g. upon
demand by functional safety (FS))
M PP_AxTraversePos Manual traverse in positive direction 597110-10 1322
(W1046)
M PP_AxTraverseNeg Manual traverse in negative direction 597110-10 1322
(W1048)
M PP_AxHandwheelLocked Disable handwheel motion for specific axes 597110-10 2149
(W1062)
M PP_AxDeactivateMonitoring Deactivate monitoring functions 597110-10 1495
(W1042)
M NN_AxLubricationPulse Lubrication pulse: Value in 597110-10 1106
MP_lubricationDist exceeded. Remains set
(W1056)
until the path is reset by
PP_AxLubricationDistReset
M PP_AxLubricationDistReset Reset the accumulated distance for lubrica- 597110-10 1106
tion
(W1058)

970 HEIDENHAIN Technical Manual TNC 640


Operand Description SW vers. Page
D NN_AxBrakeReleaseRequest Request to release the axis or spindle 597110-10 1538
brake(s). Bit-coded brake 1 to brake n corre-
(M4031)
spond to bit 0...n

September 2015 5.2 Overview of the PLC operands 971


972 HEIDENHAIN Technical Manual TNC 640
6 Configuring the axes and spindle

6.1 Machine structure

6.1.1 Adapting the TNC 640 to the machine

Key:
 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.

September 2015 6.1 Machine structure 973


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: Menu choice
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.

974 HEIDENHAIN Technical Manual TNC 640


NN_AxLogNumber changes its value when 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 977).

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 from
"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

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
1558.

September 2015 6.1 Machine structure 975


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 attri-
butes is defined in
CfgAxisPropKin/specKinCoordSys (See "Kinematic properties of axes" on
page 1014):
• 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

976 HEIDENHAIN Technical Manual TNC 640


6.2 Machining channels, configuring

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: Menu choice
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

September 2015 6.2 Machining channels, configuring 977


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: Menu choice
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 machining channel spindles are specified in the
NN_ChnSpindle array.

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.

978 HEIDENHAIN Technical Manual TNC 640


Kinematics of Enter in the CfgKinList/MP_kinCompositeModels parameter the key names
machining channel of the kinematics configurations defined for this machining channel. 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

September 2015 6.2 Machining channels, configuring 979


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: Menu choice
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: Menu choice
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

980 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 character
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 parameter CfgNcPgmBehaviour/MP_operatingTimeReset 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: Menu choice
Options: TRUE
The machining time is reset at each program start.
FALSE
The machining time is totaled.
Default: FALSE
Access: LEVEL2
Reaction: RESET

September 2015 6.2 Machining channels, configuring 981


6.2.2 Reference marks, traversing

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: Menu choice
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, parameter optional
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

982 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.

September 2015 6.2 Machining channels, configuring 983


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 1412.).
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: Menu choice
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 con-
figuration (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 cal-
culation 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.

984 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 con-
trol to perform compensation movements for mid-program startup after a
TOOL CALL.

MP_value
Simulated tool-change position during block scan
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: Menu choice
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, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 6.2 Machining channels, configuring 985


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
983). 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 CfgPlcBlockS-
can 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, parameter optional
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, parameter optional
Access: LEVEL3
Reaction: RESET

986 HEIDENHAIN Technical Manual TNC 640


6.3 Configuration of axes
Overview of the types of axes supported by the TNC 640:
 Digital axes:
Closed-loop axes with encoder; controlled by a controller unit (CC)
 Analog axes:
Closed-loop and open-loop axes with and without encoder; with analog out-
put 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.

September 2015 6.3 Configuration of axes 987


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: 597110-01.
Format: Menu choice
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 with analog
command interface to the drive motors (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: 597110-01.
Format: Menu choice
Options: NoCC
No controller unit installed (select this setting for with analog
command interface to the drive motors (e.g. TNC 320 with
MC 321, TNC 128 with MC 128 or MANUALplus 620 with
MC 320T)
Default: automatic
Access: LEVEL3
Reaction: RESET

988 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´

September 2015 6.3 Configuration of axes 989


Properties of the For rotary axes, the turning axis is in the direction of a principal 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

990 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

September 2015 6.3 Configuration of axes 991


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 991.
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: Menu choice
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

992 HEIDENHAIN Technical Manual TNC 640


MP_progKind
Type of axis
Available from NCK software version: 597110-01.
Format: Menu choice
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 angular 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

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."

September 2015 6.3 Configuration of axes 993


MP_relatedAxis
Assigned physical axis
Available from NCK software version: 597110-01.
Format: Menu choice
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 is only possible 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 synchronization
SYNC_CALC must be configured for this strobe.

Note

With Hirth coupling it is presumed that the axis is on the nominal position
of the Hirth grid even if the measured position is slightly suppressed with
engagement of the coupling. In this case the position display with <type of
position preset>=4 can be set to the nominal position. This condition is
reset with <type of position preset>=5.

994 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 required (equivalent
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 required
3: Retract the value of 1: or 2: and set
the reference value again, <position value> and
lLogical 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 before 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: Axis <Logical axis number source> 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

September 2015 6.3 Configuration of axes 995


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 axes of the
machine 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: Menu choice
Options: TRUE
This axis is a rotary axis.
FALSE
This axis is a linear axis (not a rotary axis).
Remark:
Rotary axes are not allowed as principal axes.
Default: FALSE
Access: LEVEL3
Reaction: RESET

996 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. The machine
auxiliary axes parameter may be changed from within the program run by switching to
(modulo display) another MP subfile.

MP_isModulo
Modulo display
Available from NCK software version: 597110-01.
Format: Menu choice
Options: TRUE
Position display for rotary axes: modulo 0 to 360°. The axis is a
rotary axis that can roll over (“rollover axis”) The parameters in
CfgRollOver are evaluated.
FALSE
Position display is not modulo display.
Default: FALSE
Access: LEVEL3
Reaction: RUN

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: Menu choice
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, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 6.3 Configuration of axes 997


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 under CfgRollOver are only evaluated if the CfgAxis/


isModulo parameter is set to TRUE!

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. In addition,
MP_shortestDistance = on can be used to configure that modulo display is
used to display the axis (0° to 360°).

MP_shortestDistance
Traverse path of rotary axis with modulo counting mode
Available from NCK software version: 597110-01.
Format: Menu choice
Options: on
Always approach target position on the shortest path (<= 180°).
Display the axis in modulo display.
off
Approach target position without passing over zero
Default: No value, parameter optional (= 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.

998 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: Menu choice
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, parameter optional (= off)
Access: LEVEL3
Reaction: RUN
Example:
Effect of the parameters MP_shortestDistance and MP_startPosToModulo

Programmed shortestDistance = on startPosToModulo = on shortestDistance = off


movement startPosToModulo = off
Nomi- Ref Dis- Nomi- Ref Dis- Nomi- Ref Dis-
nal tance nal tance nal tance
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

September 2015 6.3 Configuration of axes 999


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: Menu choice
Options: None
No hardware connection (virtual axis)
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; select
when using the CMA-H SPI plug-in module
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
Default: InOutCC
Access: LEVEL3
Reaction: RESET

1000 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.” For such an axis, the value in MP_driveOffGroup, and
thus the drive enable signal, will not be evaluated.

Note

Axes with MP_testMode = TRUE and MP_axisMode = Active must be


enabled in the SIK!

MP_axisMode
Axis operating mode
(cf. iTNC 530: MP10 (expanded))
Available from NCK software version: 597110-01.
Format: Menu choice
Options: NotActive
Axis not found
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: Menu choice
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.

September 2015 6.3 Configuration of axes 1001


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 character
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/CfgKey-


Synonym, you can relate the other parameter sets to the first one. Then
you only have to define the parameters that differ from the ones of the para-
meter 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 987.

MP_realAxis
Key name of the associated real axis
Available from NCK software version: 597110-01.
Format: Menu choice
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, parameter optional
Access: LEVEL3
Reaction: RESET

1002 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: Menu choice
Options: TRUE
Actual-to-nominal value transfer for all axes in an EMERGENCY
STOP is not performed.
FALSE
Adoption of actual-nominal value for all axes with EMERGENCY
STOP is implemented by default.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

September 2015 6.3 Configuration of axes 1003


Advanced settings
for individual axes
Settings in the configuration editor MP number
Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
advancedSettings 300112
noBreakAtProbe
manFilterEnhanced
countLagOverflow
analogPWM
backlashOnMC
ignoreKinematics
clearShutoffPos
hwEncoderFilter
useCtrlOutputLimit
specialGantry

Use MP_advancedSettings to define advanced settings for individual axes.


 MP_noBreakAtProbe

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 rate limits for the probing process
from CfgProbes/maxTouchFeed or from CfgTT are not effective for
the axis or axes concerned.
• FALSE
A movement commanded by the PLC is stopped when the system is
deflected (default behavior).
 MP_manFilterEnhanced
• 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 accelera-
tion profile. This function should only be used in exceptional cases. Pre-
fer the bell-shaped acceleration curve. This ensures acceleration with
minimum machine excitation.
• FALSE
The PLC movement is with bell-shaped acceleration (default behavior =
recommended).

1004 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 with MP_manFilterEnhanced=TRUE are moved by the PLC while
DCM is active, MP_manFilterEnhanced will be disabled during the move-
ment.
The PLC, however, is able (e.g. by using module 9063) to disable DCM in a
targeted manner for this movement. Thus, MP_manFilterEnhanced
remains effective.

Note

Under certain circumstances, a ramp-shaped acceleration profile can


improve the time behavior of the axis. The axis thus reaches its program-
med 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:

September 2015 6.3 Configuration of axes 1005


 MP_countLagOverflow
Only effective for a spindle in position feedback control.
• TRUE
The TNC 640 does not calculate the servo lag generated with the acce-
leration or braking with the modulo counting method. If a spindle motor
tends to vibrate, the control response of the spindle can thus be impro-
ved 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 servo lag is always calculated with the modulo counting method
(default behavior).
 MP_analogPWM
Reserved for special settings of analog drives.
 MP_backlashOnMC
• TRUE:
The reversal error is calculated in the NC software
• FALSE
The reversal error is calculated in the DSP software on the CC (default
behavior)
 MP_ignoreKinematics
Specifies whether the active kinematic configuration is to be ignored during
manual traverse.
• TRUE
Independently of the kinematics possibly effective in manual operation,
this axis can always be traversed using 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 behavior).
 MP_clearShutoffPos
Reset switch-off position of the axis saved in SRAM.
• TRUE
Set switch-off position of the axis in SRAM to zero. The parameter is
reset after evaluation with the next startup.
• FALSE
Function not active (default behavior)
 MP_hwEncoderFilter
For special TTL encoder handwheels with an extremely short and speed-
invariant high signal period (approx. 100 µs), you can configure a signal input
filter that splits the encoder input signal via a mean-value filter into 5 IPO
clock pulses.
• TRUE
Split signal via mean-value filter into 5 IPO clock pulses
• FALSE
Function not active (default behavior)
• MP_useCtrlOutputLimit
Use parameter only after consultation with HEIDENHAIN.
• MP_specialGantry
Use parameter only after consultation with HEIDENHAIN.

1006 HEIDENHAIN Technical Manual TNC 640


MP_advancedSettings
Advanced settings for individual axes
Available from NCK software version: 597110-06.
Format: Menu choice
Options: TRUE
FALSE
noBreakAtProbe
manFilterEnhanced
countLagOverflow
analogPWM
backlashOnMC
ignoreKinematics (from 597110-08)
clearShutoffPos (from 597110-09)
hwEncoderFilter (from 597110-09)
useCtrlOutputLimit (from 597110-10)
specialGantry (from 597110-10)
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

September 2015 6.3 Configuration of axes 1007


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 1097 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 parameters MP_axisKey, MP_name and
MP_rule. Specifies sequence and rules for the display of an
axis.
Default: –
Access: LEVEL3
Reaction: NOTHING

1008 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 parameters MP_axisKey, MP_name and
MP_rule. 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: Menu choice
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
Designation of the axis
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, parameter optional
Access: LEVEL3
Reaction: NOTHING

September 2015 6.3 Configuration of axes 1009


MP_rule
Display rule of the axis
Available from NCK software version: 597110-08.
Format: Menu choice
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: Menu choice
Options: NOML.
Nominal position
ACTL
Actual position
REF ACTL
Actual position referenced to the machine datum
REF NOML
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

1010 HEIDENHAIN Technical Manual TNC 640


MP_statusWinDisplay
Type of position display in the status display
Available from NCK software version: 597110-01.
Format: Menu choice
Options: NOML.
Nominal position
ACTL
Actual position
REF ACTL
Actual position referenced to the machine datum
REF NOML
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 Position display with a programmed length change of the tool with TOOL
with TOOL CALL DL CALL DL can be influenced with MP_progToolCallDL.

Note

If you are migrating from the iTNC 530:


Set the position display with TOOL CALL DL to be compatible to the iTNC
530 via MP_progToolCallDL = As Workpiece Oversize. With this setting
the TNC 640 does not show the tool oversize DL programmed in TOOL
CALL in the nominal position display; it is effective as the workpiece over-
size.

MP_progToolCallDL
Position display with TOOL CALL DL
Available from NCK software version: 597110-09.
Format: Menu choice
Options: As Tool Length
Default behavior of the TNC 640.
The oversize DL programmed in the TOOL CALL block is
considered 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
considered in the nominal position display. It is therefore
effective as workpiece oversize.
Default: No value, parameter optional (= As Tool Length)
Access: LEVEL1
Reaction: RUN

September 2015 6.3 Configuration of axes 1011


Decimal separator At present only a period may be used as a decimal separator.

MP_decimalCharacter
Definition of decimal separator for position display
(cf. iTNC 530: MPMP7280)
Available from NCK software version: 597110-01.
Format: Menu choice
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. Hand-
wheel
modes of operation (cf. iTNC 530: MP7270)
Available from NCK software version: 597110-02.
Format: Menu choice
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 an axis direction key 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.

1012 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: Menu choice
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: Menu choice
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 [inches]
Available from NCK software version: 597110-01.
Format: Menu choice
Options: 0,005
0,001
0.0005
0.0001
0.00005
0.00001
Default: 0,001
Access: LEVEL3
Reaction: NOTHING

September 2015 6.3 Configuration of axes 1013


6.3.5 Kinematic properties of axes

Settings in the configuration editor MP number


Axes
PhysicalAxis
[Key name of the axis]
CfgAxisPropKin
specKinCoordSys 300201
presetToAlignAxis 300203
hasSpecAxisData 300204

In the parameter object CfgAxisPropKin, specify the expanded properties for


the kinematics.
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: Menu choice
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 CfgAxis/MP_isModulo whether the axis can roll
over (value is TRUE) or whether it has a limited angle of rotation.

1014 HEIDENHAIN Technical Manual TNC 640


MP_presetToAlignAxis controls the treatment of presets for rotation axes. If
the parameter is set to TRUE, the offset from the preset is subtracted from
the axis value before the kinematics calculation. 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: Menu choice
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 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: Menu choice
Options: TRUE
Special axis data available
FALSE
No special axis data
Default: No value, optional parameter
Access: LEVEL3
Reaction: RESET

September 2015 6.3 Configuration of axes 1015


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 appears, prompting the machine operator to
traverse the axis to 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.

1016 HEIDENHAIN Technical Manual TNC 640


Configuring a
manual axis
Settings in the configuration editor Input:
Axes
PhysicalAxis
[Key name of the axis]
CfgAxis
axisHw ManualMC or ManualCC
axisMode Active
ParameterSets
[Key name of the parameter set]
CfgReferencing
refType Mode1 or
Mode3
onTheFly TRUE
CfgControllerAuxil
checkPosStandstill 0
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:
With MP_refType as the mode for reference measurement, set Mode1 or
Mode3.
 For the corresponding axis, set MP_onTheFly = TRUE.
 Deactivate standstill monitoring. Set MP_checkPosStandstill = 0.
 Deactivate movement monitoring for the axis: Set
MP_movementThreshold = 0.

September 2015 6.3 Configuration of axes 1017


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. Adding additional
axes is 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 par-
tition. 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 mode of operation Programming
 Press the MOD key
 Enter the code number 95148 to access the Machine Parameter mode of
operation

1018 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 com-
plete 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.

September 2015 6.3 Configuration of axes 1019


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 folder Axes / ParameterSets
 Create a parameter set for the new axis. Leave the cursor on the Parame-
terSets 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 exi-
sting 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!

 In the dialog box under Keyname? 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 con-
figuration can be skipped with the CANCEL soft key. The CfgSpindle confi-
guration 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
module types etc.

1020 HEIDENHAIN Technical Manual TNC 640


Step 3:  Then you have to configure the general physical characteristics of the axis.
Create a physical Open the folder Axes / PhysicalAxis
axis and assign it to  Leave the cursor on the PhysicalAxis folder and press the
the parameter set MORE FUNCTIONS and INSERT soft keys.

 In the dialog box under Keyname? 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 996),
 MP_isModulo (Page 997),
 MP_isHirth (Page 1138),
 MP_axisHw (Page 1000),
 MP_axisMode (Page 1001)

September 2015 6.3 Configuration of axes 1021


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:

 Under Axes / PhysicalAxes / C / CfgAxis, set MP_isModulo = TRUE 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:

1022 HEIDENHAIN Technical Manual TNC 640


Step 4:  Now configure the programmable axis. To do so, open the folder Axes /
Configure the ProgAxis
settings for  Leave the cursor on the ProgAxis folder and press the MORE FUNCTIONS
programmable axes and INSERT soft keys.

 In the dialog box under Keyname? 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 992) enter the letter of the axis
that is to appear in the position display; in this case "C".

September 2015 6.3 Configuration of axes 1023


 Then define the spatial orientation of the axis with the MP_dir parameter
(See page 992); 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 993). For a rotary axis, you set the value ParallelAng-
Coord.

1024 HEIDENHAIN Technical Manual TNC 640


 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 parame-
ter (See page 993). Take a quick look at the help window (HELP key)—it
shows the specified indices for the individual axes. For the C axis, the spe-
cified index is 6. Now enter this index.

September 2015 6.3 Configuration of axes 1025


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
1008) Add the new axis at the desired location in the list:

 If you want another sequence of displayed axes before crossing the refe-
rence marks, enter these into MP_axisDisplayRef (See page 1009). Other-
wise, 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 folder System / DisplaySettings / Cfg-
PosDisplayPace
 Leave the cursor on the CfgPosDisplayPace folder and press the
MORE FUNCTIONS and INSERT soft keys.
 In the dialog box under Keyname? 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 1013) and
MP_displayPaceInch (See page 1013) to define the display step for the
new axis.

1026 HEIDENHAIN Technical Manual TNC 640


 To do so, open the folder System / CfgAxes / axisList
 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.

September 2015 6.3 Configuration of axes 1027


Step 6:  Now define the kinematics characteristics of the new axis. This is done
Configure the using the Channels / Kinematics folder.
kinematics of the  Regarding the kinematics configuration, please note the guideline in the
new axis chapter "Configuring the machine kinematics" on page 1164.

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 inter-
polating and programmable machine axes.
 Open the Channels / ChannelSettings / CH_NC / CfgChannelAxes / pro-
gAxis folder. The folder contains all programmable axes. Add the new axis
to the list:

1028 HEIDENHAIN Technical Manual TNC 640


 To do so, open the folder 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:

 When you have completed your configuration, save your changes by pres-
sing 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.

September 2015 6.3 Configuration of axes 1029


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 revolu-
tion.
 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. The formula in MP_distPerMotorTurnF will be recalculated cyclically.

1030 HEIDENHAIN Technical Manual TNC 640


MP_posEncoderType
Position measurement via position encoder or motor encoder
Available from NCK software version: 597110-01.
Format: Menu choice
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

September 2015 6.4 Encoders 1031


MP_posEncoderType
Position measurement via position encoder or motor encoder
Available from NCK software version: 597110-01.
Format: Menu choice
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 orienta-
tion" on page 1672.

1032 HEIDENHAIN Technical Manual TNC 640


MP_distPerMotorTurn
Distance covered in one motor revolution
(cf. 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 505 for the syntax for formula entry 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: Menu choice
Options: TRUE
An incremental encoder is connected to the serial EnDat 2.2
interface via the EIB
FALSE
No EIB is used
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

September 2015 6.4 Encoders 1033


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

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.

1034 HEIDENHAIN Technical Manual TNC 640


Note

The MC 320 (TNC 320) and MC 320T (MANUALplus 620) main computers
do not yet support the connection of EnDat 2.2 encoders.

September 2015 6.4 Encoders 1035


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 bet-
ween reference marks is 20 mm. The axis moves 10 mm per motor revolu-
tion.
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

1036 HEIDENHAIN Technical Manual TNC 640


Rotary encoders General information
angle encoders,
The TNC 640 requires the following values:
motor encoders
 MP_posEncoderDist: For each axis, enter the traverse distance per motor
revolution.
If you enter a formula instead of a fixed value, it will only be calculated once
when the control starts up or in case you switch over to a different MP sub-
file.
 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.

For speed encoders with EnDat interface, the value entered in


MP_posEncoderDist must be a multiple of the value entered in
MP_posEncoderIncr. For this reason, when correcting these parameters,
MP_posEncoderDist must be corrected by the same factor as
MP_posEncoderIncr. This will be checked by the TNC and a message will be
displayed if an error is found. For other encoders with EnDat interface, it is
generally not possible to enter a multiple of MP_posEncoderIncr, i.e. a
multiple of the line count, in MP_posEncoderDist.
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.

September 2015 6.4 Encoders 1037


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. 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 refe-
rence 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

1038 HEIDENHAIN Technical Manual TNC 640


 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 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 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 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
(cf. iTNC 530: MP331)
Available from NCK software version: 597110-01.
Format: String
Input: 0.000 000 001 to 99 999.9999 [mm] or [°]
For spindles: 360°
For multiturn encoders with EnDat interface:
Distance per encoder revolution or
Formula (max. 300 characters), see page 505
Default: 5 [mm] or [°]
Access: LEVEL3
Reaction: REF

September 2015 6.4 Encoders 1039


MP_posEncoderIncr
Number of signal periods for distance from
MP_posEncoderDist
(cf. 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 increment between two fixed reference marks
(cf. 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

1040 HEIDENHAIN Technical Manual TNC 640


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 generated under CfgEndatInfo that has the
serial number of the EnDat encoder as the key name. The momentary value
of the multiturn overflow counter of the encoder is cyclically saved in
MP_endatMultiturnCtr under CfgEndatInfo before the control shuts down.
With each start-up of the control, all entries in CfgEndatInfo are compared
with the detected hardware and MP_endatMultiturnCtr is evaluated upon
matching encoder serial numbers. The switch-off position of the axis saved in
SRAM is compared with the position from the currently supplied value of the
encoder as calculated with MP_endatMultiturnCtr.
If the control detects an excessive difference an emergency stop error
message is triggered, and in an "EnDat encoder evaluation" dialog the user is
requested to confirm the value for MP_endatMultiturnCtr recalculated by the
control. If you see that the value calculated by the control is not correct, you
can manually enter the value of the machine parameter in the configuration
editor.
With the adoption of current positions in the SRAM of the control, the user
must fundamentally compare the actual, physical position with the current
position as displayed in the dialog.
With modulo rotary axes with EnDat encoders and multiturn information,
MP_endatOverflowPos is additionally required to save a reference value
when departing the multiturn range. With such constellations you must
activate saving this reference value in MP_endatOverflowPos via
refAuxFunctions/MP_multiturnModulo = TRUE.

September 2015 6.4 Encoders 1041


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 speed encoder
Available from NCK software version: 597110-09.
Format: Menu choice
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

1042 HEIDENHAIN Technical Manual TNC 640


Battery-buffered Battery-buffered EnDat2.2 encoders (e.g. EBI 1135: Multiturn function via
EnDat encoders battery-buffered revolution counter) are not supported by the control. Please
use EnDat2.2 encoders without battery buffering instead.

September 2015 6.4 Encoders 1043


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 offers 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, enter for each axis the
nominal increment between two fixed reference marks 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 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: 1 000 [signal periods]
Access: LEVEL3
Reaction: REF

1044 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
(cf. 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

September 2015 6.4 Encoders 1045


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
(cf. iTNC 530: MP110, MP111)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: none
No position encoder connected
X01...X06
Position encoder inputs are X01...X06 (on the MC 32x or
MC 128)
Default: none
Access: LEVEL3
Reaction: REF

1046 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 amplitude at the position encoder input
(cf. iTNC 530: MP115.0, MP116.0)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: 1 VPP
The input signal of the encoder is a 1 VPP
11 µA
Input signal of encoder is 11 µA.
Default: 1 VPP
Access: LEVEL3
Reaction: RUN

Note

For encoders with EnDat interfaces, the incremental track data must be
entered for the corresponding position encoder inputs.

September 2015 6.4 Encoders 1047


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 encoder input Position encoder 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

1048 HEIDENHAIN Technical Manual TNC 640


MP_speedEncoderInput
Assignment of a speed encoder input to the axis
(cf. iTNC 530: MP110, MP112)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: none
No speed encoder connected
X15...X20
Speed encoder inputs are X15 toX20
X80...X83
Speed encoder inputs are X80 toX83
X301...X306
Reserved
Inverter
Reserved
Default: none
Access: LEVEL3
Reaction: REF

MP_inverterInterface
Assignment of a speed command output to the axis
(compare to iTNC 530: MP120, MP121)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: none
Not a PWM output, no power module connected
X51...X56
PWM outputs are X51 toX60
X80...X85
only on UEC 11x: Motor connections are X80...X85
X301.1 to X305.2
Reserved
Default: none
Access: LEVEL3
Reaction: REF

MP_posEncoderInput
Assignment of a position encoder input to the axis
(cf. iTNC 530: MP110, MP111)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: none
No position encoder connected
X01...X06
Position encoder inputs are X01...X06 (on the MC 42x)
X35...X38
Position encoder inputs are X35 toX38 (on the MC 42x)
X201...X210
Position encoder inputs are X201 toX210 (on the CC)
Default: none
Access: LEVEL3
Reaction: REF

September 2015 6.4 Encoders 1049


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. Enter the HSCI
motherboard address of the respective drive-control motherboard serves 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

1050 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 amplitude at the position encoder input
(cf. iTNC 530: MP115.0, MP116.0)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: 1 VPP
The input signal of the encoder is a 1 VPP
Default: 1 Vpp
Access: LEVEL3
Reaction: RUN

MP_posEncoderFreq
Input frequency of position encoder inputs
(cf. iTNC 530: MP115.2, MP116.2)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: fast
Input frequency is max. 400 kHz
slow
Input frequency is max. 27 kHz
Default: fast
Access: LEVEL3
Reaction: RUN

September 2015 6.4 Encoders 1051


In MP_posEncoderResistor, you define whether a terminating resistor (120
ohms) is required.
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 the position encoder input
(cf. iTNC 530: MP115.0, MP116.0)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: without
Without terminating resistor
120 ohms
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.

1052 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 encoder input Position encoder input


(MP inverterInterface) (MP_speedEncoderInput) (MP_posEncoderInput)

X80 X15 X201

X81 X16 X202

X82 X17 X203

X83 X18 X204

X84 X19 X205

September 2015 6.4 Encoders 1053


MP_speedEncoderInput
Assignment of a speed encoder input to the axis
Available from NCK software version: 597 110-01.
Format: Menu choice
Options: none
No speed encoder connected
X15...X20
Speed encoder inputs are X15 toX20
X80...X83
Speed encoder inputs are X80 toX83
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: Menu choice
Options: none
Not a PWM output, no power module connected
X51...X56
PWM outputs are X51 toX60
X80...X85
only on UEC 11x: Motor connections are X80...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: Menu choice
Options: none
No position encoder connected
X01...X06
Position encoder inputs are X01...X06 (on the MC 42x)
X35...X38
Position encoder inputs are X35 toX38 (on the MC 42x)
X201...X210
Position encoder inputs are X201 toX210 (on the CC)
Default: none
Access: LEVEL3
Reaction: RESET

1054 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 position of the
encoders.

Block diagram:
Defining the
traverse direction

September 2015 6.4 Encoders 1055


Key:

Signal Parameters 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
(cf. iTNC 530:
With dual encoder system MP1040 XOR MP210,
with single encoder system off)
Available from NCK software version: 597110-01.
Format: Menu choice
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
(cf. iTNC 530: MP210)
Available from NCK software version: 597110-01.
Format: Menu choice
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

1056 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 mes-
sage C3B0 Motor does not rotate <AXIS> appearing.

September 2015 6.4 Encoders 1057


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 set 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: Menu choice
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

1058 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
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 monitoringfunctions:


 MP_checkAbsolutPos:
Monitor the absolute position of position encoders with distance-coded
reference marks
 MP_checkRefDistance:
Monitor the reference mark of the spindle speed encoder (distance bet-
ween zero crossovers of the spindle)
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 for distance-coded encoder
(cf. iTNC 530: MP20.0)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: on
Monitor the absolute position
off
No monitoring
Default: off
Access: LEVEL3
Reaction: RUN

September 2015 6.4 Encoders 1059


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

1060 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.4 Encoders 1061


Monitor the  MP_checkEncoderState enables you to activate or deactivate the monito-
encoder status ring of encoder status signals for encoders with EnDat 2.2 interface.
signals with EnDat The status signals are reported via the ERR_ENCODER_STATE bit. The following
2.2 interface signals are monitored:
 Position could not be determined (bit 2 = 1)
 CRC error during EnDat 2.2 transmission (bit 3 = 1)
 No position determination 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
Monitor the encoder status signals
Available from NCK software version: 597110-08.
Format: Menu choice
Options: on
Monitoring active
off
No monitoring
Default: off
Access: LEVEL3
Reaction: RUN

Note

The encoder status signals are sent 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.

1062 HEIDENHAIN Technical Manual TNC 640


the speed encoder The TNC 640 uses the type of encoder from 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

September 2015 6.4 Encoders 1063


6.4.9 Linear and torque motors
Linear and torque motors may be used only in conjunction with the CC 61xx.
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

Linear scale

Torque motor setup

Rotor
Linear scale
section

Stator

1064 HEIDENHAIN Technical Manual TNC 640


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 VSS 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

September 2015 6.4 Encoders 1065


Dual-head In order to improve the compensation of eccentricity errors in rotary axes with
evaluation for torque motor, it is possible to mount two encoders with EnDat 2.2 interface
rotary axes with to an axis and offset the value of one against the other. The offset calculation
torque motor is done by the TNC.
The following conditions must be met:
 Possible only with a torque motor, no additional speed encoder connection
possible
 One encoder of the axis is connected to the position encoder input, and the
other one to the speed encoder input
 Both encoders must be equipped with an EnDat2.2 interface (EnDat22 pro-
tocol)
 The offset between both encoders at the rotary axis must be 180°
Configuration of the dual-head evaluation:
 Under CfgAxisHardware for the axis, set the following machine parameter:
MP_posEncoderTwoHead = on

MP_posEncoderTwoHead
Activate dual-head evaluation
Available from NCK software version: 597 110-10.
Format: Menu choice
Options: on
Dual-head evaluation active.
off
Dual-head evaluation inactive.
Default: off
Access: LEVEL3
Reaction: REF

1066 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)
In CfgAxis/axisHw = Analog, analog closed-loop axes are defined as such and
are described in the parameter object CfgAxisAnalog (See "Controller
parameters for analog axes" on page 1384).

Analog output  In MP_analogOutput, you define the number of the analog nominal-value
output at the connector.
 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: Menu choice
Options: none
No analog output assigned
analog outputs 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 controller 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, MP_analogOutput = analog Output 5...8, see page 340 is used for the
second CMA-H.

September 2015 6.5 Analog drives 1067


Holding brakes The PLC words NN_AxBrakeReleaseRequest, NN_SpiBrakeReleaseRequest
with analog drives and the PLC module 9159 only contain the request to release the brake with
analog drives if they are configured via CfgBrake and MP_brakes:
 Define a key name for the parameter set of each brake in CfgBrake and
assign the brakes to the axes via MP_brakes. In this way the PLC words
NN_AxBrakeReleaseRequest, NN_SpiBrakeReleaseRequest and the PLC
module 9159 can be used to control the holding brakes by the PLC program.
Testing the motor brake is not available for analog axes.
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 ana-
analog axes log 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

1068 HEIDENHAIN Technical Manual TNC 640


6.6 Reading and writing axis information

6.6.1 Axis information, reading


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 drive
0: No
1: Yes

September 2015 6.6 Reading and writing axis information 1069


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 "deac-
tivated 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/K <Information>
Axis specific: Status information according to table
for all axes: Bit-encoded
(bit 0 corresponds to logical 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

1070 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 the 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.1[%] with sign
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (Axis information read)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Interrogated axis number or axis informa-
ErrorCode tion invalid

September 2015 6.6 Reading and writing axis information 1071


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 <Coordinate type>
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

1072 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 <Coordinate type>
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 indicates positioning around how many principal
axes (X, Y, Z) due to kinematic compensation
(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. not divisible by 4), or
the double-word block cannot be written
to the given target address

September 2015 6.6 Reading and writing axis information 1073


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/K <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

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 symbolic memory
interface, See "The API 3 and API 4 symbolic memory interfaces" on page
2328.

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 symbolic memory interface. 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, #12, and #13 (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 num-
ber of rotations under consideration of the override and limitations. It indica-
tes 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 lubrica-
tion) can be reset with Module 9418. Path-dependent lubrication is not usual
for spindles, but is supported in special cases.

1074 HEIDENHAIN Technical Manual TNC 640


Call:
PS B/W/D/K <Spindle index>
0: Spindle 1
1: Spindle 2
etc.
PS B/W/D/K <Desired spindle information>
0: Index of the axis
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
13: Utilization of the drive
20: Information about wye/delta operation
21: Information about path-dependent lubrication
22: Information on tapping
23: Information on spindle synchronism
24: Information on the assignment of the components to an
NC channel
25: Information on control via an NC channel
26: Information on handwheel operation
CM 9411
PL D <Spindle information>
For 0: Index of the axis from CfgAxes/axisList
For 1..5: Value in 0.0001[°]
For 10..12: Value in 0.001 [rpm]
For 13: Value in 0.1[%] with algebraic sign
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
For 22: 0: Tapping not active
1: Tapping active
2: Rigid tapping
active
For 23: 0: Synchronism not active
1: Synchronism active, spindle is slave
2: Synchronism active, spindle is slave,
Synchronization achieved
3: Synchronism active, spindle is master
4: Synchronism active, spindle is master,
Synchronization achieved
For 24: 0: Spindle is not assigned to an NC channel
1: Spindle is assigned as spindle to an NC channel
2: Spindle is assigned as NC axis to an NC channel
For 25: 0: Spindle is not controlled by the NC channel
1: Spindle is controlled by the NC channel,
control aborted
2: Spindle is controlled by the NC channel
For 26: 0: Handwheel not active

September 2015 6.6 Reading and writing axis information 1075


1: Handwheel active
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (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 does not
operate with symbolic memory interface)

1076 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 parame-


ter 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 1000.

September 2015 6.6 Reading and writing axis information 1077


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_deactivatedAt
Start.)

1078 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
 Monitoring of the amplitude of
the encoder
 Monitoring of the frequency of
the encoder
 Positioning window
Manually operated  Monitoring of the amplitude of  Following error monitoring
axis the encoder  Standstill monitoring
 Monitoring of the frequency of  Movement monitoring
the encoder
 Positioning window
Displayed axis  Monitoring of the amplitude of  Following error monitoring
the encoder  Standstill monitoring
 Monitoring of the frequency of  Movement monitoring
the encoder
 Positioning window
Deactivated axis  Following error monitoring
 Standstill monitoring
 Movement monitoring
 Monitoring of the amplitude of the
encoder
 Monitoring of the frequency of the
encoder
 Positioning window

Parameter sets, If you also switch parameter sets (e.g. when exchanging milling heads) when
switching activating or deactivating axes over the PLC, you have to observe particular
conditions (See "Parameter sets, switching" on page 602).

September 2015 6.6 Reading and writing axis information 1079


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 when 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!

1080 HEIDENHAIN Technical Manual TNC 640


Deactivate axis The parameter MP_deactivatedAtStart enables you to deactivate an axis or
during start-up spindle during acceleration and to activate it again later with control operation.

Note

For all axes that are removable (e.g. exchangeable milling heads), HEIDEN-
HAIN recommends setting the MP_deactivatedAtStart parameter to the
value TRUE. In this case, the PLC must ensure that the respective physi-
cally 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 startup
Available from NCK software version: 597 110-04.
Format: Menu choice
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, parameter optional (= behavior as for FALSE)
Access: LEVEL3
Reaction: RUN

September 2015 6.6 Reading and writing axis information 1081


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.
 When deactivating an axis (activation status 14), this must not be assigned
to a channel or must not be a part of the active kinematic.
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 synchro-
nization of the look-ahead 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 start-up
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/K <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)

1082 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 cur-
rent and speed controllers must be inactive.
 The activation status must not be switched except in a strobe with synchro-
nization 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/K <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).

September 2015 6.6 Reading and writing axis information 1083


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 HEIDEN-


HAIN 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

1084 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 HEIDEN-


HAIN 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.
 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

September 2015 6.6 Reading and writing axis information 1085


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.
 The "Axis is located at or behind the negative/positive limit switch" status is
not set if the axis was moved by PLC positioning, without limit switch moni-
toring, to a position outside the traverse range.
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
9: Axis is located at or behind the negative limit switch
10: Axis is located at or behind the positive limit switch
CM 9048
PL B/W/D/K <Status>
Interrogation of an individual axis:
0 = inactive
1 = active
Interrogation of all axes: Bit-encoded axis mask

1086 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 num-
ber, an open-loop axis or an axis that is
temporarily not a closed-loop axis was sel-
ected.
If status information 1 was transferred,
then this error occurs if an invalid axis num-
ber, an open-loop axis, an axis that is tem-
porarily 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 num-
ber or an open-loop axis was selected.

September 2015 6.6 Reading and writing axis information 1087


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.
The machine operator can also use the MOD key to limit the traverse range of
the machine axes.

Activating traverse The MOD function Machine settings > Traverse limits enables a lower and
limits via the MOD upper limit to be set to limit the active traverse range for all axes.
function
Constraints for modulo axes:
 The lower limit must be between -360° and +360° (limit values excluded)
 The upper limit must be between 0° and +360° (limit values excluded)
 The lower limit must be less than the upper limit
 The difference between the upper and lower limit must be less than 360°
 If the machine parameter MP_moveAfterRef is configured, the movement
is not traversed. The TNC 640 displays a warning in this case.
 If a modulo axis is outside the valid work range upon activation of the tra-
verse limits, traversing can then be in any direction in the workspace.
 When a traverse limit is activated for a modulo axis, the modulo counter is
set to the value 0 if it was previously greater than 0. The modulo counter is
set to –1 if it was less than 0. The display therefore jumps to values between
-360° and +360°. Example:
For a modulo axis, traverse limits are set from –45° to +45°.
Position in the display with activation of the traverse limit: +580°
After activation the display jumps to +220°.
There are now two possibilities:
• If movement in the workspace is positive (above 360°), the axis stops
at 45° and the display shows +405°. Movement can be between +315°
and +405° (display values).
• If movement in the workspace is negative the axis stops at –45°. Move-
ment can be between -45° and +45° (display values).
 For modulo axes, the value range between the software limit switches must
be limited appropriately. For this purpose, either an upper or a lower limit
must be set.

1088 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.
Proceed as follows to configure traverse ranges for the machine:
 Add the optional Config Object CfgWorkingRange to the machine configu-
ration.
 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).

September 2015 6.7 Traverse ranges 1089


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
Kinematics to be activated from CfgKinCompositeModel
Available from NCK software version: 597110-08.
Format: Menu choice
Options: Key names of kinematics models configured under
CfgKinCompositeModel. Enter the kinematics to be selected
when this traverse range is activated.
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 980.

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 set 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 the parameter set
Available from NCK software version: 597110-08.
Format: Array 0...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

1090 HEIDENHAIN Technical Manual TNC 640


MP_axis
Physical axis
Available from NCK software version: 597110-08.
Format: Menu choice
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: Menu choice
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: Menu choice
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

September 2015 6.7 Traverse ranges 1091


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: Menu choice
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. Following 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
exited. The marker is set to 1 following successful switchover
in the traverse range.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1092 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 is effective only for handwheels with axis keys (e.g.


HR 410, HR 510, HR 520, or HR 550) and panel-mounted handwheels HR
150 (with 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 the handwheel for this traverse range
Available from NCK software version: 597110-08.
Format: Array 0...23
Input: Selection of axes that can be moved with the handwheel.
For portable handwheels with axis keys, e.g. HR 410,
HR 510, 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

September 2015 6.7 Traverse ranges 1093


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 during startup
Available from NCK software version: 597110-08.
Format: Menu choice
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: Menu choice
Options: List with traverse ranges from CfgWorkingRange.
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1094 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.
The settings in CfgChannelAxes/progAxis are effective, and the axes
specified for the subkinematic in
CfgKinSimpleModel/progAxes.
For more detailed information about modifying programmable axes with
kinematic switchover, see "MP_progAxes" on page 1169.

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 1008. An example for display rules for a machine with two work ranges
is shown under "Exemplary configuration for alternating table machining" on
page 1097.

September 2015 6.7 Traverse ranges 1095


6.7.2 Switchover traverse range

Select traverse In OEM cycles, the traverse range can be activated with the transferred key
range via NC macro name with FN17: SYSWRITE ID300 NR1 = "<Key>" or FN17: SYSWRITE ID300
NR1 = QS<No>. 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 switching from the iTNC 530:


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
 Process 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

1096 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 traver-
sing 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/Phy-
sicalAxis.
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/Parame-
terSets.
In the example configuration the X axis 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 different configured values in the
software end switches (CfgPositionLimits).
 Define the kinematic configurations in Channels/Kinematics.
The example machine has three kinematics models under CfgKinCompos-
Models:
KCL contains the linear axes and the left rotary table CL
KCR contains the linear axes and the right rotary table CR
K3 contains only the linear axes
 Define the programmable axes in CfgProgAxis.
Special feature: Configuration of the rotary axes CL and CR
Define 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 kinematic becomes the PLC axis
and can be traversed via PLC positioning.
 Define three traverse ranges via CfgWorkingRange, e.g. with the freely sel-
ectable key names RangeL, RangeR and RangeA.

September 2015 6.7 Traverse ranges 1097


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

1098 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 in the kinematic, 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 interpre-


ted 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.

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.

September 2015 6.7 Traverse ranges 1099


6.7.4 Milling heads, changing
To change milling heads, you need to configure the physical head axes and
create exchangeable subkinematics (CfgKinSimpleModel) 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 model in CfgKinSimpleModel that contains the
complete kinematic description of the change head.

1100 HEIDENHAIN Technical Manual TNC 640


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
HeadChange Key name of kinematic model
subKinList
HC_Head Head kinematic
HC_Base Basis kinematic
activeSpindle: S
tiltingAllowed: TRUE
CfgKinSimpleModel
HC_Head Empty subkinematic for disconnected
head
CfgKinSimpleModel
HC_Head Subkinematic for connected head with
head axes A and C
kinObjects
AX_A
AX_C
progAxes
A
C

 Save subkinematics and corresponding parameter sets in machine parame-


ter subfiles.
 The machine parameter subfiles can be loaded/unloaded in NC macros:
FN17: SYSWRITE ID1020 NR3 = <path> ; Load
FN17: SYSWRITE ID1020 NR4 = <path> ; Unload
The path can be entered 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. From this data, derive or create the confi-
guration data for the head axes (parameter sets) and the subkinematics
(CfgKinSimpleModel) for the head, and save it in a machine parameter sub-
file.
 Load the machine parameter subfile of the connected red
 Switch to a traverse range with head
 Activate the drives for the new axis/axes

September 2015 6.7 Traverse ranges 1101


Modifying The axis letter for programming a physical axis can be changed with a
programmable axis kinematic switch-over. If a new head is loaded, it may include other drives but
letters in run-time the motor connections stay the same.
You can freely assign the head axes to an axis letter as part of a kinematic
switch-over.
Example configuration:
The physical axis with the key name "B" (CfgAxis) should be assigned to the
axis letter "C".
 In CfgProgAxis create a new key name for the renaming, e.g. "B_to_C". Spe-
cify MP_axName = C and under MP_relatedAxis specify the key name of
the B axis, in this example "B".
 Also create a new key name for the renaming under PhysicalAxis. Specify
the same designation as before, e.g. "B_to_C". Then enter only the configu-
ration object CfgAxisPropKin. All other objects remain empty or grayed out
(CfgAxis, CfgAxisSafety, CfgRollOver, CfgMachDatumExtra).
 In the kinematic define a new configuration object CfgKinSimpleAxis. In
MP_axisRef specify the key name of the renaming. For this example confi-
guration specify "B_to_C".
 Add the new CfgKinSimpleAxis to the kinematic of the appropriate axis.
 Also add the new CfgProgAxis or the key name "B_to_C" into the list
MP_progAxes of the associated CfgKinSimpleModel (or in MP_progList
under CfgChannelAxes).

1102 HEIDENHAIN Technical Manual TNC 640


6.7.5 Compare with: Traverse range switchover / head change with iTNC 530 and TNC 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 over
Traverse range following Fixed traverse range 1 Configured 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 kine- All configuration data of a head
machines matic 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 (CfgProg
Axis) 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 entities and therefore also CfgAxis for one
axis letter if only one of these is active at any time.

September 2015 6.7 Traverse ranges 1103


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).
 Overwriting the software limit switches is also possible 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

The following compensations are not considered by the limit


switches:
 Angle tolerances for rotary axes (TCPM, Cycle 32)
 Linear axis tolerance (Cycle 32)
 Temperature compensation
 Compensations by the PLC program.
 Compensation of reversal error
 Nonlinear axis error compensation
 Compensation through KinematicsComp (software option)

1104 HEIDENHAIN Technical Manual TNC 640


MP_swLimitSwitchPos
Positive software limit switches
(cf. 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
(cf. 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 Overwrite 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. The
associated position data can be stored in the CfgOemPosition parameter
object or in a table, for example. Software limit switch
For more information, see "Data transfer NC program <=> NC (FN17: SYS-
WRITE and FN18: SYSREAD)" on page 2557.
 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 1088
 For modulo axes, axis movements are only possible if all required limits
have been set. This means that you need to set both upper and lower limits
or no limits at all.

September 2015 6.8 Software limit switches 1105


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 lubri-


cation 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
(cf. 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

1106 HEIDENHAIN Technical Manual TNC 640


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 cor-
rectly.
 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 availa-
ble 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 com-
mand of a PLC cycle (Module 9120, 9121, 9123, 9125, or 9227) is executed.
 A "positioning error" status set in this axis is cleared. The status must be eva-
luated by Module 9122.
 An axis that is not configured as "active," or an axis that was set to the "deac-
tivated axis" activation status (e.g. with Module 9226 or 9418), is treated as
if it were not present.

September 2015 6.10 PLC axes 1107


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/K <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
in <error code> see above
NN_GenApiModule 1 Axis does not exist or slave axis transfer-
ErrorCode (W1022) red
2 Axis not configured as auxiliary axis, abso-
lute position outside modulo range, open-
loop axis programmed, or invalid feed rate
programmed
9 Axis is already being positioned

1108 HEIDENHAIN Technical Manual TNC 640


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 com-
mand of a PLC cycle (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 "deac-
tivated 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/K <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
in <error code> see above
NN_GenApiModule 1 Axis does not exist or slave axis transfer-
ErrorCode (W1022) red
2 Axis is not configured as an auxiliary axis
9 Axis is already stationary

September 2015 6.10 PLC axes 1109


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 recogni-
zed 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 "deac-
tivated 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 auxi-
liary axes can be started
Call:
PS B/W/D/K <Axis>
Index from CfgAxes/axisList
CM 9122
PL B/W/D/K <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

1110 HEIDENHAIN Technical Manual TNC 640


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 refe-
rence 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 cor-
rectly.
 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 com-
mand of a PLC cycle (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 "deac-
tivated axis" activation status (e.g. with Module 9226 or 9418), is treated as
if it were not present.

September 2015 6.10 PLC axes 1111


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/K <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
in <error code> see above
NN_GenApiModule 1 Axis does not exist or slave axis transfer-
ErrorCode (W1022) red
2 Axis not configured as auxiliary axis, open-
loop axis programmed or invalid feed rate
programmed
9 Axis is already being positioned

1112 HEIDENHAIN Technical Manual TNC 640


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 integral number (0 to 10 000), which can
be in the range from 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 "deac-
tivated 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/K <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
in <error code> see 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

September 2015 6.10 PLC axes 1113


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:


 An there is an NC STOP occurs in the Manual or Handwheel operating modes.
 an NC STOP and "internal stop" occur in the automatic operating modes.
 An EMERGENCY STOP occurs.
 An error message that results in a STOP.

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 posi-
tioning 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 "deac-
tivated 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

1114 HEIDENHAIN Technical Manual TNC 640


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 – Rapid traverse override (alternative behavior: see
description of bit 4):
0: Inactive
1: Rapid traverse override and configured rapid traverse
(settings in MP_rapidFeed) are effective
Bit 3 – Collision monitoring (only TNC 640):
0: Active
1: Inactive
Bit 4 – Rapid traverse override (alternative behavior: see
description of bit 2):
0: Inactive
1: Rapid traverse override and transferred feed rate (limited
by settings in MP_maxFeed) are effective
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
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (positioning started)
Error (M4203) 1 Error code in
NN_GenApiModuleErrorCode or
in <error code> see above
NN_GenApiModule 2 Open-loop axis, auxiliary axis or slave axis
ErrorCode (W1022) programmed or impermissible values pro-
grammed 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

September 2015 6.10 PLC axes 1115


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 "deac-
tivated 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/K <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

1116 HEIDENHAIN Technical Manual TNC 640


Module 9224 PLC positioning movements, stopping
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.
 Starting with the tenth axis (axis index 9), the positioning movements can
be stopped only with this module.
 An axis that is not configured as "active," or an axis that was set to the "deac-
tivated axis" activation status (e.g. with Module 9226 or 9418), is treated as
if it were not present.
Call:
PS B/W/DK <Axis>
n: Index of the axis from CfgAxes/axisList
PS B/W/DK <Mode>
Not supported until now, 0 transferred
CM 9224
PL B/W/D/K <Error code>
0: Successful, PLC positioning stopped
1: Invalid axis was programmed
2: The axis is not being positioned by the PLC
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

September 2015 6.10 PLC axes 1117


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 that is not configured as "active", or an axis that is currently deacti-
vated, is treated as if it were not present.

1118 HEIDENHAIN Technical Manual TNC 640


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 is pending with SYNC_CALC synchronization. No axis direction key
should be pressed in manual operating mode. The entered positions are refe-
renced to the machine datum. Rotary axes with transition to zero are posi-
tioned by the shortest path.
 If a parameter (e.g. target position, feed rate..) of an already initiated posi-
tioning 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 posi-
tioned by the PLC at the same time were started with collision monitoring
inactive.
The deactivation of collision monitoring (bit 3) for the PLC positioning move-
ment does not affect the status information provided by Module 9064 (col-
lision monitoring status). With active DCM the module still reads "Monito-
ring active".
Positioning auxiliary axes:
 For axes with automatic reduction (modulo value in MP_isModulo) traver-
sing 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.
 For an auxiliary axis, only the most recently programmed auxiliary-axis com-
mand of a PLC cycle (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 posi-
tioning.

September 2015 6.10 PLC axes 1119


Position spindles as axes (only controls with symbolic memory interface,
from version API 4.0):
Use Module 9227 to position spindles as axes. This can only be done during a
standstill. The module returns an error if the spindle is moved or oriented. This
function is particularly interesting for spindles that are temporarily assigned to
an NC channel as an NC axis. For setup procedures, these drives can be
positioned independently of the current assignment.
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. A 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 and configured rapid
traverse (settings in MP_rapidFeed) are effective
Bit 3 = 1: Collision monitoring is deactivated
(only TNC 640)
Bit 4 = 1: Rapid traverse override and transferred feed rate
(limited by settings in MP_maxFeed) are effective
CM 9227
PL B/W/D/K <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)

1120 HEIDENHAIN Technical Manual TNC 640


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 parameter <axis>
ErrorCode (W1022) 2 Invalid value for parameters <feed rate>,
<acceleration>, <jerk> or <mode>, axis is
open loop (Module 9155) or absolute posi-
tion is outside of modulo range
9 Axis is already being positioned
21 Program run, no NC-strobe output
33 Axis not yet referenced

September 2015 6.10 PLC axes 1121


6.10.1 Synchronizing Functions (option 135)

Real Time Coupling The real-time coupling function allows the cyclic calculation of a position offset
(RTC) for an axis from a position value of any other axis 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 formulas:
See example below.

Attention

Real-time coupling function – general safety precaution


Movements of axes that are triggered by the real-time coupling function are
only defined by their formula. There is no specific monitoring. The move-
ments produced by the result of the formula are performed by the axes
involved. If the formula contains errors, there is danger of collision!
Thus, the real-time coupling function should only be configured and tested
by experienced staff. Proceed very carefully!
HEIDENHAIN recommends that you test each formula before actually per-
forming the movement. See "MP_testMode" on page 1131.

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
limiter 403409
testMode 403406

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgDCM
reactionIfRTC 205301

1122 HEIDENHAIN Technical Manual TNC 640


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 para-
meter. 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.
 The MP_maxFeed parameter specifies the maximum speed with which the
coupling may be positioned. Enter the component of CfgFeedLimits/max-
Feed in percent.
If this value is exceeded, a warning is displayed. There is no limitation
because this might lead to contour damage.
 The MP_maxAcc parameter specifies the maximum acceleration with
which the coupling may be positioned. Enter the component of CfgFeedLi-
mits/maxAcceleration 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.
 Use the MP_limiter parameter to limit the result of the RTC formula calcu-
lation. The calculation result, applied to the axis in the form of a position off-
set, is limited to the maximum value you enter here. This makes it possible,
for example during commissioning, to limit the results of an RTC calculation
to a maximum distance traversed.
 MP_testMode – HEIDENHAIN recommends that you test each formula
before actually performing the movement. To do so, 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 oscillos-
cope.
If the parameter is not included in the configuration or if it is set to FALSE,
test mode will not be activated. The calculation result of the formula is app-
lied directly to the corresponding axis.

September 2015 6.10 PLC axes 1123


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


must not move.
 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. A transfer of 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.

Attention

RTC for machines with collision monitoring (DCM, option 40)


 There is no collision monitoring (DCM inactive) with an active coupling
function. 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.

1124 HEIDENHAIN Technical Manual TNC 640


Attention

Opening a coupling
 MP_typeOfOffset = None: When a coupling is opened any offset existing
is compensated. The original position values are adopted again. When
couplings are opened, positions must therefore be specified where this
is safe.
 MP_typeOfOffset = Keep: Any offset existing is kept. An actual-to-
nominal value transfer is performed.
 Caution, risk of collision!
The MP_typeOfOffset = Keep setting may not be selected for NC axes
operating in automatic mode! The position of that axis gets lost once the
coupling is opened. This can result in a collision!

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 pro-
gram is aborted! The affected axis will perform an actual-to-nominal value
transfer.
Couplings closed by the PLC will not be opened.

Attention

EMERGENCY STOP with closed coupling


In case of an EMERGENCY STOP, couplings closed by the PLC will not be
opened.

September 2015 6.10 PLC axes 1125


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 per-
missible axis speed from the PLC.
In addition, the percentage in "maxFeed" from the RTC command is taken
into account.
 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.

End limit 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. An
existing coupling must first be opened to deactivate the general SW limit
switch monitoring via a command and to exit the work space.

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 radi-
ans (360° = 2*pi).
 The result of the formula is interpreted in mm or degrees (in contrast to the
iTNC 530: here, the unit is 1/10 000 mm or 1/10 000 degrees).
 In a formula, only a single axis may be referenced.

1126 HEIDENHAIN Technical Manual TNC 640


Possible calculation When creating formulas, mathematical functions (See page 505) 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

Attention

If the RTC formula of an axis uses the actual position of the same axis, feed-
back is created that will affect the control stability and may lead to instabi-
lity.

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 ascending
order;
HEIDENHAIN recommends to create tables with equidistant values. Proces-
sing of a table that does not contain equidistant interpolation values is far
more complex. For this reason, the processor load will increases accordin-
gly.
 A maximum of 1.000 rows per table
 The storage path %OEM%\table is preset
 Start comment lines with a semicolon in the first column.
 If the position value of the reference axis is outside the value range of the
table, the system will not extrapolate, but – for safety reasons – use the
outermost value of the table.

September 2015 6.10 PLC axes 1127


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

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 position value
(XNOM) of axis 3
The input values described above (REF, XNOM, X, XACT) can be used as
reference values.

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 inter-
preting 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.

1128 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, parameter optional
Access: LEVEL3
Reaction: RUN
(1) For the syntax for formula input in MP_function see page 1126.

MP_typeOfOffset
Treatment of the position offset for RTC
Available from NCK software version: 597110-08.
Format: Menu choice
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.
When opening a coupling, the existing offset from the actual
nominal position of the axis can be kept.
Default: None
Access: LEVEL3
Reaction: RUN

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

September 2015 6.10 PLC axes 1129


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_limiter
Limit for the result of the RTC formula
Available from NCK software version: 597110-10.
Format: Number
Input: 0 to 100 [mm] with max. 9 decimal places
Default: 0 [mm] (=no limit), optional parameter
Access: LEVEL3
Reaction: RUN

1130 HEIDENHAIN Technical Manual TNC 640


MP_testMode
Activate the test mode for RTC
Available from NCK software version: 597110-09.
Format: Menu choice
Options: TRUE
Test mode is active.
The formula calculation result is only output in the integrated
oscilloscope (RTC channel) and is not applied to the axis.
FALSE
Test mode is inactive.
The formula calculation results will be applied to the nominal
position value of the corresponding axis.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: RUN

MP_reactionIfRTC
Reaction to RTC commands with active DCM
Available from NCK software version: 597110-09.
Format: Menu choice
Options: Cancel
The NC program is aborted and an error message is displayed.
None
RTC commands are being executed. During this time, DCM is
deactivated. This is indicated by a warning.
Default: Cancel, optional parameter
Access: LEVEL3
Reaction: RUN

September 2015 6.10 PLC axes 1131


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 if the NC channel is not active
or if a strobe with synchronization for the look-ahead calculation
(SYNC_CALC) is ready.
 If an EMERGENCY STOP occurs, the coupling is not deactivated
by the NC.
 A pending axis offset to be applied upon activation can be kept or compen-
sated. The data required for correcting are taken from the entity CfgRTCou-
pling.
Call:
PS B/W/D/K/S<Coupling function>
PS B/W/D/K <Coupled 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 from <Coupling function> is
valid
Bit 1 = 1: Coupling function from CfgRTCoupling valid
Bit 2 = 0: Existing axis offset is to be retained
Bit 2 = 1: Existing axis offset should be compensated (data
from CfgRTCoupling)
CM 9228
PL B/W/D/K <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 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: The NC channel assigned to the axis is active

1132 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 posi-
tioning (Module 912x) or "free rotation"
(Module 9223) is active)
11 Invalid PLC string programmed for formula
28 Coupling function for programmed axis
already active / not active, or the NC chan-
nel assigned to the axis is active
33 Axis not yet referenced

Function(X) = 20 * sin(rad(Xact(S)))

Kopplung Kopplung
S schließen öffnen

360

Close:
Offset = None Open:
X
Offset = None
MP_offsetFeed
Offset
ausfahren
100
MP_offsetFeed
Offset
ausfahren
Open: Offset nicht
Offset = Keep ausfahren

X Open:
Offset = None
Close: Offset
Offset = Keep ausfahren
100

MP_offsetFeed

Open: Offset nicht


Offset = Keep ausfahren

September 2015 6.10 PLC axes 1133


Module 9229 Status of coupling function
With Module 9229, you can 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 set only if the <status / error> conditions refe-
rence 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 <Coupled axis>
PS B/W/D/K <Mode>
0: Status of the coupling function triggered via Module 9228
1: one-time position calculation
with coupling function from string <Coupling function>
(only possible in submit/spawn job)
2: one-time 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/K <Status/error>
Mode 0:
0: No coupling function active for programmed axis
1: Coupling function active for programmed axis
2: Coupling function aborted
<Additional info> = 1: Abortion due to run time
calculation error
3: Syntax error in coupling function
<Additional info> = 1: RTC already open while
deactivating
<Additional info> = 2: RTC already closed while
activating
<Additional info> = 3: Internal management error
<Additional info> = 4: RTC in action via geometry
<Additional info> = 5: Error in function
<Additional info> = 6: No function available
<Additional info> = 7: Control option not set
5: Activation of a coupling function requested by the PLC
(but not completed yet)
6: Deactivation of a coupling function requested by the
PLC (but not completed yet)
Mode 1/2:
0: Position value has been calculated
<Additional info> = Current calculated position value
3: Syntax error in coupling function
<Additional info> see details for Mode 0
Mode 3:
0: No coupling function is active
7: Coupling function is active, offset exists
8: Coupling function is active, no offset exists or offset

1134 HEIDENHAIN Technical Manual TNC 640


has been compensated
PL B/W/D/K <Additional info>
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 pro-
grammed, axis not stationary
11 Invalid PLC string programmed as formula
20 Call not in a submit/spawn job
28 The NC channel assigned to the axis is
active
33 Axis not yet above reference
45 Canceled due to error message from ope-
rating system

September 2015 6.10 PLC axes 1135


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))

1136 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 posi-
tioning (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.

September 2015 6.10 PLC axes 1137


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 posi-
tioning command to the next grid point.

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
(cf. 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: Menu choice
Options: absolute
Absolute positioning
relativ
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

1138 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 com-
mand 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 bra-
king 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 "deac-
tivated 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/K <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 transfer-
ErrorCode (W1022) red
2 Axis was not configured as an auxiliary
axis or was not declared as a Hirth axis
9 Axis is already stationary

September 2015 6.10 PLC axes 1139


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 con-
troller)

You can activate either linear or nonlinear axis-error compensation per axis.
Backlash compensation can be activated in addition to linear axis-error
compensation.
From 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.

MP_active
Switch on/off all axis compensations
Available from NCK software version: 597110-01.
Format: Menu choice
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

1140 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 6.11 Axis-error compensation 1141


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 ensu-
res 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 chan-
ging 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 (Standard)
Reversal point

MP_backLashTimeConst: small input value

MP_backlashTimeConst: large input value

MP_backlashTimeConst: = 0

Nominal (Standard)

1142 HEIDENHAIN Technical Manual TNC 640


MP_backLash
Backlash compensation; backlash outside the control loop
(cf. 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
Distance for dynamic backlash compensation
(cf. 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
(cf. 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 and temperature compensation
(from NCK software 597110-06 no longer for backlash
compensation)
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

September 2015 6.11 Axis-error compensation 1143


MP_compTimeLimit
Time constant for band limitation of compensation value
changes
(cf. 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

1144 HEIDENHAIN Technical Manual TNC 640


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.

Compensation:
 In MP_posCtrlRevErr enter the reversal error in [mm].
 In MP_posCtrlRevErrTime enter the time in which the distance to be com-
pensated should be traversed.

MP_posCtrlRevErr
Reversal error compensation (distance)
(cf. 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
Reversal error compensation (time)
(cf. 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

September 2015 6.11 Axis-error compensation 1145


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

1146 HEIDENHAIN Technical Manual TNC 640


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
(cf. 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
(cf. iTNC 530: MP730)
Available from NCK software version: 597110-01.
Format: Menu choice
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 = non-


linear), linear axis error compensation is deactivated.

September 2015 6.11 Axis-error compensation 1147


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.

1148 HEIDENHAIN Technical Manual TNC 640


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 *.COM tables contain the compensation values for max. 1024 compen-
sation points. A *.COM table is required for each axis and spindle. It consists
of the following columns:
• AXISPOS: Compensation points that are assigned compensation
values. In the AXISPOS column in the first and last line, enter the begin-
ning and end of the compensation range with respect to the machine
datum. The compensation points between them are calculated inter-
nally by the control and do not need to be specified.
If however you still enter optional compensation points, they must have
equal spacing.
• 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

September 2015 6.11 Axis-error compensation 1149


 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 direc-
tion 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

1150 HEIDENHAIN Technical Manual TNC 640


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:

Y axis:
Screw-pitch
error in Y axis,
sag error in Z
axis

Z axis:
Screw-pitch
error in Z axis

September 2015 6.11 Axis-error compensation 1151


Assigning the General interrelation with 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, howe-
ver 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

1152 HEIDENHAIN Technical Manual TNC 640


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
1146)
 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


considering the compensation values:
• Collision monitoring (DCM, software option 40, only TNC 640)
• 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()..). 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 out-
put 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 row>
CM 9095
PL B/W/D/K <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

September 2015 6.11 Axis-error compensation 1153


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/K <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 SUB-
MIT/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

1154 HEIDENHAIN Technical Manual TNC 640


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 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 1140).
 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 compen-
sated.
 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.
Heat compensation when using tilting axes is defined through the
MP_temperatureComp machine parameter in the kinematics (See
"Temperature compensation in the kinematics" on page 1202).

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

September 2015 6.11 Axis-error compensation 1155


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 corre-
sponding 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 parameter <axis index> or
ErrorCode <compensation value>
24 Module was called in a spawn or submit job

1156 HEIDENHAIN Technical Manual TNC 640


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 the integral-action component 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

September 2015 6.11 Axis-error compensation 1157


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.

1158 HEIDENHAIN Technical Manual TNC 640


MP_compFriction0
Friction compensation at low motor speed
(cf. 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
(cf. 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
(cf. 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

September 2015 6.11 Axis-error compensation 1159


PLC module Module 9311 Dynamically change values for friction compensation
Module 9311 is used at run-time to set 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 <Distance in [0.1 µm]>
0...10000 replaces value in MP_compFrictionT1
PS B/W/D/K <Distance 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 <Axis index>
parameter
19 Function is not supported by the DSP
board
(e.g. CC 422)
24 Module was called in a submit or spawn
job

1160 HEIDENHAIN Technical Manual TNC 640


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).

September 2015 6.12 Machine kinematics 1161


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+

1162 HEIDENHAIN Technical Manual TNC 640


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
progAxes K_ZYX.202802
CfgKinSimpleAxis
MachAxisX (key name of the machine axis)
dir: X MachAxisX.202701
axisRef: X MachAxisX.202702
MachAxisY (key name of the machine axis)
dir: Y MachAxisY.202701
axisRef: Y MachAxisY.202702
MachAxisZ (key name of the machine axis)
dir: Z MachAxisZ.202701
axisRef: Z MachAxisZ.202702
CfgKinAnchor
Base (key name of the machine base)
kindOfAnchor: MachBase Base.203701
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

September 2015 6.12 Machine kinematics 1163


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 when configuring subkinematics.

MP_kindOfAnchor
Fixed point in the kinematics chain
Available from NCK software version: 597110-03.
Format: Menu choice
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

1164 HEIDENHAIN Technical Manual TNC 640


 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. Enter via MP_dir the direction and via 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: Menu choice
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

September 2015 6.12 Machine kinematics 1165


MP_axisRef
Reference to the associated machine axis
Available from NCK software version: 597110-03.
Format: String
Input: Max. 18 character
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 transfor-
mation is performed in the axis direction entered under MP_dir in the cur-
rent 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 the value for the transformation in MP_val. For linear axes (X, Y, Z ...) the
value is specified in [mm], or with rotary axes (A, B, C) in [°]. Example:
MP_val = 47.092 [mm] or
MP_val = 45.05 [°]
The unit is not specified. The TNC 640 interprets the units of measurement
from the axis designation indicated in MP_dir.

1166 HEIDENHAIN Technical Manual TNC 640


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: Menu choice
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

 Now define the subkinematics


Subkinematics can be included separately. This will 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.

September 2015 6.12 Machine kinematics 1167


Subkinematics are defined under CfgKinSimpleModel:
 Create a folder (= key name of the subkinematics) for each subkinematics
under CfgKinSimpleModel. Under MP_kinObjects you describe the struc-
ture of the subkinematics. Then, in sequence from the tool to the machine
base you enter the names of the kinematics objects comprising the subki-
nematics. Kinematics objects can be machine axes (key names from CfgKin-
SimpleAxis), 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...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.

1168 HEIDENHAIN Technical Manual TNC 640


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, parameter optional
Access: LEVEL3
Reaction: RUN

Note

MP_progAxes enables you to modify the list of active programmable axes


for run-time, e.g. via:
 Kinematic switchover as part of a traverse range switchover, See
"Traverse ranges" on page 1088.
 Kinematic switchover via MP subfile, e.g. via NC command or loading in
the configuration editor.

MP_progAxes enables modifying 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.

September 2015 6.12 Machine kinematics 1169


 Now collect the subkinematics to form a kinematic model
Define the kinematic models under CfgKinComposModel.
 Create a folder (= key name) for the kinematic model under CfgKinCom-
posModel. In 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. In
MP_activeSpindle, enter 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 TRUE in the
MP_tiltingAllowed parameter.

 Use the MP_viewDirUpward and MP_viewDirRightward machine para-


meters to specify the orientation of the kinematics in the kinematics viewer
of the control.

MP_subKinList
List of key names of the subkinematics
Available from NCK software version: 597110-03.
Format: Array [0...5]
Input: Selection menu with subkinematics from
CfgKinSimpleModel. Enter the subkinematics comprising the
machine kinematics, going from the tool to the workpiece.
Default: –
Access: LEVEL3
Reaction: RUN

1170 HEIDENHAIN Technical Manual TNC 640


MP_activeSpindle
Key name of the active spindle of this kinematics model
Available from NCK software version: 597110-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: 597110-04.
Format: Menu choice
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, parameter optional (= TRUE)
Access: LEVEL3
Reaction: RUN

MP_viewDirUpward
Orientation of the 3D view in the Kinematics viewer (Z direction)
Available from NCK software version: 597110-10.
Format: Menu choice
Options: X_Pos
X_Neg
Y_Pos
Y_Neg
Z_Pos
Z_Neg
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

MP_viewDirRightward
Orientation of the 3D view in the Kinematics viewer (X direction)
Available from NCK software version: 597110-10.
Format: Menu choice
Options: X_Pos
X_Neg
Y_Pos
Y_Neg
Z_Pos
Z_Neg
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN
 Last step: Assign the configured kinematics models to the machining chan-
nel.

September 2015 6.12 Machine kinematics 1171


The settings for the machining channel (ChannelSettings/CH_NC) must
include the kinematic models valid for this channel:
 Open the CfgKinList configuration object. Enter the key names of the kine-
matics models defined for this machining channel in the kinCompositeMo-
dels list parameter.
 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.

 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).
 Specify with MP_enableSelection whether end users can select the kine-
matic for Program Run operating modes via the MOD menu. With
MP_enableSelection, kinematic selection via MOD can be permitted (stan-
dard behavior, Available setting), locked (Prohibited setting) or only per-
mitted after entering the key word KINEMATIC (Password setting).
The key word KINEMATIC can be replaced with any OEM password via
CfgChangePassword, See "Changing HEIDENHAIN code numbers" on
page 1893.

MP_kinCompositeModels
List of key names of kinematic models for this machining
channel
Available from NCK software version: 597110-03.
Format: Menu choice
Options: Key names from Channels/Kinematics/CfgKinComposModel
Default: –
Access: LEVEL3
Reaction: RUN

1172 HEIDENHAIN Technical Manual TNC 640


MP_kinemToActivate
Kinematics to be activated / Active kinematics
Available from NCK software version: 597110-03.
Format: Menu choice
Options: Key names from Channels/Kinematics/CfgKinComposModel
Select the key name of the kinematics configuration 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: Menu choice
Options: Key name of the kinematic model from CfgKinComposModel
Default: –
Access: LEVEL1
Reaction: RUN

MP_enableSelection
Kinematics selection via the MOD key
Available from NCK software version: 597110-09.
Format: Menu choice
Options: Specifies whether selection of kinematics by the end user is
available via the MOD key.
If the parameter is not set, kinematic selection is available.
Possible settings:
Available
Kinematic selection in MOD menu is available
Prohibited
Kinematic selection in MOD menu is locked
Password
Kinematic selection in MOD menu is available after entering the
keyword KINEMATIC With CfgChangePassword, the keyword
KINEMATIC can be replaced by any desired OEM password.
Default: No value, parameter optional (= available)
Access: LEVEL1
Reaction: RUN

Note

If you need to, you can switch the kinematics configuration via the NC
program: FN17: SYSWRITE ID290 NR1, See "Data transfer NC program <=>
NC (FN17: SYSWRITE and FN18: SYSREAD)" on page 2557.

September 2015 6.12 Machine kinematics 1173


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.

1174 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

September 2015 6.12 Machine kinematics 1175


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
.
.
.

1176 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

September 2015 6.12 Machine kinematics 1177


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

1178 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

September 2015 6.12 Machine kinematics 1179


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

1180 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

September 2015 6.12 Machine kinematics 1181


Settings in the configuration editor:

Channels
Kinematics
CfgKinSimpleAxis
.
.
MachAxisB
dir: Y
axisRef: B

1182 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

September 2015 6.12 Machine kinematics 1183


Settings in the configuration editor
Channels
Kinematics
CfgKinSimpleAxis
MachAxisA
dir: X
axisRef: A
MachAxisB
dir: Y
axisRef: B
.
.
.

1184 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 read pointer to the start of the transformation chain (first line)
 RESULT_Q (OUTPUT):
In the result, the function supplies 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 direc-
tion 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 CfgKinSimple-
Trans)
• LOCERRX to LOCERRC: Values for position errors (KinematicsComp
software option)
• RESETLOCERR, ERRONTOOLSIDE: Effect of position error description
(KinematicsComp software option)
 TO QS (OUTPUT):
The requested data is returned, separated by a semicolon. The sequence
depends on the sequence of the "KEY" key words.

September 2015 6.12 Machine kinematics 1185


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 the result, the function supplies 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 overwrit-
ten. 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 CfgKinSimple-
Trans)
 =: (INPUT)
A string that contains the new entries is to be transferred as value. The ent-
ries are separated by a semicolon. The sequence depends on the sequence
of the "KEY" key words.

1186 HEIDENHAIN Technical Manual TNC 640


6.12.3 Finding/activating kinematics through the PLC
Module 9097 Activate kinematics configuration
The PLC uses Module 9097 to activate a kinematic configuration. The
kinematic model must have been entered in the machine configuration under
CfgKinComposModel. It must also be listed 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/K <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 was programmed,
NN_GenApiModule Index does not exist in CfgKinList,
ErrorCode CfgKinList configuration datum is missing
20 Module was not called in a spawn or sub-
mit job
21 Call during already started program wit-
hout strobe

September 2015 6.12 Machine kinematics 1187


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 the 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/K <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 sub-
mit job
30 Configuration data CfgKinList or CfgActi-
vateKinem is not defined, or the entry
from CfgActivateKinem was not found in
CfgKinList
58 No NC channel configured, or more than
one configured

1188 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

Kinematic The kinematics can be switched via M functions without connecting or


switchover 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 CfgChann-
elAxes -> 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 for deactivation of 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 for activation of 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 cal-
led once within the M function. The M function is acknowledged as soon
as the correct axis status (NN_AxLogNumber) is returned.

September 2015 6.12 Machine kinematics 1189


Kinematic The kinematics can also be switched via user parameters without connecting/
switchover 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 552.
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="Axis 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.

1190 HEIDENHAIN Technical Manual TNC 640


Kinematic From 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 acti-


vated

Switching the Optional additional axes can also be activated via the OEM startup cycle if an
kinematics via available PLC input (I_additional_axis_mounted) has been configured.
OEM 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_additional_axis_kinematic is also set
 PLC input = 0: Axis is disconnected and remains deactivated,
MG_additional_axis_kinematic is reset
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 during manual operation. When the PLC soft
key is pressed, the kinematics of the manual tilting axis is switched via PLC
Module 9097.

September 2015 6.12 Machine kinematics 1191


6.12.5 Tool-carrier kinematics descriptions
A tool carrier kinematics description contains the kinematics description of a
specific tool carrier. You can assign a tool-carrier kinematics description to the
tools using the tool table KINEMATICS column). A tool-carrier kinematics
behaves like a substitutable part of the kinematics model of the machine.
This function is used to automatically activate specific tool-carrier kinematics
upon a tool change. The integration of such a tool-carrier kinematics
description adds an additional shift of the tool-reference point (reference point
for tool dimensions) to the subsequent description of the kinematics model,
provided the tool-carrier kinematics description includes corresponding
transformations. This occurs dynamically with the tool change.
The starting point for considering the kinematics with the integrated tool-
carrier kinematics description is the tool holder of the tool carrier (tool
reference point). The subsequent kinematics description is then based on this.
This means that the algebraic signs of the shift are now determined by the
new tool reference point. The tool dimensions (e.g. tool length) in the tool
table are automatically included in machining from this point on.
In addition, DCM collision monitoring (software option 40, see page 2098) of
the TNC protects the tool carriers from collisions, if configured appropriately.
For this purpose, the tool-carrier kinematics descriptions must contain
additional CMOs that describe the body of the tool carrier, see page 2104. To
create such tool-carrier kinematics descriptions, for DCM, you can use 3D
models from the tool carrier manufacturer that have been converted to M3D
format, see page 2106.
Tool-carrier kinematics descriptions contain only kinematic transformations
and/or CMOs. To configure these tool-carrier kinematics descriptions, you can
use the KinematicsDesign tool. If you want to add additional axes (e.g. for
angle heads, radial facing slides), this must be realized by changing the head,
see page 1100.
To assign tool-carrier kinematics descriptions to the tools via the tool table,
press the SELECT soft key when the KINEMATICS column is selected. All tool-
carrier kinematics descriptions in *.cfg and *.cfx format that exist in the
PLC:\config\Toolkinematics or TNC:\system\Toolkinematics directory are
displayed in a selection list. Files without extension correspond to the *.cfx
format.

Note

If a file exists with the same name in both directories (PLC: or TNC:), the
system will use the file from the TNC partition.

Danger

Tool-carrier kinematics descriptions in *.cfx and *.cfg format can consist of


multiple files. If files are missing from a tool carrier kinematics description,
a meaningful error message is displayed. The user can then acknowledge
this error message. However, HEIDENHAIN strongly recommends not to
continue working with incomplete tool-carrier kinematics descriptions.

1192 HEIDENHAIN Technical Manual TNC 640


In the kinematic model, the machine manufacturer must indicate the position
(names of insertion points under CfgKinToolSocket) where the tool-carrier
kinematics descriptions should be inserted. This step is required for the
kinematics of all tool carriers where the user intends to insert a tool-carrier
kinematics description.
The tool-carrier kinematics will become active upon a tool change. If nothing
has been specified in the KINEMATICS column for an index tool with a tool index
> 0, the tool-carrier kinematics description of the basic tool (tool index = 0) will
be used.

Attention

If you change the tool-carrier kinematics description by editing the *.cfg or


*.cfx file, you must re-assign the definition to any desired tool in the tool
table, and execute a TOOL CALL. Only when the TOOL CALL is executed,
does the TNC 640 read the file again and update the tool-carrier kinematics
description.

The chapter on collision monitoring describes the fundamentals of collision


monitoring and the creation of collision-monitored objects (CMOs), See
"DCM—Monitoring the working space for collisions" on page 2098.

Attention

Finally, the tool-carrier model for collision monitoring and the behavior of
the complete collision model must be tested on the machine as usual.

September 2015 6.12 Machine kinematics 1193


The list below indicates the basic methods for creating a tool-carrier
kinematics description and using DCM to protect the tool carrier from
collisions:
 1. Modeling tool carriers with KinematicsDesign
With this tool, you can create additional tool-carrier kinematics descriptions,
and provide them to your end users. You can create both unambiguous,
fixed models and parameterizable templates for tool-carrier kinematics des-
criptions. Templates have a *.cft extension and can be adapted to the actual
tool carrier dimensions by the end user directly at the machine using the
ToolHolderWizard.
 2. Definition of tool-carrier kinematics using the ToolHolderWizard
With the ToolHolderWizard, the operator of the machine defines the exact
dimensions of the tool carrier by entering parameters into a template. The
ToolHolderWizard is available as a stand-alone PC tool and as a component
of the TNC 640. It generates a tool carrier with the actual dimensions speci-
fied by you. Usable tool-carrier kinematics descriptions have the file name
extension *.cfx or *.cfg.
For information on how to use the ToolHolderWizard tool, refer to the User's
Manual of your control. The ToolHolderWizard will be started automatically
when you select a *.cft file. You can also start it manually with the
TOOL HOLDER WIZARD soft key. The soft key becomes available when the
Tool-carrier kinematics dialog opens where you can select a tool-carrier
kinematics description. The ToolHolderWizard will be started on the 3rd
desktop.
Use the tool-carrier templates from HEIDENHAIN as examples if you want to
create more complex templates. However, be sure not to change the original
HEIDENHAIN templates.

Requirements  Permissible insertion points for the tool carriers must be defined in the kine-
matics description. This is done by entering the corresponding key name
(defined in CfgKinToolSocket) into the kinematics chain.
• For each kinematics, one insertion point is supported. When inserting a
tool with an associated tool-carrier kinematics description in a kinematic
model where no insertion point has been defined, only the tool itself will
be inserted. No error message will be issued, but a warning. This means
that you can use the same tool tables also in machines where no inser-
tion points have been defined yet in the kinematic model.
When a TOOL CALL is issued, the tool will be inserted automatically
into all kinematic models existing in the configuration.

Note

If kinematic models exist where no insertion point has been defined, the
TNC 640 displays a warning: Tool carrier kinematics is ignored in xx.
The user must acknowledge this warning. If no insertion point exists, the
tool-carrier kinematics will not be active in this kinematic model.

• Seen from the tool, the insertion point within the kinematic model must
be before the first kinematic axis or before the machine base. Usually,
the insertion point configured in CfgKinToolSocket is added at the
beginning of the kinematics description in CfgKinSimpleModel/kin-
Objects.

1194 HEIDENHAIN Technical Manual TNC 640


 If you want to perform collision monitoring of the tool-carrier kinematics,
software option 40 (DCM - Dynamic Collision Monitoring) must be enabled.
If this option is not enabled, you can use tool-carrier kinematics descriptions
that contain CMOs. No error messages will be issued. This means that you
can use the same tool-carrier kinematics descriptions on machines where
software option 40 is not enabled.

Procedure To configure an insertion point for tool-carrier kinematics, proceed as follows:


 Create a key name (= folder) for the insertion point of a tool-carrier kinema-
tics in the kinematics chain under CfgKinToolSocket.
The TNC 640 does not distinguish between insertion points with different
names. Fort this reason, HEIDENHAIN recommends to create and use only
one key name.
 In CfgKinSimpleModel, define the position of the insertion point in the
kinematics descriptions that should support by tool-carrier kinematics.
 Alternatively, you can configure the kinematics with the KinematicsDesign
PC tool.
Example: Key name of the insertion point named socket:

At this position of the kinematics chain, the tool-carrier kinematics will be


inserted when a tool is brought in (TOOL CALL) to which a tool-carrier
kinematics description was assigned in the KINEMATICS column of the tool
table.

September 2015 6.12 Machine kinematics 1195


Files The following files are relevant to tool-carrier kinematics:
 Template for a tool-carrier kinematics description – *.cft
Variable template for a tool-carrier kinematics description. This template is
created with KinematicsDesign. Use the ToolHolderWizard to edit an exi-
sting *.cft file and to generate a *.cfx file from it.
 Single tool-carrier kinematics description – *.cfx
Tool carrier that can be inserted directly in the machine kinematics. By
default, the *.cfx files created with ToolHolderWizard are saved in the same
directory from which the *.cft file was opened.
 Kinematics description for collision monitoring – *.cfg storage file
Subkinematics that contains the configuration of a tool carrier and can be
used for DCM collision monitoring.

Danger

Tool-carrier kinematics descriptions in *.cfx and *.cfg format can consist of


multiple files. If files are missing from a tool carrier kinematics description,
a meaningful error message is displayed. The user can then acknowledge
this error message. However, HEIDENHAIN strongly recommends not to
continue working with incomplete tool-carrier kinematics descriptions.

The following objects can be used within tool-carrier kinematics descriptions:


 Transformations (e.g. CfgKinSimpleTrans), but without temperature com-
pensation
 CMOs (CfgCMO) except for PLANE:
• CfgCMOCylinder
• CfgCMOCuboid
• CfgCMOMesh3D
You can edit the position of objects in M3D format, but neither their
shape nor their dimensions. If such changes are required, replace the
M3D file with a changed M3D file and generate a new *.cfx or *.cfg file
based on the new data.

Tools The following programs are involved in the creation of tool-carrier kinematics:
 KinematicsDesign
KinematicsDesign is a program for the interactive creation of control kine-
matics and tool-carrier kinematics descriptions. The KinematicsDesign PC
tool is available for download to registered users on the Internet in the HEI-
DENHAIN FileBase.
The tool is also available on the control, see page 2135.
 ToolHolderWizard
With the ToolHolderWizard, you use tool-carrier kinematics templates to
generate executable kinematics files for your control. These kinematics files
can be used for DCM collision monitoring of the control. The PC version of
this program is available as a part of KinematicsDesign. The tool is also
available on the control.

1196 HEIDENHAIN Technical Manual TNC 640


Modeling tool KinematicsDesign helps you to model the tool carriers. You have the following
carriers options:
 Create a complete definition of the tool carrier (*. cfx file extension)
 Create variable tool carrier templates (*.cft file extension)
 Create subkinematics containing a configuration of the tool carrier (*.cfg file
extension)
For tool-carrier templates (*.cft) you define the shape of the tool carrier by
specifying variables for different dimensions of the tool-carrier objects
(CMOs). The tool carriers are designed in the same way as the machine
kinematics: CMOs and transformations are used. Input parameters permit
variable design of the tool-carrier templates, and enable you to help the end
user in the final definition of the tool carrier.
The *.cft files for tool-carrier templates are in a new table format in ASCII
which is specially adapted for modeling fixtures. The tables can be opened
with Microsoft Excel if the semicolon is selected as separator.
Only save tool-carrier kinematics to the TNC:\system\Toolkinematics
directory that have names differing from the HEIDENHAIN templates, since
the HEIDENHAIN templates will be overwritten during a software update. Tool
carriers or tool-carrier templates that were created or changed by you should
be saved in a separate directory or under their own names, in order to avoid
losing data during a software update.

September 2015 6.12 Machine kinematics 1197


CMO If you want to use DCM collision monitoring for your tool-carrier kinematics,
too, you need to define additional CMOs in the tool-carrier kinematics
description to describe the additional collision-monitored objects, i.e. tool-
carriers. These collision monitored objects must exists as files. The files for
the CMOs of the tool-carrier kinematics may be in *.CFX or *.CFG format.
In the definition of a CMO, shifts and rotations of subsequent collision objects
can be entered via the TRANS keyword. This functions like entering the
description of a kinematics configuration. However, the coordinate
transformations in a CMO definition file are only effective within the
respective object description file.
For the description of a CMO to be used in a tool-carrier kinematics, you can
also use M3D files. Here again, the number of triangles is restricted to 20 000
triangles / CMOMesh3D entities. However, HEIDENHAIN recommends not to
exceed the maximum number of 1 000 triangles / CMOMesh3D entities in
each tool-carrier kinematics description as the tool-carrier kinematics
description needs to be loaded with every TOOL CALL.
HEIDENHAIN recommends to use CMOs when modeling tool-carrier
kinematics, even if the machine is not equipped with DCM collision
monitoring. This ensures that the end user will see a visual representation of
the tool carrier in the selection dialog.

DCM of tool-carrier Notes on DCM of tool-carrier kinematics:


kinematics

Note

 Entries with the TOOL keyword in the dontTest list parameter of CMOs
relate to the tool and the associated tool-carrier kinematics.
 Entries in the dontTest list parameter of CMOs that do not belong to the
tool-carrier kinematics only apply to the CMOs not included in a tool-
carrier kinematics description. This means that they neither affect the
tool-carrier kinematics nor the insertion points where the tool-carrier
kinematics has been inserted. Please note that no error message will be
issued if objects are missing.
 The TOOL keyword and all keys beginning with _TOOL are reserved and
cannot be used.
 Turning tools must be defined as rotationally symmetric objects because
DCM does not take the spindle position into account.
 Rotating objects must be defined as rotationally symmetric objects that
are rotationally symmetric to the rotary axis. Keep this in mind mainly for
turning operations.
 Please also note the description of DCM collision monitoring (option 40).

1198 HEIDENHAIN Technical Manual TNC 640


Creation example Here is an example of how a simple tool-carrier kinematics description (*.cft
template) is created with KinematicsDesign:
 Start the KinematicsDesign PC tool.
 Under File / New..., select Tool-Carrier Template.
 Assign any file name (the extension .cft is added automatically).
 You can then create your variable tool-carrier template or a tool-carrier
kinematics description. In the example, first four variables are defined for
the height and radius of the two cylinders. This means that the appearance
of the tool carrier is variable. The height and radius of the two cylinders will
later be specified with the ToolHolderWizard.

September 2015 6.12 Machine kinematics 1199


 In the example, a CMO is inserted after the variables have been defined.
This CMO describes the appearance of the tool carrier, and is specified in a
separate file (here CMOToolCar.cft). The cylinders contain the variables for
the height and radius, which will later be specified with the
ToolHolderWizard.

1200 HEIDENHAIN Technical Manual TNC 640


 However, the variable tool carrier *.cft cannot yet be used for collision moni-
toring. You must open the *.cft file with the
ToolHolderWizard, specify values for all variables, and then save it as a *.cfx
file. You can do this on the PC or the control.
This *.cfx file can then be used as a tool-carrier kinematics description.
The advantage of such a variable template is that you specify the basic shape.
The operator can then use the ToolHolderWizard to define a multitude of tool
carriers whose basic shape is the same. Only dimensions that were created
as variables can be changed.

September 2015 6.12 Machine kinematics 1201


6.12.6 Temperature compensation in the kinematics

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:
 Permanently effective temperature compensation in the kinematics (kine-
matic temperature compensation):
• MP_temperatureComp
You can modify values in the kinematic model with references to PLC
operands, use of constants and mathematical operations. Changing
these values leads to compensation movements of the translation axes.
Specify these values using 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.
• Only one type of possibility can be used. It is not possible to enter
values simultaneously in MP_temperatureComp and
MP_realTimeComp.

Note

 Compensation via MP_realTimeComp is a reduced form of temperature


compensation in the kinematics. Inputting a formula is not possible, and
when specifying values the permanently assigned PLC operands
described below must be used, see page 1204. Formula calculations
must be performed in the PLC program.
 Temperature compensation in the kinematics with
MP_temperatureComp provides significantly more options in
comparison. Here, compensation values can be directly specified in the
machine parameter in the form of freely definable PLC operands,
constants and mathematical operations. HEIDENHAIN therefore
recommends implementing temperature compensation via
MP_temperatureComp, see page 1206.
 Note that the values from MP_realTimeComp and
MP_temperatureComp have the opposite effect with the same
algebraic sign. The value from MP_temperatureComp is consistent with
other settings in the kinematic chain, e.g. the value from
CfgKinSimpleTrans/MP_val.

1202 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 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 the value transfer via MP_temperatureComp to the position
controller is 1 mm or 1 degree.
The unit for the value transfer via MP_realTimeComp to the position
controller is 1/10000 mm or 1/10000 degrees.
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 kinematic without


considering the compensation values in MP_temperatureComp and
MP_realTimeComp:
• Collision monitoring (DCM, software option 40, only TNC 640)
• Limit-switch monitoring
• Inverse kinematic (calculation of rotary axis positions from the required
tool orientation)
• With this temperature compensation activated it takes effect in all si-
tuations, whether traversing in the REF system (M91) or ACTUAL sy-
stem. The compensation is always effective on the position of the TCP,
and the momentary tool length and position of the rotary axes is always
calculated with it. The angle error of the tool is not compensated be-
cause this might cause undesired movements.

September 2015 6.12 Machine kinematics 1203


Compensation via When using MP_ realTimeComp you have to use the following, mandatory
MP_realTimeComp PLC operands for compensation. This limitation does not apply if using
MP_temperatureComp.

PLC operand / Description Typ

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

1204 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 confi-
guration 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 cal-
culations must therefore be done in the PLC program.
This limitation does not apply if using MP_temperatureComp.

Note

Please note for MP_realTimeComp:


The value transfer via the PLC operands to the position controller must be
made in 1/10000 mm or 1/10000 degrees.

September 2015 6.12 Machine kinematics 1205


Compensation via Here, compensation values can be directly specified in the machine parameter
MP_temperature in the form of a reference to a freely definable PLC operand, use of constants
Comp and mathematical operations.
With a reference to a PLC operand, the name of the operand must be
preceded by the identifier plc_. e.g.
MP_temperatureComp = plc_DG_PP_TempCompX
When creating formulas, mathematical functions (See page 505) and variables
are available:

Model Prefix Designator


Value of a PLC variable PLC_ Name of the globally defined PLC
variable

Note

Please note for MP_temperatureComp:


Value transfer to the position controller must be made in the unit 1 mm or
1 degree.

The FN function ID 290 NR5 enables you to activate/deactivate the


compensations for temperature compensation in the kinematics, e.g. in an NC
macro, see page 2557.
For deactivation during a TOOL CALL, the current status should be noted and
then reset before the OEM_TCALL_TS_PRE macro. Restore the previous state
only after the OEM_TCALL_TS_POST macro has been terminated.

Note

Note that this FN function is also implemented with a block scan if you do
not explicitly prevent this.

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).

Example In most cases you will use the following formula to calculate length changes
in your PLC project:

Δl = l ⋅ ΔT ⋅ α

Δl: Length change


l: Length
ΔT: Temperature change
α: Length coefficient of expansion (steel: e.g. 11.5 · 10–6 1/K)

1206 HEIDENHAIN Technical Manual TNC 640


Example:

Z1

Z1 = +300 mm (at 20 °C)


αSteel = 11.5 · 10–6 1/K (length coefficient of expansion for steel)
DG_temp_spindlehead: Temperature measured via Pt100 thermistor
The following options for compensation are possible (note the different
algebraic sign):
 Current process:
Entry in MP_temperatureComp, formula and PLC operand can be directly
entered in the MP and calculated:
MP_temperatureComp = 3.45e–3 * (plc_DG_Temp_spindlehead– 20)
 Previous process:
Value for PLC operand in MP_realTimeComp (calculated with the PLC pro-
gram)
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:
= -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

September 2015 6.12 Machine kinematics 1207


Example of PLC program section (only needed when using
MP_realTimeComp):
*-------------------------
* 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_spindle head D
#define KL_spindle_temperature coefficient 0.00000115 K +115
#define KG_Translation_Z_20degrees K +300

GLOBAL Swivel_temperature_comp
;----------------------------
LBL Temperature_comp
;----------------------------

L DG_Temperature_spindle head
- K+20
= DG_Temperature increase_spindle head

L KG_Translation_Z_20Grad
x DG_Temperature increase_spindle head
x KL_spindle_temperature coefficient
/ k+10000 ;Unit of measure for value transfer is 1/10000 mm or °
= DG_PP_HeadZKinComp

1208 HEIDENHAIN Technical Manual TNC 640


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, max. 240 characters
Default: No value, parameter optional
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, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 6.12 Machine kinematics 1209


6.12.7 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 Kinematic-
sOpt!

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

Requirements

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.

1210 HEIDENHAIN Technical Manual TNC 640


 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.

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 (corrections)
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.

September 2015 6.12 Machine kinematics 1211


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
(cf. 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
(Cf. 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.

1212 HEIDENHAIN Technical Manual TNC 640


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 controlled by 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 ;PLC positions A axis
FN 19: PLC =+6 / Q122 ;PLC positions C axis
END PGM MM

Note

Only local Q parameters (QL) are allowed in the M macro and in the NC pro-
grams 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.

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
(Cf. 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

September 2015 6.12 Machine kinematics 1213


Unselecting a By extending the number of measuring points to 0-12, it is possible to "hide" 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 unselecting an axis, it is completely removed from the optimization with
KinematicsOpt.

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
Stepping angle = (end angle - start angle) / (Measuring points - 1)
= (90° - -90°) / 3
= +60°
Consequently: P1 = -90°; P2 = -30°; P3 = +30°; P4 = +90°.
Start angle = +270°
End angle = +90°
Measuring points = 4
Stepping angle = (end angle - start angle) / (Measuring points - 1)
= (90° - 270°) / 3
= -60°
Consequently: P1 = -90°; P2 = -120°; P3 = -210°; P4 = -270°.

1214 HEIDENHAIN Technical Manual TNC 640


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 reference 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 to be expected in
the coordinate system of the rotary axes 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.

September 2015 6.12 Machine kinematics 1215


Measured and optimized deviations (simulated measured data / displayed with
TNCscope):

Optimized deviations as a function of the position of the rotary axis (simulated


measured data / displayed with TNCscope):

1216 HEIDENHAIN Technical Manual TNC 640


 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.

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\DATA450.KD.

Note

You can save and restore the TNC:\table\DATA450.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 spheres. These calibration spheres have especi-
ally 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.

September 2015 6.12 Machine kinematics 1217


6.13 Tilting and swivel 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 Tilt 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: Menu choice
Options: On
"Tilt Working Plane" function permitted
Off
"Tilt Working Plane" function not permitted
Default: On
Access: LEVEL3
Reaction: RESET

1218 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: Menu choice
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: Menu choice
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

September 2015 6.13 Tilting and swivel axes 1219


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: Menu choice
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

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: Menu choice
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

1220 HEIDENHAIN Technical Manual TNC 640


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 as 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

September 2015 6.13 Tilting and swivel axes 1221


Conditions and Conditions:
constraints
 The display position in the status window is referenced to the tilted coordi-
nate system.
 In the combination of coordinate transformation cycles the sequence of acti-
vation must agree with the sequence of deactivation.
 The tool radius compensation in the working plane and the tool length com-
pensation 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 desi-
gnation 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

1222 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.13 Tilting and swivel axes 1223


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 on the handwheel can be assigned
using MP_selectAxes, See "MP_selectAxes" on page 2148.
The following must be considered when using the virtual tool axis VT:
 MP_enableVTaxis must be set to TRUE
 DCM (Dynamic Collision Monitoring, software option 40) must be disabled
(only TNC 640)
 An axis key of the handwheel must be assigned to the virtual tool axis (sel-
ect VT_Axis) in MP_selectAxes
 If an HR 520 or HR 550 is used, the VT axis can be selected in the axis menu.
 When an HR 510 or HR 410 handwheel is connected, the VT axis can be sel-
ected 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
(cf. iTNC 530: MP7641 bit 4)
Available from NCK software version: 597 110-06.
Format: Menu choice
Options: TRUE
Permit virtual tool axis on handwheel
FALSE
Do not permit virtual tool axis on handwheel
Default: TRUE
Access: LEVEL3
Reaction: RESET

1224 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

Reference 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.

September 2015 6.14 Parallel axes 1225


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 com-
pensate 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 posi-
tion 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. Die TNC 640 compensates the
movement of parallel axes via compensation movements in the associated
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 direc-
tion 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: Menu choice
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

1226 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 automa-
tically 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 com-
pensation 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 axis. 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 cou-
pled with this axis are also brought to a stop.
 The TNC will prevent you from configuring a static coupling for a deactivated
axis (MP_type set to Static) – as this is not permitted. A corresponding error
message will be displayed.

Note

The number of slave axes in master-slave torque control and gantry combi-
nations is restricted by the controller unit on which the master axis is con-
figured. The slave axes and the master axis must be configured on the
same drive-control motherboard (DSPs). Thus, up to five slave axes are pos-
sible per CC 61xx.

September 2015 6.15 Gantry/synchronized axes 1227


6.15.1 Gantry axes
In gantry axes, tandem tables, etc., two closed-loop 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 a gantry coupling is configured exclusively via the slave axis, it is
possible to assign more than one slave to the same 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

1228 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 MP_axisList list parameter of the CfgA-
xes entity.

Note

The master and slave axes must be on the same drive-control motherboard,
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 con-
trol 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 the value Static in MP_type.
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 bet-
ween 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 posi-
tioned to the same value. The default 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

September 2015 6.15 Gantry/synchronized axes 1229


The following additional settings can be made for special cases:
 If in MP_typeOfOffset you have selected the Parameter input value, enter
a position offset in MP_posOffset that is compensated and maintained.
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.
 Enter a maximum position difference value in MP_ultimatePosDiff, up to
which the closing of a coupling between the master and slave axes should
still be possible. If it is attempted to close a coupling when the momentary
position difference between the master and slave axis exceeds this parame-
ter 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 mes-
sage 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 distribu-
ted 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 accor-
ding 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 can be entered in MP_scalingFactor. Please note


that modulo axes can be coupled exclusively with other modulo axes.

1230 HEIDENHAIN Technical Manual TNC 640


 If a coupling is closed while the master is moving, the slave axis is first acce-
lerated to the velocity of the master at the slave axis's maximum possible
acceleration from MP_maxAcceleration. This is done 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 parame-
ter 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 fac-
tor 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 to the velocity of the master axis at the accelera-
tion specified in MP_maxAcceleration. 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.
 When the velocity of the master axis is reached, the axis is moved to the
position offset at one half the maximum acceleration until it arrives at the
programmed or configured nominal offset. Here an acceleration or decele-
ration 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

Even when a coupling is closed, 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.

September 2015 6.15 Gantry/synchronized axes 1231


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 master'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 existing axis couplings. If an axis
of gantry axes 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 permissi-
ble 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.

1232 HEIDENHAIN Technical Manual TNC 640


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.

MP_masterAxis
Assign a master axis to the slave axis
(cf. iTNC 530: MP850.x)
Available from NCK software version: 597110-04.
Format: Menu choice
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: Menu choice
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: Menu choice
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

September 2015 6.15 Gantry/synchronized axes 1233


MP_typeOfOffset
The parameter specifies how the position offset between
master and slave axis is treated
(cf. iTNC 530: MP860.x, bit 0)
Available from NCK software version: 597110-04.
Format: Menu choice
Options: None / Actual
The offset when a coupling is closed is retained as static offset.
There is no compensating movement on stationary axes.
Parameters
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
(cf. iTNC 530: MP855.x)
Available from NCK software version: 597110-04.
Format: Number
Input: Position offset [mm] or [°] 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 at which an offset between the master axis and the
slave axis is compensated for
(cf. 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

1234 HEIDENHAIN Technical Manual TNC 640


MP_maxPosDiff
Synchronization monitoring—clearable emergency stop
message
(cf. 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

September 2015 6.15 Gantry/synchronized axes 1235


MP_ultimatePosDiff
Synchronization monitoring—non-clearable 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
(cf. 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, parameter optional
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

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

1236 HEIDENHAIN Technical Manual TNC 640


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.
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 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 at the time of coupling
6: Close the position coupling,
use the transferred coupling factor,
maintain the position offset at the time of coupling
CM 9126
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

September 2015 6.15 Gantry/synchronized axes 1237


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
synchronization
<Mode 2>: (Bit-encoded)
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
synchronization
<Mode 3>
Rounded coupling factor in 0.0001
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

1238 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

Rack

Motor

Minimization of mechanical play through mutual tensioning

Coupling

Motor Motor

Shaft

Distribution of torque with a rigid coupling

September 2015 6.15 Gantry/synchronized axes 1239


Principle 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 compensation value) evenly to the
master and the slave (MP_compOnlySlave = 0) or exclusively 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

Position encoder

Torque Torque
controller bias
P-factor MP_torqueBias
MP_propGain

Torque
distribution
MP_torqueDistrFactor

Speed
encoder

1240 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 enco-
der is required.
 Linear and nonlinear axis error compensation as well as temperature com-
pensation 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

September 2015 6.15 Gantry/synchronized axes 1241


Activation of For torque coupling, static or dynamic coupling is available. 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 MP_axisList list parameter
of the CfgAxes entity. 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 static coupling is available for 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.
For dynamic coupling, you need to switch between the MP_mode = NONE and
MP_mode = Torque parameters in the control at run time. In MP_type, the
value Static must have been entered. During the switchover, the drive
motors must be at standstill and switched off.

1242 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 "Commis-
sioning" on page 1691.
 Not for CC 61xx:
Enter the following preliminary values in 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 1691. It is not permis-
sible 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 fil-
ter because it may have a negative influence on the dynamics of the con-
trol. 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 speed controller factors should be identical to


ensure identical dynamic behavior.

September 2015 6.15 Gantry/synchronized axes 1243


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.

1244 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 "Commis-
rigid design sioning" on page 1691.
 Enter the following preliminary 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 1691.
 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 fil-
ter because it may have a negative influence on the dynamics of the con-
trol. 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 fre-
quency 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 1691.

Note

For identical motors, the speed controller factors should be identical to


ensure identical dynamic behavior.

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.
 Enter in MP_propGain for the slave axis 50 % of the resulting value.

September 2015 6.15 Gantry/synchronized axes 1245


MP_torqueBias
Tensioning torque between master and slave for master-slave
torque control (entry for the slave axis)
(cf. 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)
(cf. iTNC 530: MP2910.x)
Available from NCK software version: 597110-04.
Format: Number
Input: 0.001 to 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: Menu choice
Options: FALSE
Algebraic sign reversal inactive
TRUE
Algebraic sign reversal active
Default: FALSE
Access: LEVEL3
Reaction: RUN

1246 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.

For each individual drive, use the MP_testBrakeCurrent machine parameter


to activate (> 0) or to deactivate (= 0 or delete this parameter) the brake test.
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
1534. This test torque applies an 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 must therefore be handled
separately in the brake test. CfgAxisCoupling is used to configure servo
drives so that they form 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.

September 2015 6.15 Gantry/synchronized axes 1247


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 for a specific axis using 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 syn-
chronized axis, all servo drives of the axis must be switched on and the bra-
kes must be open.
Alternative behavior:
Test 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 different brake test sequence with the
MP_autoBrakeTest machine parameter. The setting
MP_autoBrakeTest = with Master causes the brake test to be performed
together with the master axis. With 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.

1248 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
successively:
 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 successively or together with the
master.
 Brake test via PLC module:
The brake test can be activated for a specific axis using the PLC program
with PLC Module 9143. Depending on the setting in MP_autoBrakeTest,
the brakes of the slave drives are tested either successively 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
(Cf. iTNC 530: MP860, bit 2)
Available from NCK software version: 597110-05.
Format: Menu choice
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.

September 2015 6.15 Gantry/synchronized axes 1249


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.
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 CC 61xx 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 is performed
(MP_autoBrakeTest = off).
 Test the behavior of the PLC program and the brake test on the machine.

1250 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

September 2015 6.16 Reference marks 1251


6.16.2 Reference marks, traversing
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.

1252 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 advance calculation (strobe with MP_sync = SYNC_CALC) must
be 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 "deac-
tivated 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

September 2015 6.16 Reference marks 1253


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.

1254 HEIDENHAIN Technical Manual TNC 640


Renewed Module 9220 Reference mark, traversing
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 refe-
rence mark is evaluated again. The same constraints apply as when traver-
sing 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 exceptio-


nal 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/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 <Traversing direction>
–1: Negative direction
0: Direction from CfgReferencing/refDirection
1: Positive direction
CM 9220
PL B/W/D/K <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

September 2015 6.16 Reference marks 1255


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:
 You select the functional sequence (type of reference marks) for each axis
in MP_refType
 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 is defined by the setting
in MP_onTheFly
 Define the sequence of axes for traversing the reference marks in
MP_refAxis
 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.

1256 HEIDENHAIN Technical Manual TNC 640


MP_refType
Functional sequence when crossing the reference mark
(cf. iTNC 530: MP1350)
Available from NCK software version: 597110-06.
Format: Menu choice
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
Mode10
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
Mode11
Reserved
Default: None
Access: LEVEL3
Reaction: REF

MP_onTheFly
Reference mark evaluation "on the fly"
Available from NCK software version: 597110-06.
Format: Menu choice
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

September 2015 6.16 Reference marks 1257


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
Traversing direction for finding the reference marks
(cf. iTNC 530: MP1320)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: positive
Positive traverse direction
negative
Negative traverse direction
Default: negative
Access: LEVEL3
Reaction: REF

MP_refFeedLow
Low speed when finding the reference mark
(cf. 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 speed when finding the reference mark
(cf. 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.

1258 HEIDENHAIN Technical Manual TNC 640


MP_refSwitchActive
Active level of trip dog (reference end position)
Available from NCK software version: 597110-01.
Format: Menu choice
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

September 2015 6.16 Reference marks 1259


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

1260 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

September 2015 6.16 Reference marks 1261


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

1262 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

September 2015 6.16 Reference marks 1263


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
doubleRefImmed 400415.01109

Use these optional machine parameters to configure additional functions.

Double During the double reference run, the absolute position is first output via the
reference run EnDat interface of the speed encoder. If at a later time the reference mark of
the position encoder is traversed, the control continues 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
 With the first crossing of the reference mark (MP_doubleRefOffset without
value) of the position encoder, the value determined is automatically adop-
ted in the machine parameter MP_doubleRefOffset. A message also
informs you that the modified configuration should be checked.
With machine parameter MP_doubleRefImmed = TRUE, the axis is
considered to be referenced if the EnDat interface of the speed encoder has
been used for referencing.

1264 HEIDENHAIN Technical Manual TNC 640


MP_refSwitchLowActive
Trip dog (reference end position) is low active
Available from NCK software version: 597110-06.
Format: Menu choice
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: Menu choice
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: Menu choice
Options: TRUE
After reaching the trip dog, the axis moves further for half the
distance from CfgAxisHardware/MP_distPerMotorTurn.
Reference-mark evaluation is only activated after this
FALSE
Reference-mark evaluation is activated immediately after
actuation of trip dog.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

September 2015 6.16 Reference marks 1265


MP_doubleRef
Double referencing is active
Available from NCK software version: 597110-06.
Format: Menu choice
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 continues 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_doubleRefImmed
Axis has already been referenced if the EnDat interface of the
speed encoder has been used for referencing
Available from NCK software version: 597110-10.
Format: Menu choice
Options: TRUE
After the reference run with the speed encoder, the axis is
considered as referenced (REF_OK)
FALSE
The axis is only considered as referenced after a double
reference run.
Default: FALSE, optional parameter
Access: LEVEL3
Reaction: REF

1266 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

September 2015 6.16 Reference marks 1267


Machine zero point 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
(cf. 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 in the Hirth grid
 The end position in MP_moveAfterRefPos
 The feed rate in MP_moveAfterRefFeed

MP_moveAfterRef
Activate movement after finding the reference mark
Available from NCK software version: 597110-02.
Format: Menu choice
Options: on
Positioning after reference-mark traverse is active
off
No positioning after reference-mark traverse
Default: off
Access: LEVEL3
Reaction: REF

1268 HEIDENHAIN Technical Manual TNC 640


MP_moveAfterRefType
Type of movement after finding the reference mark
Available from NCK software version: 597110-02.
Format: Menu choice
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.
relativ
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

September 2015 6.16 Reference marks 1269


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.

1270 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).

Key:
 v: Velocity
 a: Acceleration
 r: Jerk
 vmax: Maximum velocity

September 2015 6.17 The control loop 1271


Line segment 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.

Key:
 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

1272 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 1279). In
contrast to 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 smooths 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)

September 2015 6.17 The control loop 1273


 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 distance ele-
ment generated by 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: Menu choice
Options: Off
The filter is switched off.
ShortCut
Individual points on the polygon are omitted. If the connecting
line from the middle point to the previous point or to the next
point of three subsequent points on a polygon is within the
tolerance band, the middle point will be omitted.
Average
The geometry filter smooths corners.
Default: Off
Access: LEVEL3
Reaction: RUN

1274 HEIDENHAIN Technical Manual TNC 640


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

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

September 2015 6.17 The control loop 1275


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 switching from the iTNC 530:


MP_filterFeedTime = MP1522 on the iTNC 530.
Caution: The iTNC 530 and the TNC 640 use different units of measure-
ment:
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 results in a more steady 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.

1276 HEIDENHAIN Technical Manual TNC 640


The special benefit of the additional feed rate smoothing is that it already
smooths 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.

September 2015 6.17 The control loop 1277


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 work-
piece.
 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 sur-
face 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 1752.

1278 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 filters
• 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.

September 2015 6.17 The control loop 1279


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):

1280 HEIDENHAIN Technical Manual TNC 640


Finishing:

Filter type Recommended application


Triangle filter High surface definition
HSC filters High accuracy with short machining times
Advanced HSC filters 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 filters 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 1752

September 2015 6.17 The control loop 1281


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.

1282 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 specifies the order of the mean value filter for
the manual operating modes.
 The optional MP_disableForMeasure serves to deactivate the filters during
measurement, See "Nominal position value filters during measurement with
TS and TT" on page 2311.
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.

September 2015 6.17 The control loop 1283


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 determines 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

A modification of the filter order means a fundamental change in the filter


characteristics of the nominal position value filters set, and can therefore
have significant influences on the behavior of the machine. The effects
must be checked individually and the nominal position value filters readju-
sted 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 axis-specifically for rotary axes with TCPM.
 MP_manualFilterOrder axis-specifically specifies the order of the mean
value filter for 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
1291).
Take the machine setup into account when configuring filters. It is decisive
whether TCPM (Tool Center Point Management) executes compensating
movements for rotary axes.

1284 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 Cutoff frequency: 24 Hz
hscMode: Smoothing HSC mode: Finishing
defaultManualOrder: 11 Filter order in Manual operating
modes: 11

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.

September 2015 6.17 The control loop 1285


Machine parameters in the configuration editor and Meaning
recommended input value
System
CfgFilter
defaultPosition
shape: HSC Form of filter: HSC filter
frequency: 40 Cutoff 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 Cutoff frequency: 15 Hz
hscMode: Smoothing HSC mode: Finishing

1286 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 Cutoff frequency: 40 Hz
hscMode: Smoothing HSC mode: Finishing
defaultCutter Loc Rotary axes (global):
shape: HSC Form of filter: HSC filter
frequency: 25 Cutoff frequency: 25 Hz
hscMode: Smoothing HSC mode: Finishing
defaultManualOrder: 11 Filter order in Manual operating
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 Form of filter: HSC filter
frequency: 15 Cutoff frequency: 15 Hz
hscMode: Smoothing HSC mode: Finishing

September 2015 6.17 The control loop 1287


Machine parameters:
System / CfgFilter:
Configuration of the globally effective nominal position value filters
 defaultPosition:
Defines the shape and cutoff frequency of the nominal position value filter
globally for all linear axes.
 defaultCutterLoc:
Defines the shape and cutoff 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 effec-
tive 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: Menu choice
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

1288 HEIDENHAIN Technical Manual TNC 640


MP_frequency
Cutoff 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: Menu choice
Options: The HSC mode defined here is effective for HSC filters (not for
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
(cf. 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

September 2015 6.17 The control loop 1289


MP_disableForMeasure
Deactivation of the filters during measurement with TS or TT
touch probe
Available from NCK software version: 597110-06.
Format: Menu choice
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 operating
mode El. Handwheel
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, parameter optional
Access: LEVEL3
Reaction: RUN

1290 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 accelera-
tion of the slowest axis is decisive.
 Feed rates must not fall beneath the minimum value.

September 2015 6.17 The control loop 1291


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 switching 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

1292 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 bet-


ween two segments; this means that look-ahead violates the defined mini-
mum 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 switching 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 bends. The parameter
defines the radius of rounding of corners and the maximum deviation from the
circle radius. This keeps errors of the 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 includes errors caused by the filter before the position
control loop (See "Operating sequence of the nominal position value filters" on
page 1282). The feed-rate override does not affect which jerk or tolerance is
in effect.
MP_pathToleranceHi defines the tolerance for feed rates exceeding those
defined in MP_maxG1Feed.

Note

If you are switching from the iTNC 530:


MP_pathTolerance = MP1202.0 on the iTNC 530.
MP_pathToleranceHi = MP1202.1 on the iTNC 530

September 2015 6.17 The control loop 1293


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 effec-
tive
 Programmed feed rate > MP_maxG1Feed:
Rapid traverse, greater jerk values and tolerances are effective
 MP_maxG1Feed = 0:
The rapid traverse parameters only work at FMAX.
Note

HEIDENHAIN recommends:
Set the parameter MP_maxG1Feed to a high value. This prevents inadver-
tent use of the "-Hi" values on the TNC 640 while you are adjusting the axes.

Note

If you are switching 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

1294 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 switching 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 2312.

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.

September 2015 6.17 The control loop 1295


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 switching 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 [m/s4] with up to 9 decimal places
Default: 4 000 [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: Menu choice
Options: Off
The same yank limitation as with normal feed rate
Maximum
No yank limitation
Default: Off, optional parameter
Access: LEVEL3
Reaction: RUN

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.

1296 HEIDENHAIN Technical Manual TNC 640


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 switching 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 (software option 40):
For movements near collision objects with high angle tolerances (cf. iTNC
530: MP1290, MP1292), higher oversizes must be defined in collision moni-
toring. 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

September 2015 6.17 The control loop 1297


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

1298 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

The evaluation would also be made for linear axes and rotary axes [Key
name of the axis parameter set]. The default value (=0) should not be chan-
ged here so as not to limit the minimum axis feed rate.

September 2015 6.17 The control loop 1299


MP_minFeed
Applies only to the main spindle: minimum spindle speed
(cf. 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
(cf. 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. Handwheelmodes 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
(cf. 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.

1300 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
(cf. 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 control" on page 1572.
There are two ways to configure the maximum jerk on the path:
 MP_maxPathJerk(Hi) (Page 1295) limits the jerk in the direction of tra-
verse.
 MP_axTransJerk limits the jerk for specific axes in the transverse path
direction (transition jerk).
Note

If you are switching 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 curva-
ture changes. The MP_axTransJerk parameter is used for all the criteria.
On the TNC 640, you use the separate MP_curveJerkFactor parameter
(Page 1308) 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.

September 2015 6.17 The control loop 1301


MP_axTransJerk
Maximum axis jerk
(cf. 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 1295) 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 soft-
ware 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 whe-
ther 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.

1302 HEIDENHAIN Technical Manual TNC 640


 Modify the setting in MP_axPathJerk until the resulting following error is
just acceptable enough.
 MP_axPathJerkHi is typically set to a value five times higher than that in
MP_axPathJerk.

Note

The following error s-diff should be no more than a few micrometers (µm)
to ensure smooth surfaces during acceleration and deceleration. If speed is
required, the parameter can be increased until the machine gets loud, or
the following error s-diff too large.

Note

In the above procedure, which uses feed rate changes instead of only posi-
tioning movements, disturbances from sliding friction and stiction transiti-
ons 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 on Page 1752.

Note

If you are switching from the iTNC 530:


MP_axPathJerk(Hi) = MP1085, MP1086 with the iTNC 530.

September 2015 6.17 The control loop 1303


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

The axis-specific path jerk during measurement can be defined in


MP_axMeasJerk. The value is optional. Also see page 1276 and 2311.

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

1304 HEIDENHAIN Technical Manual TNC 640


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 switching 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.

MP_reduceCornerFeed
Reduction of the contouring feed rate at the beginning of a
contour element
Available from NCK software version: 597110-05.
Format: Menu choice
Options: TRUE
Reduction of the contouring feed rate is active
(slow, but probably more precise).
FALSE
Reduction of the contouring feed rate is not active
(fast, but it might be less precise).
Default: TRUE
Access: LEVEL3
Reaction: RUN

September 2015 6.17 The control loop 1305


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. This makes it possible to separately set the tolerance for corners
(MP_pathTolerance effective) and circles
(MP_curveTolFactor · MP_pathTolerance effective).
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 by MP_curveJerkFactor. This enables a
smaller or larger feed rate reduction to be set with curvature changes. When
using ADP (only available on the TNC 6xx), 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.
With MP_curveJerkFactor = 0 there is no further feed rate reduction for
curvature changes. (Only set when ADP is not used)

1306 HEIDENHAIN Technical Manual TNC 640


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 at positions
with curvature changes and therefore also increases in 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 because 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 contour


smoothing. For the function of the filters, See "Nominal position value filter" on
page 1279.

Note

If you are switching from the iTNC 530:


MP_curveTolFactor is not available on the iTNC 530.
MP_curveJerkFactor = MP1240 to MP1243 on the iTNC 530.

September 2015 6.17 The control loop 1307


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 max. 9 decimal places
0: No further feed rate reduction
Default: 1
Access: LEVEL3
Reaction: RUN

1308 HEIDENHAIN Technical Manual TNC 640


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 smooths 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 contour smoothing. For the function
of the filters, See "Nominal position value filter" on page 1279.

Note

If you are switching 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] is also


effective for rotary axes, See "Machine parameters for path-specific limit
values" on page 1292.

September 2015 6.17 The control loop 1309


6.17.7 Advanced Dynamic Prediction (ADP)

Settings in the configuration editor MP number


System
CfgHardware
setupADP 100108

In the look-ahead function, the ADP (Advanced Dynamic Prediction) function


is available for the pre-calculation of the permissible maximum feed rate
profile. It can be activated alternatively to the previous, standard motion
control by using MP_setupADP.
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 the DCM software option) 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 using the high-


est performance level and setting 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 pro-
grams 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 considera-
tion of the dynamic influence of tool center point management on linear
axes

1310 HEIDENHAIN Technical Manual TNC 640


Changing to ADP does not entail any configuration changes. However, the
following improvements can be made for fine adjustment. Please note,
however, that no optimization recommendations of general validity can 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 smoot-
hing 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 smoot-
hing 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 (tri-
angle 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 pro-
grams 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 accu-
racy.

MP_setupADP
Specify the performance level for ADP
Available from NCK software version: 597110-06.
Format: Menu choice
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

September 2015 6.17 The control loop 1311


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
Position controller cycle time (interpolation clock)
Format: Menu choice
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

1312 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.17 The control loop 1313


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
(cf. 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

1314 HEIDENHAIN Technical Manual TNC 640


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 · sa
vnoml = nominal velocity value
The control loop gain, known as the kv factor, defines the amplification of the
position control loop. The optimal kv factor must be determined by trial and
error.
If you select too high a kv factor, the following error is very small; however,
this can result in 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 factor must be equal to
prevent contour deviations.
 Define the kv factor in MP_kvFactor.
 In MP_servoLagGainFactor you can enter a multiplication factor for the
kv factor.

September 2015 6.17 The control loop 1315


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 of kv factor TNC 640: mm / (mm · s)
Unit of kv factor 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)
(cf. 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
Multiplication factor for the kv factor
(cf. 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

1316 HEIDENHAIN Technical Manual TNC 640


Controller The controller output limit MP_ctrlOutputLimit is used only during switch-on
output 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

September 2015 6.17 The control loop 1317


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.
In most cases, machines are controlled with velocity feedforward, since it
makes it possible to machine contours exactly even at high contouring
speeds.

You can influence feedback control with velocity feedforward with the kv-
factor:
 Enter a kv factor in MP_kvFactor.

U [V]

t [ms]

1318 HEIDENHAIN Technical Manual TNC 640


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 interpolated axes (See "Interrelation of kv
factor, feed rate, and following error" on page 1316).

September 2015 6.17 The control loop 1319


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 1299).

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 [m] · fi [kHz] · 60
vmax = Maximum traverse speed
P = Signal period of the encoder
fi = Input frequency of the encoder input, See "Connecting the encoders" on
page 325.
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]
Number of pole pairs

Analog axes:
The rapid traverse rate at an analog voltage of 9 V is defined in
MP_maxFeedAt9V.

1320 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 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]

September 2015 6.17 The control loop 1321


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

1322 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

September 2015 6.17 The control loop 1323


Axis clamping 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.

1324 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 follo-
wing constraints apply:
The PLC program must ensure that PP_AxClampModeRequest and
PP_AxDriveOnRequest are not switched during a movement. By remo-
ving PP_AxFeedEnable of all NC axes, the PLC program can prevent moti-
ons, 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 should be clamped as soon as it is no longer
moved (NN_AxInPosition=1)
Axis should be unclamped
as soon as it should be moved (NN_AxInPosition=0)
NN_AxInPosition M
Axis in position
0: Axis not in position
1: Axis in position

September 2015 6.17 The control loop 1325


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 logical 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

1326 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 combines PP_ChnFeedEnable and the
corresponding axis-dependent feed rate enable PP_AxFeedEnable with an
OR gate.
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

September 2015 6.17 The control loop 1327


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.

1328 HEIDENHAIN Technical Manual TNC 640


Adjust the step response of the speed controller:
 With the position controller switched off (PP_AxPosControlRequest), use
MP_VCtrlPropGain to enter a proportional factor and MP_VCtrlIntGain to
enter 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 pos-
sible.
Realistic values for the settling time: 3 ms to 15 ms.

MP_vCtrlPropGain
Proportional factor of the speed controller
(Cf. 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
(Cf. 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

September 2015 6.17 The control loop 1329


Constraints:
 The value 0 is read for axes that are not connected.
 With motors with volts-per-hertz control mode the module returns the nomi-
nal 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 "deac-
tivated 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/K <Actual rotational speed value in 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 interference oscillations with the differential factor, the
PT2 second-order time-delay element, the band-rejection filter or the low-pass
filter of the speed controller.

1330 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 factor of the speed controller
(Cf. 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

September 2015 6.17 The control loop 1331


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)

1332 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 multi-
functional 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 the adjustment of the current controller, optimize the speed controller:
filters / To increase the P component of the speed control loop and thus to increase
recommendations 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 advi-
sable, 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, howe-
ver, 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 oscil-
lation tendency and has a limiting effect on the kv factor in the position con-
trol 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.
 Next, the optimize the position controller:
When adjusting the position controller, increase the kv factor until the osci-
llation limit is reached. Preferably dampen the oscillations using the IPC
(Integral Phase Compensation), see page 1351. 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 fil-
ter 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:
- If there is a significant phase drop, this can aggravate oscillations in
the lower frequency 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: same as center frequency
• Disadvantage:
- If there is a slight phase drop below the center frequency, this can
aggravate oscillations in the lower frequency range

September 2015 6.17 The control loop 1333


 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: same as 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.
 1st and 2nd order lead-lag filter
• 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 2nd order)
• Disadvantage:
- If there is a phase drop, this can aggravate oscillations in the lower fre-
quency 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.

1334 HEIDENHAIN Technical Manual TNC 640


Possible settings Filter types for use in the speed controller (MP_vCtrlFiltType = x0x):
for the
multifunction filters

Name vCtrlFiltType vCtrlFiltDamping vCtrlFreq1..6 vCtrlBandWith


1..6 1..6 1..6

PT2 1 --- Cutoff frequency ---


[Hz]

Band- 2 Damping [dB] Center frequency Bandwidth [Hz]


rejection filter [Hz]

Phase lifting 3 Phase increase [°] Center frequency Bandwidth [Hz]


filter [Hz]

First-order 4 Damping [dB] Cutoff frequency ---


lead lag filter [Hz]

PT2 101 --- Cutoff frequency [Hz] Lehr's damping ratio

Band- 102 Damping [dB] Center frequency Bandwidth [Hz]


rejection filter [Hz]

Phase lifting 103 Phase increase [°] Center frequency Bandwidth [Hz]
filter [Hz]

Second-order 104 Damping [dB] Cutoff frequency Lehr's damping


lead lag filter [Hz] ratio

Filter types for use in the position controller (MP_vCtrlFiltType = x1x):

Name vCtrlFiltType vCtrlFiltDamping vCtrlFreq1..6 vCtrlBandWith


1..6 1..6 1..6

PT2 11 --- Cutoff frequency ---


[Hz]

Band- 12 Damping [dB] Center frequency Bandwidth [Hz]


rejection filter [Hz]

Phase lifting 13 Phase increase [°] Center frequency Bandwidth [Hz]


filter [Hz]

First-order 14 Damping [dB] Cutoff frequency ---


lead lag filter [Hz]

PT2 111 --- Cutoff frequency Lehr's damping


[Hz] ratio

Band- 112 Damping [dB] Center frequency Bandwidth [Hz]


rejection filter [Hz]

Phase lifting 113 Phase increase [°] Center frequency Bandwidth [Hz]
filter [Hz]

Second-order 114 Damping [dB] Cutoff frequency Lehr's damping


lead lag filter [Hz] ratio

September 2015 6.17 The control loop 1335


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.

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.

1336 HEIDENHAIN Technical Manual TNC 640


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 controller)
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: Phase increase (speed controller)
104: Second-order lead lag filter (speed controller)
11: PT2 low-pass filter (position controller)
12: Band-rejection filter (position controller)
13: Phase increase (position controller)
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...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...6
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 30 000 with up to 9 decimal places
Default: 0
Access: LEVEL3
Reaction: RUN

MP_vCtrlFiltDamping1..6
Damping of band-rejection filter for filters 1...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

September 2015 6.17 The control loop 1337


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 1332.

Machine MP_vCtrlEncInputFilt
parameters Filter order of the FIR filter (low-pass filter)
(Cf. 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

1338 HEIDENHAIN Technical Manual TNC 640


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 UEC11x 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 is started that determines the
maximum occurring torque (approximate value in % of the rated torque
without decimal places) between two points in time. 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.
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 deter-
mined
 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
 Optionally: Saving the measuring results in a variable:
FN 17 SYSWRITE ID 590 NR 2 IDX <axis> IDX = 1..30 (is not cleared upon
selection of a program)
FN 17 SYSWRITE ID 590 NR 3 IDX <axis> IDX = 1..30 (secure from power
failure)
 Optionally: Reading the saved value
FN 18 SYSREAD ID 590 NR <2 or 3> IDX <axis> (IDX = 1..30)
 Optimizing the machine and saving the results in a machine-parameter sub-
file for this load class
 Performing the measurements for each load class as described above

September 2015 6.17 The control loop 1339


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 machine parameter subfile depending on the measurement
result
FN 17 SYSWRITE ID 1020 NR 3 = "Path/File" or <Q string number>
 Deactivating the machine parameter subfile
FN 17 SYSWRITE ID 1020 NR 4
within an NC macro which is run when a program is terminated with M02,
M30, or END PGM (key name OEM_PROGEND under Paths/CfgSystem-
Cycle, See "PROGEND cycle" on page 2613. For the Manual operating 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

1340 HEIDENHAIN Technical Manual TNC 640


PLC modules Module 9046 Copy controller data to the PLC memory
Module 9046 is used to copy controller data (data of the CC) cyclically to the
PLC memory via configured channels.
Constraints:
 The module cannot 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.
 Between the call of the module and copying the first CC data object to the
PLC memory, at least one PLC clock passes, possible even more. HEIDEN-
HAIN recommends to populate the PLC data object with an invalid value and
then wait until this value is overwritten.
 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.
 Calling this function in a system with simulated drives will cause 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]
8: Motor voltage in [V]
9: d component of voltage in [V]
10: q component of voltage in [V]
11..15: Reserved
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: Internal error, possible causes:
- NC/CC does not support the desired function
- Drives are being simulated

September 2015 6.17 The control loop 1341


3: Invalid value in the <Mode> parameter
4: Invalid value in the <Axis/spindle index> parameter
- Axis/spindle index not defined
- No digital drive control
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

Specific feedback from the CC:


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 the 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
19 No digital drive control
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 sup-
ported by this NC software; drives are being
simulated
61 Internal error

1342 HEIDENHAIN Technical Manual TNC 640


Module 9346 Query the CC data of an axis
Module 9346 enables you to perform a one-time query of the CC data. In
contrast to Module 9046, there is no cyclic data exchange.
Constraints:
 The module must not be called in the cyclic PLC program part.
 Calling this function in a system with simulated drives will cause a module
error.
 If the LAC function is active, the mass and mass moment of inertia will be
determined by an adaptive method. Otherwise the mass and mass moment
of inertia are determined using machine parameters (transmission, accele-
ration feedforward control). If the value in the acceleration feedforward con-
trol is not correct, the transmitted mass or mass moment of inertia will also
be incorrect.
Call:
PS B/W/D/K <Mode>
0: Query the CC data of an axis
PS B/W/D/K <Axis index>
n: Index of the axis from CfgAxes/axisList
PS B/W/D/K <Code for CC data>
Mode 0:
0: Query the mass in 0.001 kg
1: Query the mass moment of inertia in [kg*m2 * 1.0e–6]
CM 9346
PL B/W/D <read CC data>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode parameter> and/or
ErrorCode <Code for CC data>
2 Invalid value for <Axis index> parameter
19 No digital drive control
20 Call not in a submit/spawn job
45 Internal error
51 The module is not supported by the NC or CC
software or the programmed CC data object is
not available for this axis on the CC; drives are
being simulated
61 Internal error

September 2015 6.17 The control loop 1343


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 = 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

1344 HEIDENHAIN Technical Manual TNC 640


MP_iCtrlMotVRedFact
Factor for reducing the magnetizing current during idle running
(only from CC 61xx)
(Cf. 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.

September 2015 6.17 The control loop 1345


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 interference oscillations is suitable for


damping undesired oscillations of approx. 10 to 30 Hz. Set the damping factor
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 between 0.8 and 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 lowest 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 fre-
quency 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.

1346 HEIDENHAIN Technical Manual TNC 640


MP_compActDampFact
Damping factor for active damping
(Cf. 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, parameter optional
Access: LEVEL3
Reaction: RUN

MP_compActDampTime
Damping time constant for active damping
(Cf. 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, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 6.17 The control loop 1347


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 1158).
 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

1348 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 (N IST) = 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

September 2015 6.17 The control loop 1349


Limiting the In machines with a great deal of static friction (stiction), a high integral-action
integral factor component can 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
(cf. 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

1350 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. However, the I factor has a negative influence on 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, enabling an 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.

September 2015 6.17 The control loop 1351


Machine type 1:
 The machine is commissioned as usual up to the point where 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 increasing and reducing it to find the
optimum value.

 MP_kvFactor = 0.65 · ascertained kV

Machine type 2:
 The machine is commissioned as usual up to the point where 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, normally by reducing it, until the following error is


at its minimum.

 MP_kvFactor = 0.65 · ascertained kV

1352 HEIDENHAIN Technical Manual TNC 640


MP_compIpcT1
IPC time constant T1
(cf. 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
(cf. 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

September 2015 6.17 The control loop 1353


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 commissioning the feedforward, the required jerk feedforward control
for the known control loop characteristics is calculated, but the mechanical
deformation of the transmission components (e.g. from torsion of the ball
screw or the slack sides and tight sides of belt drives) and the resulting
following error is 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.
With the CC 61xx or UEC 11x you can also use this function without active
IPC.
Commissioning:
 Enter the following test program:
0 BEGIN PGM TEST MM
1 LBL 1
2 L X <maximum distance traversed> 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.
 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 above 0.5 in MP_compIpcJerkFact only make


sense in exceptional cases.
Only from version 597110-06, the permissible input range has been
increased to 0.8. This may be necessary for very large torque motors.
 HEIDENHAIN recommends that you use the usually better suited
parameter MP_compTorsionFact rather than MP_compIpcJerkFact,
see page 1419.

MP_compIpcJerkFact
Following error in the jerk phase
(Cf. iTNC 530: MP2606.x)
Available from NCK software version: 597110-02.
Format: Number
Input: 0 to 10 with max. 9 decimal places
Default: No value, optional parameter
Access: LEVEL3
Reaction: RUN

1354 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 NOML1 + I NOML2
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)
(Cf. 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

September 2015 6.17 The control loop 1355


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 clam-
ping or brakes activate before the drive controllers (current and speed con-
trollers) are switched off.
 Before switching off the drives, save the positions of axes with commonly
used encoders.

1356 HEIDENHAIN Technical Manual TNC 640


 Ensure that all control components are wired correctly. (HEIDENHAIN
recommends always wiring the system according to the basic circuit dia-
gram 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 1323).
 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 READY 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.

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.

September 2015 6.17 The control loop 1357


Procedure for
"switching drives
Start
on and off"

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

1358 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.17 The control loop 1359


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

1360 HEIDENHAIN Technical Manual TNC 640


MP_driveOffGroup
Wiring of X150/X151
Available from NCK software version: 597 110-01.
Format: Menu choice
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 power module ON and RDY signal
(Cf. 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 corre-
sponding axis group(s) are switched off.

September 2015 6.17 The control loop 1361


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.

1362 HEIDENHAIN Technical Manual TNC 640


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 applied to X150/X151
(Bit 0 to bit 7 = X150; bit 8 to bit 15 = X151)
4: Reserved
CM 9157
PL B/W/D/K <Status information of the axis, bit-encoded>
(Bit 0 represents logical 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. Bit 0 corresponds
to the axis with the index 0 in the parameter CfgAxes\axisList (100001).
Spindles are not handled separately. The corresponding index from CfgA-
xes/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

September 2015 6.17 The control loop 1363


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>
Bit 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/K <Drive ready>
Bit 0...13 -> axes 1...14, bit 15 -> spindle
0: Not ready
1: Ready

1364 HEIDENHAIN Technical Manual TNC 640


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 for display only (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:

September 2015 6.17 The control loop 1365


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 1714.

1366 HEIDENHAIN Technical Manual TNC 640


MP_iCtrlPropGain
Proportional component for digital current controller
(Cf. 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
(Cf. 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

September 2015 6.17 The control loop 1367


Increased 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:
 Increasing the controller factors for the current control loop with machine
parameter MP_iCtrlAddInfo
 Proportionally differentiating feedforward (D feedforward) to optimize the
command action of the current control loop (MP_iCtrlDiffFreqFF parame-
ter).
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
the MP_iCtrlAddInfo parameter 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 the MP_iCtrlDiffFreqFF parameter to activate feedforward with
proportionally differentiating behavior for the torque-generating current. This
way you achieve an optimized command action of the current controller.
The MP_iCtrlDiffFreqFF parameter 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.

1368 HEIDENHAIN Technical Manual TNC 640


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 con-
troller 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 control-
ler factors in the speed control loop if the PDT1 feedforward is activated.

September 2015 6.17 The control loop 1369


MP_iCtrlDiffFreqFF
Cutoff frequency of the current controller feedforward in Hz
(Function only available if the CC 61xx controller unit is used)
(Cf. 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
Switch on and off the dead time compensation
(Function only available if the CC 61xx controller unit is used)
(Cf. 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

1370 HEIDENHAIN Technical Manual TNC 640


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 case of an emergency stop or a 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. 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 when 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.

September 2015 6.17 The control loop 1371


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):
 As the minimum value, use the value in MP_maxAcceleration
 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 bra-
king 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
(cf. 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 up to 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 the information
under "Limitation of the braking power" on page 1376.

1372 HEIDENHAIN Technical Manual TNC 640


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).

September 2015 6.17 The control loop 1373


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 power limiting of the spindle at ERR.IZ.GR via
MP_motEncCheckOff – Bit 2 = 0 (not with UE 2xx)

1374 HEIDENHAIN Technical Manual TNC 640


P Oversized motor

Power limit

Motor with power


and torque limit
Normal-sized motor

Oversized motor

Motor with
power limit

n
M
Motor with
power limit

Torque limit

Motor with power


and torque limit

September 2015 6.17 The control loop 1375


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.

1376 HEIDENHAIN Technical Manual TNC 640


Machine MP_motEncCheckOff
parameters Monitoring function
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 2 – Power limit of spindle at 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
(Cf. 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 failure
(Cf. iTNC 530: MP2390.x, 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 limit of motor
(cf. 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
(cf. 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

September 2015 6.17 The control loop 1377


MP_motMMax
Maximum torque
(cf. 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: – If a torque is specified through 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

1378 HEIDENHAIN Technical Manual TNC 640


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 "deac-
tivated axis" activation status (e.g. with Module 9226 or 9418), is treated as
if it were not present.
 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 clo-
sed-loop axis
24 Module was called in a spawn or submit job

September 2015 6.17 The control loop 1379


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 deacti-
vated (e.g. with Module 9226 or 9418), is treated as if it were not present.
 With <Mode=4>, you can check the status of the "Traverse to fixed stop"
function.
 <Status=1> indicates that, while the limit was active, the parameterized fol-
lowing error limit from CfgDeadStop/deadStopLag was exceeded.
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
4: Following error exceeded while the limit was active
PS B/W/D/K <Axis/spindle index>
CM 9129
PL B/W/D/K <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)
Mode 4: 0=Following error was not exceeded while the
limit was active / 1=Following error exceeded while the
limit was active
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (Status ascertained)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid value for <Axis / spindle index> or
ErrorCode <Mode> parameter, axis is an open-loop axis
or is temporarily not a closed-loop axis
24 Module was called in a spawn or submit job

1380 HEIDENHAIN Technical Manual TNC 640


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 specifications 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, standstill monitoring is inactive; only 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 specifications
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 "deac-
tivated axis" activation status (e.g. with Module 9226 or 9418), is treated as
if it were not present.
 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 < nFW)
2 2
PN M ⋅ nN ⋅ 2 ⋅ π ⋅ IN – I0
kM = ------------------------------- I q = --------------------------------------------------------------
nN P N ⋅ 60
I N ⋅ 2 ⋅ π ⋅ ------
60
 Field weakening range (n > nFW)
M 2 2
Iq = ----
- M ⋅ nN ⋅ n ⋅ 2 ⋅ π ⋅ IN – I 0
kM I q = ----------------------------------------------------------------------
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 the 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 (from motor table)
PN: Rated power (from motor nFS: Threshold rpm for field weakening
table) (from motor table)

September 2015 6.17 The control loop 1381


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 of <axis> not controllable
 C3B0 Motor of <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.

Call:
PS B/W/D/K/S<Axis number / spindle number>
Index from CfgAxes/axisList
PS B/W/D/K/S<Torque-producing current>
–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>, not a closed-loop axis, or
temporarily open-loop axis programmed
24 Module was called in a submit or spawn job

1382 HEIDENHAIN Technical Manual TNC 640


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.
For MP_manualFilterOrder for spindles, See "Filtering the acceleration
values" on page 1580.
 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

September 2015 6.17 The control loop 1383


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 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
accForwardFactor Factor for acceleration feedforward
control
maxFeedAt9V mm/min Assumed velocity of the axis at 9 V

1384 HEIDENHAIN Technical Manual TNC 640


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 1 000 [1/s]
Default: 0 [1/s]
Access: LEVEL3
Reaction: RUN

September 2015 6.17 The control loop 1385


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

1386 HEIDENHAIN Technical Manual TNC 640


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 integra-
ted 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 fol-
lowing error.

MP_accForwardFactor not adjusted

September 2015 6.17 The control loop 1387


MP_accForwardFactor set 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

1388 HEIDENHAIN Technical Manual TNC 640


Compensation of The compensation of the reversal spikes 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 up to 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

September 2015 6.17 The control loop 1389


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

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

1390 HEIDENHAIN Technical Manual TNC 640


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

Limiting the Parameter MP_compLimitFactor (400114) is used to limit reversal-spike


compensation compensation. As a precaution, the effective internal software limit is 3mm/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 max. 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 spikes, proceed as follows:
reversal spikes
 Set the machine parameter MP_compFFAdjust = 0 and MP_compRefAcc
= 0. With this setting the compensation strength for all feed rates is con-
stant.
 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 spike height
resulting without compensation is a suitable starting value for the compen-
sation.
 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.

September 2015 6.17 The control loop 1391


 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.
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 mode of operation Oscilloscope
 In the Oscilloscope use the SELECT soft key to set the following value:
Display mode: YT
Sample 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.

1392 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 inputs these into parameter
MP_analogOffset.

Note

For the offset adjustment, the axes and spindle must be in position feed-
back control.

To adjust the offset:


 Switch to the mode of operation Programming

 Press the MOD key

 Enter the code number 75368

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.

September 2015 6.17 The control loop 1393


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: Menu choice
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

Note

The control of analog axes by controls with an HSCI bus is implemented


with the module CMA-H. (See "Analog nominal value output" on page 337.)

1394 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, 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 further possible settings for weakened-field
operation with the CC 61xx, See "Peculiarities in weakened-field operation
with CC 61xx and CC 424" on page 1344.

September 2015 6.17 The control loop 1395


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 rated 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.

1396 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

Default 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)

September 2015 6.17 The control loop 1397


 Mode 1:
Enter MP_ampVoltProtection = not installed – mode 1 if you want to
operate synchronous motors without a weakened field.(= (1) in the com-
missioning flow chart)
Field weakening for synchronous motors is deactivated. This means that 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 ope-
rate 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 maxi-
mum speed nmax is much higher than the rated speed nrated (nmax >> nra-
ted). 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.
 From the motor table, select the motor with the designation QSY1xxx-EcoDyn
or QSY1xxx-EcoDyn-EnDat for MP_motName.
 Enter MP_ampVoltProtection = not installed – mode 3 if you use HEI-
DENHAIN EcoDyn synchronous motors.(= (3) in the commissioning flow
chart)
This entry is intended for axis motors in EcoDyn mode of operation. Here,
field weakening is only active in a relatively small speed range, i.e. the maxi-
mum 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 conside-
ration during project planning.
U0 = Entered value U0 (no-load voltage) of motor from motor table
nnenn = Entered value N-N (rated speed) of motor from motor table
UZ = 800 V (maximum DC-link voltage in case of power supply failure)
800V
---------------- ⋅ n nenn
2
n maxUz = --------------------------------------------
U0

1398 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 MP_ampBusVoltage has been made

September 2015 6.17 The control loop 1399


Regenerative module(= (4) in commissioning flow chart)
The DC-link voltage for regenerative power modules is 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-link voltage on non-regenerative power modules (= (5) in the
commissioning flow chart)
The value entered for 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
<:i>UNetz,Min<:/i> 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, as
long 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 and / 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.

1400 HEIDENHAIN Technical Manual TNC 640


Feed axis (EcoDyn operation):

Setting MP_ampBusVoltage has been made 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)

September 2015 6.17 The control loop 1401


Feed axis in EcoDyn mode—medium load
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 module current.
Feed axis in EcoDyn mode—high load
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 mode—high load
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 the magnetizing current. This
can lower the magnetizing current. The total actual current in the field
weakening range falls with it.
Feed axis in EcoDyn mode—high load
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 mode—high load
MP_ampVoltProtection = 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.

1402 HEIDENHAIN Technical Manual TNC 640


Synchronous spindle/torque motor:

Setting MP_ampBusVoltage has been made and


MP_ampVoltProtection = "installed—mode 2" (starting value)

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

September 2015 6.17 The control loop 1403


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 might 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 at this point.

1404 HEIDENHAIN Technical Manual TNC 640


MP_ampVoltProtection
Field weakening for synchronous motor
(cf. iTNC 530: MP2160.x)
Available from NCK software version: 597 110-05.
Format: Menu choice
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

September 2015 6.17 The control loop 1405


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 the Modules 9434 and 9435 to activate
the parameter set for operation with wye connection or operation with delta
connection (See "Parameter sets, switching" on page 602).
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.

MP_starDelta
Motor with wye/delta switchover
Available from NCK software version: 597110-01.
Format: Menu choice
Options: star-connection
Wye connection
delta-connection
Delta connection
Default: star-connection
Access: LEVEL3
Reaction: RUN

1406 HEIDENHAIN Technical Manual TNC 640


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 detect with Module 9174 whether a switchover request may be
placed. The current status of the wye/delta operation is returned.
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 negative speed)

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/K <Status>
0: Spindle in wye operation
1: Request for wye/delta switchover
2: Spindle in delta operation
3: Request for delta/wye switchover

September 2015 6.17 The control loop 1407


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 swit-
ching (e.g. "overcurrent" error message of the power module during swit-
ching).
 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 whe-
ther readiness of the current controller is to be waited for during a drive-on
after wye/delta switchover.

MP_miscCtrlFunct0
Special controller functions
(Cf. 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 ready signal from the current controller
when the drive is switched back on after wye/delta switchover.
Bit 7 = 1: Do not wait for the ready signal from the current
controller (recommended)
Default: No value, parameter optional
Access: LEVEL3
Reaction: NOTHING

1408 HEIDENHAIN Technical Manual TNC 640


6.17.28 Speed-dependent switching of the PWM frequency

Note

This function is only available when using the CC 61xx, UEC 11x or CC 424
controller unit!

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 maxi-
mum 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.
 If speed-dependent switching of the PWM frequency is used, the second
PWM output of that same drive-control motherboard or drive control
expansion board can no longer be used, see page 1655.

September 2015 6.17 The control loop 1409


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.

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
switchover 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: Dashed line:
Maximum possible current for the drive (Imax 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 power module)

1410 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 switchover speed 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
switchoff lead to an immediate cutoff:
 Excessive actual current: If the actual current exceeds the maximum per-
missible 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 thres-
hold (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
(Cf. 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
(Cf. 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

September 2015 6.17 The control loop 1411


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.
LIFTOFF can only be performed during the execution of a program. LIFT-
OFF is not performed, for example, if the control is in the Full Sequence
mode and the program run has been completed.

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.

1412 HEIDENHAIN Technical Manual TNC 640


MP_on
Switching on/off lift-off movements during NC stop
Available from NCK software version: 597110-01.
Format: Menu choice
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 character
Name or number of the PLC operand (logical marker or input)
that can be used by the PLC program to suppress the lift-off
function during an NC stop.
Default: No value, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 6.17 The control loop 1413


LIFTOFF in case of
power failure

Note

This function is only available when using the CC 61xx, UEC 11x or CC 424
controller unit!

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 off the contour by the distance given in MP_distance with the help
of the remaining energy of the DC-link.
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 monito-
ring is/are 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.

1414 HEIDENHAIN Technical Manual TNC 640


6.17.30 Torque Ripple Compensation (TRC)

General
information

Note

This function is only available when using the CC 61xx, UEC 11x or CC 424
controller unit!

Settings in the configuration editor MP number


Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compSwitchOff 401414
CfgServoMotor
motTorqueRipple
401331

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

September 2015 6.17 The control loop 1415


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 (from 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 confi-
gured 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 cha-
racters)
• .TRC: File extension for "Torque Ripple Compensation"
An entry in MP_motTorqueRipple 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_motTorqueRipple 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 for the 1st axis X axis
 motorname
Name of the motor from the motor table
 ttt
File extension
Example:
MP_motTorqueRipple: 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

1416 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_motTorqueRipple
Name of the file for TRC (Torque Ripple Compensation"
(Cf. iTNC 530: MP2260.x)
Available from NCK software version: 597110-10.
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
(Cf. 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
Bit 3..31: Reserved
Default: %00000000000000000000000000000000
Access: LEVEL3
Reaction: RUN

September 2015 6.17 The control loop 1417


6.17.31 Torsion compensation

Note

This function is only available when using the CC 61xx, UEC 11x or CC 424
controller unit!

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

1418 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
(Cf. 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, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 6.17 The control loop 1419


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 by using the Bode diagram of the
position controller in the TNCopt PC tool. As the value for
MP_compActDampFreq, select the frequency at which an excessive
resonance occurs. 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

1420 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.

September 2015 6.17 The control loop 1421


MP_compActDampFreq
Separation frequency for Crossover Position Filter (CPF)
(Cf. 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, parameter optional
Access: LEVEL3
Reaction: RUN

1422 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 1470.
 AFC – controls the feed rate depending on the machining situation, see page
1425.
 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 mechanics.
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
1445.
 AVD – active vibration damping for better surfaces, see page 1473.
 PAC – position-dependent adaptation of control parameters, see page 1451.
 LAC – Load-dependent adaptation of control parameters enhances accuracy
regardless of load and aging, see page 1452.
 MAC – motion-dependent adaptation of control parameters, see page 1468.
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.

September 2015 6.17 The control loop 1423


Indexed parameter
sets for AVD, CTC,
PAC, LAC Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgControllerComp
compFileNameIndex 401419

If you want to use MP subfiles or parameter set switchover, you can use the
optional MP_compFileNameIndex parameter to specify up to 10 different
compensation files for AVD, CTC, PAC, and LAC with each parameter set.
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 soft-
ware without indexing function, the file for index 0 e.g. is named
AVD_xx.cmp. If no matching *.cmp file is found for an index, the default file
is used. Example: AVD_xx.cmp for AVD.
 xx = axis index from CfgAxes/axisList
 If MP_compFileNameIndex is not part of the machine configuration, the
controller will also use the axis index from CfgAxes/axisList

MP_compFileNameIndex
Index of the file from MP_enhancedComp for AVD, CTC, LAC,
PAC
(Cf. iTNC 530: MP2720.x)
Available from NCK software version: 597110-08.
Format: Menu choice
Options: File names; example for AVD:
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, parameter optional
Access: LEVEL3
Reaction: RUN

1424 HEIDENHAIN Technical Manual TNC 640


6.17.34 AFC – Adaptive Feed Control (option 45)
With adaptive feed control (AFC, software option 45), the contouring feed rate
is controlled 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 from the setting of the override potentiometer. If AFC
is active, then this factor is no longer derived from the potentiometer, but
rather from the spindle power and other process data. This data is then used
to calculate the contouring feed rate. 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:
 Optimization of machining time:
By controlling the feed rate, the attempt is made to maintain the maximum
spindle power learned 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.
 Avoiding damage to the mechanics of the machine
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.

September 2015 6.17 The control loop 1425


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.

1426 HEIDENHAIN Technical Manual TNC 640


General A learning phase must be completed before AFC can be activated. This
information about learning phase serves to ascertain the corresponding reference power of the
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 the 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 datum (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 cut 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, enter the identifier of the control strategy from the global control
parameter table AFC.TAB in this column. This identifier selects the control
parameter set from the table AFC.TAB.
The data ascertained during each learning section of the reference machining,
especially the maximum spindle power, 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.

September 2015 6.17 The control loop 1427


During the teach-in cut, you can change the machining feed rate with the feed-
rate override potentiometer as desired to 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. For example,
for an NC program with the name MACHINING.H, a file with the name
MACHINING.H.AFC.DEP will be created. This file, and the global parameter table
\table\AFC.TAB as well, are set up as freely definable tables, and 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 excee-
ded by 2%.
 Saving of the spindle power maximum value of a learning section as refe-
rence 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<:hh>function macro. If you use the M-function macros for M3 and
M4, then the FN17 block must follow the call of the M-function macro.
This way you end the cut for AFC before machining actually takes pla-
ce.

1428 HEIDENHAIN Technical Manual TNC 640


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 learning time in seconds after which the teach-in cuts are
ended automatically. The function behaves like the pressing of the EXIT
LEARNING soft key after the appropriate time. This function is deactivated again
by programming <value> = 0.

General
information about
controlling Settings in the configuration editor MP number
System
CfgAfc
plcControl 120002

The maximum spindle power was determined for each learning and machining
step. By changing the feed-rate factor within programmable limits (e.g. 70%
to 130%), the software continuously attempts to match the momentary
spindle power to the reference value during machining.
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.

September 2015 6.17 The control loop 1429


Tasks of AFC in each machining section:
 Detection of entry into the material by the cutter when the idle load is excee-
ded by 2 %. Regulate to entry speed until a path corresponding to the cutter
radius has been cleared, 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 cor-
responding to the cutter radius has been traversed.
 After detection of a traverse without cutting action, regulate to the program-
med idle feed rate.
 AFC is not in effect when machining at rapid traverse, since FMAX, and pos-
sibly 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 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. pecking).
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 leaving the
workpiece is considered.
This functionality must be activated via the MP_plcControl machine
parameter (CfgAfc). An entry in PP_ChnAfcPlcControl is mandatory.
In addition, you can preset the reference power in [%] of the nominal spindle
power specifically for each tool in the AFC-LOAD column of the TOOL.T tool
table. After insertion of the tool, AFC will then use this value for all controlled
cuts with this tool.
If a value in AFC-LOAD exists in the TOOL.T tool table, it will always be used for
a controlled cut with this tool. If an additional settings file with controller
parameters named <NAME>.H.AFC.DEP exists for an NC program, the value
from AFC-LOAD will nevertheless be used for that tool and the value in
<NAME>.H.AFC.DEP will be overwritten by the value from AFC-LOAD. This way, it
is easy to make tool-specific changes to the AFC controller parameters in the
settings file, e.g. to reduce the reference power for a particular tool for which
no teach-in cut has been performed.

MP_plcControl
Activate/deactivate the PLC word marker as an AFC input
quantity
Available from NCK software version: 597110-06.
Format: Menu choice
Options: off
AFC control input variable from controller
(spindle power in percent)
on
AFC control input variable from PLC
Default: No value, parameter optional
Access: LEVEL3
Reaction: NOTHING

1430 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.17 The control loop 1431


Additional FN Further FN 17 functions are available for software option 45 "AFC - Adaptive
functions- Feed Control":
 Definition of reference power. The learning phase can therefore 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 monitoring limit, 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%. 60% of the rated
spindle power 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%. 70% of the rated
spindle power is monitored:
FN 17:SYSWRITE ID 622 NR0 IDX 5.0 = 20

The PLC can read the double word NP_ChnAfcError which indicates why
an 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 (FN17 function ID 622 IDX 6.0)
• NP_ChnAfcError = 4:
NC stop because the spindle load was exceeded (FN17 function ID 622
IDX 5.0)

1432 HEIDENHAIN Technical Manual TNC 640


 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 monito-
ring limit, an NC stop is triggered.
A filter constant must be specified in NR<> in order to avoid an NC stop when
the tool leaves the material. Only abrupt changes in spindle power 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 application. Example:
Filter constant set to 15 ms, tolerance limit for cutter breakage set to 10%
of the nominal spindle power:
FN 17:SYSWRITE ID 622 NR15 IDX 6.0 = 10

The PLC can read the double word NP_ChnAfcError which indicates why
an 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 (FN17 function ID 622 IDX 6.0)
• NP_ChnAfcError = 4:
NC stop because the spindle load was exceeded (FN17 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.

September 2015 6.17 The control loop 1433


The three files of adaptive feed control:
Global control parameter file: AFC.TAB
In the AFC.TAB table which must be saved in the TNC:\table\ directory, you
enter the basic control settings with which the TNC is 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)

Adaptiv Name of the control strategy. You must enter this name in the
e Feed AFC column of the tool table. It specifies the assignment of
Control control parameters to the tool.
(AFC)

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 moves into or out of 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 %

1434 HEIDENHAIN Technical Manual TNC 640


Column Function

SENS Sensitivity (aggressiveness) of feedback control. 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 changes to the values, 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 Adaptive FMIN FMAX FIDL FENT OVLD POUT SENS PLC


Feed Con-
trol
(AFC)
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.

September 2015 6.17 The control loop 1435


Settings file with controller 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 via 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 made (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 recor-
ded for this machining step. The TNC overwrites any existing
values in this line.
 C: (= Controlling) The teach-in cut was performed suc-
cessfully. In the next program run, AFC will control the feed
rate.

Adaptiv Name of the control strategy used. If the control strategy given
e Feed in the tool table is not in AFC.TAB, then this column contains
Control the entry default. Default settings are then used for adaptive
(AFC) 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 Adaptive
Feed Control
(AFC)
0 2 0 60 140 150 70 - 5 64 100 C 0 Standard

Proceed as follows to select and, if required, edit 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.

1436 HEIDENHAIN Technical Manual TNC 640


The DELETE LINE soft key is also available in the Programming and Editing
mode of operation. However, only use this function if you specifically want to
delete an incorrectly created line from the <NAME>.H.AFC.DEP table for control
settings.
This may be reasonable when lines were created in the table, which would not
have been created during normal program run. Such lines might, for example,
be produced when 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, then perform the learning
phase anew for the complete NC program.

Protocol file with the actual control data: <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 made (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

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.

September 2015 6.17 The control loop 1437


Column Function

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.

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

1438 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. The NC macro is performed
no later than one minute after the overload has been detected. 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 the current tool via TL=1
2 FN 17: SYSWRITE ID50 NR7 IDX current tool number. Current tool index
= 1 ;Change to 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 strate-
gies.
 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 suitable control strategy 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 datum.
 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.

September 2015 6.17 The control loop 1439


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 the <NC_name>.H.AFC.DEP file.

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 occur separately for each cut in
the NC program.

Note

You cannot use arbitrary 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.

1440 HEIDENHAIN Technical Manual TNC 640


MP_enable
Activate/deactivate AFC
(Cf. iTNC 530: MP7246, bit 3)
Available from NCK software version: 597110-06.
Format: Menu choice
Options: off
AFC is deactivated
on
AFC is activated
Default: off
Access: LEVEL3
Reaction: NOTHING

September 2015 6.17 The control loop 1441


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> table of control settings.
 Start the NC program.
 The learning procedure is performed automatically for each individual machi-
ning 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.
During the teach-in cut, you can change the machining feed rate with the
feed-rate override potentiometer as desired to influence the ascertained
reference load.
You can repeat a teach-in cut as often as desired. Manually change the sta-
tus from ST back to L. It may be necessary to repeat the teach-in cut if the
programmed feed rate is far too fast, 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 until this moment, 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 as a
table 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 (con-
trolling) after a successful teach-in cut.
 The data determined in the learning phase is stored in the
<NC_name>.H.AFC2.DEP file (EVALUATION TABLE soft key).

1442 HEIDENHAIN Technical Manual TNC 640


Once the NC program has been run, the learning procedure for adaptive feed
control is completed. The status in the <NC_name>.H.AFC.DEP file (SETTINGS
TABLE soft key) must have switched from L (learning) to C (controlling) for each
cut. This way a valid settings file has been created for adaptive feed control.
As long as the status is not set to L (learning) and adaptive feed control has
been deactivated with the AFC OFF soft key, the NC program is run with AFC.
 When you restart the NC program, the feed-rate override is changed by the
adaptive feed control. The control tries to maintain the spindle power as con-
stantly as possible at the reference value PREF of the spindle power.
If the AFC is active, the spindle potentiometer is fixedly set to a factor of 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 machi-
ning 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 momentary setting of the soft key is stored.
The setting of the AFC OFF/ON soft key is also reflected in the
NN_ChnAfcSoftkey PLC double word.
 NN_ChnAfcSoftkey = 0: Soft key is set to OFF
 NN_ChnAfcSoftkey = 1: Soft key is set to ON

Note

If adaptive feed control is active, the TNC takes over 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.
In the additional status display, the TNC displays various information when
the adaptive feed control is active . Please refer to the User's Manual of
your control.

September 2015 6.17 The control loop 1443


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. During closed-loop mode
the TNC 640 adjusts the feed rate so that the control operates at its refe-
rence load. Closed-loop mode begins as soon as the reference load was
determined in the learning phase, or earlier once one of the conditions TIME,
DIST or LOAD is fulfilled. With TIME you can specify the maximum duration of
the learning phase in seconds. DIST is the maximum cutting distance during
the learning phase, and LOAD 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.
Note

For further information about controlling AFC using the NC program see the
User's Manual of the TNC 640.

1444 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 axis to be accelerated
k: Index of the axis in relation to which there is a position dependency

September 2015 6.17 The control loop 1445


The figure below shows the relationships for a specific acceleration of the axis
<:i>j<:/i>. Axis <:i>i<:/i> is to be compensated, where the compensation
value depends on the position of the axis <:i>k<:/i>:

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.

1446 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. From 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 of an axis with a very high feed rate for high acceleration
Example for the 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 com-
pensated (in this case this is the exciting axis)
• Signal 2: Position value of the position encoder of the axis to be com-
pensated
• Deviation Ds = signal 1 – signal 2

September 2015 6.17 The control loop 1447


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 (tra-
verse direction): W s actl
 Start the measurement program and record the signals
 Determine the cross talk between the axes:
Example for the 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 cross talk determination, 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

1448 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 and higher.

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

September 2015 6.17 The control loop 1449


MP_enhancedComp
Torsion compensation between position encoder and speed
encoder
(Cf. 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

1450 HEIDENHAIN Technical Manual TNC 640


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 and significantly affect the
control's stability 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). From 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.

September 2015 6.17 The control loop 1451


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 an 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 1456.

1452 HEIDENHAIN Technical Manual TNC 640


Behavior upon From TNCopt 7.5, you can specify whether parameter adaptation should begin
machine start-up right after start-up or only after the first weighing run.
IF LAC has been parameterized in such a way that it is active right after start-
up, the mass moment of inertia is determined from the acceleration
feedforward control value of the active parameter set. This value will then be
used as the initial value for the adaptation of parameters and feedforward
control values.
If you prefer to keep the safe default parameter set after start-up without
adapting the values, you can preset this in TNCopt as well. In this case, the
adaptation will become active only after the mass moment of inertia has
been determined for the first time in a weighing run.

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 speed (MP_compFrictionNS):
If friction changes at high rotational speeds, this feedforward control can be
adapted.
 Acceleration feedforward control (MP_compAcc):
If the mass moment of inertia of a table changes due to loading, the feed-
forward control is adapted accordingly.

September 2015 6.17 The control loop 1453


 The following controller parameters can be adapted based on four interpola-
tion 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 bet-
ween 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
PLC:\ccfiles directory. 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.
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.

1454 HEIDENHAIN Technical Manual TNC 640


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 accelera-
tion 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.

Adaptation during In some special machining processes, machining forces might interfere while
machining ascertaining the mass moment of inertia. If the machining forces and
acceleration forces are constantly directed in the same direction, the
identification algorithm is no longer able to distinguish between the
acceleration component of the motor force and the machining force. This
means that the determined mass moment of inertia value is erroneous.
This can be happen particularly with machines with linear axes on the
workpiece side during circular roughing operations.
If controller parameters are adapted to the load, a wrong mass moment of
inertia value leads to the calculation of controller parameters that are
inappropriate for the load situation. This, in turn, has a negative influence on
the control quality and might result in instabilities.
To prevent this from happening, you can disable both the adaptation of
controller parameters and of feedforward control values during the machining
process. This can be configured in the TNCopt software 7.5 or later.
In TNCopt 7.5 and later, the adaptation of controller parameters during
machining will be disabled and the adaptation of feedforward control values
during machining will remain enabled by default when you start LAC.

September 2015 6.17 The control loop 1455


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.
 When you start the control or switch to a different MP subfile (e.g.
loading of partial configurations via Cycle 332), LAC is always re-initialized
using the mass moment of inertia value from the currently effective
acceleration feedforward control (same behavior as during a machine
start-up).

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 continually 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.

1456 HEIDENHAIN Technical Manual TNC 640


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 to 9)
 ID71 NR0 IDX1
Path for the weighing run in mm or degrees, see page 1460
Cycle 239 will call the NC macro again and again until the macro finds no
further axis for which a weighing run command exists.
Use transfer parameter Q570 = 1 to perform a weighing run for all axes
transferred in the cycle. Transfer parameter Q570 = 0 disables LAC for the
axes transferred in the cycle. This means that the last selected parameter set
becomes active again.
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.

September 2015 6.17 The control loop 1457


Overview of the procedure:

Start of Cycle 239, initialization of the interface parameters:


FN17: SYSWRITE ID71 NR0 IDX0 = 0; Axis index
FN17: SYSWRITE ID71 NR0 IDX1 = 0; Path in mm or degrees

OEM_LAC_BALANCING NC macro
Evaluation of the interface parameters:
FN18: SYSREAD Q... = ID71 NR0 IDX0; Index of the axis last weighed,
if Q.. = 0, this is the 1st call of this 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

1458 HEIDENHAIN Technical Manual TNC 640


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 used last
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" ; Has no axis been 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.

September 2015 6.17 The control loop 1459


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) Ascertained 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 path
FN 17: SYSWRITE ID 71 NR0 IDX1 =+QL1

1460 HEIDENHAIN Technical Manual TNC 640


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
arrow markings in 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.

September 2015 6.17 The control loop 1461


 Repeat this procedure for at least two different loads (minimum or maxi-
mum load).
 Enter the maximum of the traverse paths thus determined into the weighing
run NC macro for this axis. For example, see page 1459.
 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) cyclically to the
PLC memory via configured channels.
Constraints:
 The module cannot 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.
 Between the call of the module and copying the first CC data object to the
PLC memory, at least one PLC clock passes, possible even more. HEIDEN-
HAIN recommends to populate the PLC data object with an invalid value and
then wait until this value is overwritten.
 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.
 Calling this function in a system with simulated drives will cause a module
error.

1462 HEIDENHAIN Technical Manual TNC 640


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]
8: Motor voltage in [V]
9: d component of voltage in [V]
10: q component of voltage in [V]
11..15: Reserved
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: Internal error, possible causes:
- NC/CC does not support the desired function
- Drives are being simulated
3: Invalid value in the <Mode> parameter
4: Invalid value in the <Axis/spindle index> parameter
- Axis/spindle index not defined
- No digital drive control
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

Specific feedback from the CC:


100: Programmed CC data is not available for programmed
axis

September 2015 6.17 The control loop 1463


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 the 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
19 No digital drive control
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 sup-
ported by this NC software; drives are being
simulated
61 Internal error

1464 HEIDENHAIN Technical Manual TNC 640


Module 9047 Reset or initialize controller algorithms
Use module 9047 to reset controller algorithms or reinitialize them.
Constraints:
 The module must not be called in the cyclic PLC program part.
 On a system with simulated drives, the module will not execute any
functions, however, it will not report any corresponding errors.
Call:
PS B/W/D/K <Mode>
0: Commands to the CC (reset/reinitialize)
1: Commands for devices connected to the CC
PS B/W/D/K <Axis/spindle index>
–1: All axes
n: Index of the axis / spindle from CfgAxes/axisList
PS B/W/D/K <CC command>
Mode 0:
0: Reset Load Adaptive Control (SW option 143)
1: Deactivate all adaptive controller parameters
2: Activate all adaptive controller parameters
3: Deactivate all adaptive feed forward controls
4: Activate all adaptive feed forward controls
5: Switchover to a very fast adaptation algorithm for
performing a weighing run. In this case, the parameters /
feedforward controls are not adapted.
6: Switchover to the normal adaptation algorithm during
machining. The parameters / feedforward controls are
adapted, unless the adaptation is disabled in this module.
Mode 1:
0: Switch inverter to full operation
1: Switch inverter to stand-by operation
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/spindle index> parameter
- Axis/spindle index not defined
- No digital drive control
5: Invalid value in the <CC command> parameter

Specific feedback from the CC:


100: Programmed CC command cannot be performed for
axis/axes

September 2015 6.17 The control loop 1465


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 the <Axis/spindle index> para-
meter
19 No digital drive control
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

1466 HEIDENHAIN Technical Manual TNC 640


Module 9346 Query the CC data of an axis
Module 9346 enables you to perform a one-time query of the CC data. In
contrast to Module 9046, there is no cyclic data exchange.
Constraints:
 The module must not be called in the cyclic PLC program part.
 Calling this function in a system with simulated drives will cause a module
error.
 If the LAC function is active, the mass and mass moment of inertia will be
determined by an adaptive method. Otherwise the mass and mass moment
of inertia are determined using machine parameters (transmission, accele-
ration feedforward control). If the value in the acceleration feedforward con-
trol is not correct, the transmitted mass or mass moment of inertia will also
be incorrect.
Call:
PS B/W/D/K <Mode>
0: Query the CC data of an axis
PS B/W/D/K <Axis index>
n: Index of the axis from CfgAxes/axisList
PS B/W/D/K <Code for CC data>
Mode 0:
0: Query the mass in 0.001 kg
1: Query the mass moment of inertia in [kg*m2 * 1.0e–6]
CM 9346
PL B/W/D <read CC data>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Mode parameter> and/or
ErrorCode <Code for CC data>
2 Invalid value for <Axis index> parameter
19 No digital drive control
20 Call not in a submit/spawn job
45 Internal error
51 The module is not supported by the NC or CC
software or the programmed CC data object is
not available for this axis on the CC; drives are
being simulated
61 Internal error

September 2015 6.17 The control loop 1467


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, nomi-
nal 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 tra-
verse (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 accelera-
tions.
 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 para-
meters are interpolated linearly between the interpolation points.
 Following error, jerk, acceleration and velocity are available as input quanti-
ties, 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 accelera-
tions.
This function is described in detail in the online help of TNCopt 7.0. Available
from beginning of 2013.

1468 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
torque can change at the same speed as the 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

September 2015 6.17 The control loop 1469


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 machining. 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 be
activation 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 a Y in the ACC
column of the tool table for all tools 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 active at the same time. If AVD is active and an ACC tool is loaded, then
AVD is automatically deactivated by the 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 tendency for chatter.
The TNC 640 displays this with an ACC symbol in the status display.

1470 HEIDENHAIN Technical Manual TNC 640


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.
You can use the machine parameter MP_compAccMode to influence the
weighting of the damping signal between the X, Y and Z axes. This MP allows
you to select between three different weightings of the damping signal to be
applied.
Since the tool also influences the chatter properties of the machining process,
a tool-specific configuration can be used. For this purpose, the TNCopt PC tool
version 7.0 or higher allows you to create tool-specific ACC parameter files for
various tools and transfer these to the control. Alternatively you can also
create a machine-specific file. 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 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.

September 2015 6.17 The control loop 1471


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
Specify ACC damping mode
(cf. 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
two
axes (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

1472 HEIDENHAIN Technical Manual TNC 640


6.17.40 AVD – Active Vibration Damping (option 146)

Advantages of AVD Inclined or curved surfaces often have finish problems in the form of visible
shadows or fluctuations in contrast. Periodic shading is usually caused by low-
frequency vibration up to 100 Hz.
Such surface problems can result from installation oscillations or low-
frequency oscillations in the drive train.

Software option 146 Active Vibration Damping (AVD) enables you to


effectively reduce machine oscillations.
Benefits from using AVD:
 Fast, vibration-free milling, and therefore:
 Reduced program run times
 Improved quality of surfaces

September 2015 6.17 The control loop 1473


Activating AVD  Enable software option 146
 In MP_enhancedComp ensure that bit #5 is set
 A maximum of one AVD block can be configured for each axis.
 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 active at the same time. 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 folder (e.g. AVD_00.cmp for axis 0 etc.).
TNCopt

Note

Use the TNCopt PC tool to perform all required measurements and confi-
gure 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 File-
base on the Internet and supplied as an online help with the TNCopt soft-
ware.

1474 HEIDENHAIN Technical Manual TNC 640


6.17.41 KinematicsComp (software option 52) –introduction

General Increasingly stringent requirements on workpiece tolerances constantly


information increase demands placed on 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 1148. 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:

September 2015 6.17 The control loop 1475


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:

1476 HEIDENHAIN Technical Manual TNC 640


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 sui-
table 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. HEID-
EINHAIN 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): Direction of the error
 3rd character (e.g. X): Axis under consideration

September 2015 6.17 The control loop 1477


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): Direction of the error
 3rd character (0, zero): Identifier of the position error
 4th character (e.g. C): Axis under consideration

Note

In ISO 230-1 (versions since 2012), 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).

1478 HEIDENHAIN Technical Manual TNC 640


Position errors of
linear axes

Translational deviations:

Name Error
EX0Z No effect
EY0Z No effect
EZ0Z Offset

Rotational deviations:

Name 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.

September 2015 6.17 The control loop 1479


Angular errors Example:
between the linear
 Principal axis X
axes
 1st minor axis Z
 2nd minor axis Y

EA0Y

EB0Z
EC0Y

1480 HEIDENHAIN Technical Manual TNC 640


Component errors Example: Horizontal motion axis X
of linear axes
Translational deviations:

Name Error
EXX Positioning error
EYX Straightness error in Y direction
EZX Straightness error in Z direction

Rotational deviations:

Name 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.

September 2015 6.17 The control loop 1481


Errors of rotary Example: Vertical motion axis C
axes
Position errors – Static errors (home position) of rotary axes
Translational deviations:

Name Error
EX0C Position error
EY0C Position error
EZ0C No effect

Rotational deviations:

Name Error
EA0C Angular error
EB0C Angular error
EC0C Angular error (offset)

EA0C
EB0C

EC0C

X
EX0C

EY0C

1482 HEIDENHAIN Technical Manual TNC 640


Component errors Translational deviations:
of rotary axes
Name Error
EXC Radial error in X direction
EYC Radial error in Y direction
EZC Axial error

Rotational deviations:

Name 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.

September 2015 6.17 The control loop 1483


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 subdivision is not obligatory. The same effect can be
achieved by grouping position errors of an axis with its motion error.

1484 HEIDENHAIN Technical Manual TNC 640


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

You can describe the errors of a machine using machine parameters in the
control. This is done in the same way in which you describe the kinematics
model itself (nominal kinematics), In the kinematics model, the manufacturer
describes the machine’s degrees of freedom and the positions of the rotary
axes, see page 1164. 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.

September 2015 6.17 The control loop 1485


The entries under kinCompErr are only used for calculating the compensation
values.

Note

 The following functions only use the nominal kinematics, without


considering the compensation values under kinCompErr:
• Collision monitoring (software option 40, DCM)
• Limit-switch monitoring
• Inverse kinematic (calculation of rotary axis positions from 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 on the position
of the TCP, and the momentary tool length and position of the rotary axes
is always calculated with it. The angle error of the tool is not
compensated because this might cause undesired movements.

Note

If you are migrating from the iTNC 530, please note:


On the TNC 640, position and component errors re not described in sepa-
rate 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 formu-
las related to the errors.

Use CfgKinSimpleAxis/kinCompErr to configure position and component


errors of an axis and their effects.
The effects can be configured in MP_errOnToolSide and MP_resetLocErr:
 Use MP_errOnToolSide to define on which side of the axis the error com-
pensation values should be applied
 Use MP_resetLocErr to specify whether the compensation values for posi-
tion errors on the other side of the axis should be reset by applying the oppo-
site algebraic sign.

1486 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.17 The control loop 1487


Note

Whether the error is inserted before or after the axis depends on the mea-
surement 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). Kinema-
ticsComp 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 glo-
bally affect the positions of all subsequent axes.

Configuration of position errors:


MP_locErrX, MP_locErrY, MP_locErrZ, MP_locErrA, MP_locErrB and
MP_locErrC can be used to record position errors. For instance, you can enter
the value of a position error of the axis in X direction in MP_locErrX (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:
MP_compErrX, MP_compErrY, MP_compErrZ, MP_compErrA,
MP_compErrB and MP_compErrC can be used to record component errors.
For instance, you can enter the formula defining the component error of the
axis in X direction in MP_compErrX (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.

1488 HEIDENHAIN Technical Manual TNC 640


Entering a formula When creating formulas, mathematical functions (See page 505) and variables
are available:
Available variables:

Model Prefix Designator


Position values of an AXS_ Key of the physical axis
axis (RFNOML)
Value of a PLC variable PLC_ Name of the globally defined PLC
variable
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 values 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. With
COPY SAMPLE FILES, you can copy various sample files to PLC:\proto.

September 2015 6.17 The control loop 1489


kco tables contain up to 3 AXIS columns (AXIS0 to AXIS2), up to 3 PLC
columns (PLC0 to PLC2) and up to 9 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:

1490 HEIDENHAIN Technical Manual TNC 640


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, enter the names of the VALUE columns that can then be
referenced in 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 neigh-
boring 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.

September 2015 6.17 The control loop 1491


Activating / Using the FN function ID 290 NR7, you can activate / deactivate the
deactivating compensation features of the KinematicsComp software option, e.g. in an NC
KinematicsComp macro, see page 2557. KinematicsComp can then be deactivated from within
the NC program using FN17: SYSWRITE ID290 NR7 = 0 . FN17: SYSWRITE
ID290 NR7 = 1 reactivates KinematicsComp. With FN18: SYSREAD Qxxx =
ID290 NR7, you can read the current status. 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 previous 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

Note that this FN function is also implemented with a block scan if you do
not explicitly prevent this.

In addition, when you enter the code number 211258, additional soft keys are
displayed in manual mode that can be used to deactivate and then reactivate
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 position error values of an axis and the effects (MP_errOnToolSide and
position errors in MP_resetLocErr) can be read from the NC program and can be changed. For
the NC program this purpose, the commands READ/WRITE KINEMATICS 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

1492 HEIDENHAIN Technical Manual TNC 640


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).

September 2015 6.17 The control loop 1493


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 swit-
ched 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: Menu choice
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

1494 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.18 Monitoring functions 1495


6.18.2 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.

Attention

Safe machine operation is not possible if the monitoring functions are swit-
ched off. Uncontrolled axis movements are not detected.

Switching off The machine parameter MP_I32stopsMonitoring is not evaluated. The


monitoring default value MP_I32stopsMonitoring = off is active. The former 132 input
functions globally no longer has a special meaning in current control systems and is
fundamentally not evaluated. The input is reserved – do not use.

MP_I32stopsMonitoring
Behavior of input I32 (drive enabling)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: on
No effect, do not use.
off
Input I32 has no effect on the monitoring functions.
Default: off
Access: LEVEL3
Reaction: RESET

1496 HEIDENHAIN Technical Manual TNC 640


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.

Monitoring functions PP_AxDeactivate


for Monitoring =

Individual All drive


drive motors
motor

Inactive Inactive 0

Active Inactive 1

September 2015 6.18 Monitoring functions 1497


6.18.3 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
refAuxFunctions
endatDiffFatal 400415

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 for display only (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.

1498 HEIDENHAIN Technical Manual TNC 640


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 at a constant feed rate,


whereas MP_servoLagMax1 and MP_servoLagMax2 apply to changes in
the feed rate.

MP_servoLagMin1
Minimum for following-error monitoring (clearable)
(cf. iTNC 530: MP1410)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
Default: 0.5 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_servoLagMax1
Maximum for following-error monitoring (clearable)
(cf. iTNC 530: MP1420)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
Default: 0.5 [mm] or [°]
Access: LEVEL3
Reaction: RUN

September 2015 6.18 Monitoring functions 1499


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: 2.0 [mm] or [°]
Access: LEVEL3
Reaction: RUN

MP_servoLagMax2
Maximum for following-error monitoring (emergency stop)
(cf. iTNC 530: MP1420)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 100 [mm] or [°] with max. 9 decimal places
Default: 2.0 [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: Menu choice
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.

1500 HEIDENHAIN Technical Manual TNC 640


Difference between When the TNC 640 is switched off, the actual position of the axes is saved
position at switch- with an absolute encoder in SRAM. During switch-on it is compared with 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 appears with both positions. This may for example be the case
if an axis was moved while the control was switched off. The new position
must be confirmed with a soft key. An error message appears if it is not
confirmed.
If the motor is located at the correct position, you can confirm the message.
If the machine parameter MP_endatDiffFatal = TRUE (CfgReferencing/
refAuxFunctions), the newly read position cannot be confirmed in the dialog.
So when you confirm the dialog, a reset error is returned in every case. Please
note that the machine operator cannot confirm the newly read position with
MP_endatDiffFatal = TRUE. Usually, support from Service will be required in
order to solve this problem.

Note

The cause for one of the above listed messages can also be a defect in the
encoder or control.

MP_endatDiff
Permitted difference between positions at switch-on and
switch-off 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

MP_endatDiffFatal
Disable position capturing for axes with EnDat encoder
Available from NCK software version: 597110-10.
Format: Menu choice
Options: TRUE
Position capturing disabled. Reset error when confirming the
“Load the current position?” dialog.
FALSE
Position can be captured and transferred.
Default: FALSE
Access: LEVEL3
Reaction: REF

September 2015 6.18 Monitoring functions 1501


The switch-off position of an axis saved in SRAM can be axis-specifically reset
to the value zero with the parameter CfgAxis/advancedSettings/
clearShutoffPos. The parameter is evaluated during start-up of the TNC 640
and removed from the machine configuration after the evaluation.
See "MP_advancedSettings" on page 1007.

Determining the If speed and position encoders are connected to a machine, then the TNC 640
difference between can ascertain and monitor deviations between the two systems. These
speed encoder and differences can be displayed in the oscilloscope (PosDiff oscilloscope signal).
position encoder
 Specify in MP_maxPosDiff the maximum permissible position difference in
[mm] or [°] between the position and speed encoders.
 Specify in MP_maxSpeedDiff the maximum permissible speed difference
in [mm/min] or [°/min] between the position and speed encoders.
 MP_maxPosDiff and MP_maxSpeedDiff are optional parameters. Deacti-
vate 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

1502 HEIDENHAIN Technical Manual TNC 640


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
deviation between the position encoder and the speed encoder.
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 MP_posDiffCountDir machine
parameter is determined internally from MP_signCorrNominalVal and
MP_signCorrActualVal. For this purpose, MP_posDiffCountDir must be set
to Automatic (default value).

MP_posDiffCountDir
Counting direction of the motor encoder
Available from NCK software version: 597110-03.
Format: Menu choice
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

September 2015 6.18 Monitoring functions 1503


6.18.4 Movement monitoring

Note

MP_movementThreshold is not effective for digitally controlled axes. It is


only evaluated on the TNC 128 and TNC 320 for analog control loops (wit-
hout 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 output 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 move-
ment 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.

1504 HEIDENHAIN Technical Manual TNC 640


MP_movementThreshold
Threshold above which the movement monitoring functions
(cf. 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

September 2015 6.18 Monitoring functions 1505


6.18.5 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 is not 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 is a spindle and the parameter
MP_checkPosStandstill > 0, then the axis must be in a closed loop 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
(cf. 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

1506 HEIDENHAIN Technical Manual TNC 640


6.18.6 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. However, it is not set until the next block (N6) is
machined (on older TNC controls already at the end of N5).
Please take this status into account in your PLC program.

September 2015 6.18 Monitoring functions 1507


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 posi-
tioning 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 (from 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
(cf. 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 up to 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

1508 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.18 Monitoring functions 1509


1510 HEIDENHAIN Technical Manual TNC 640
6.18.7 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 <Identifier>
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/K <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)

September 2015 6.18 Monitoring functions 1511


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, parameter optional
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 "deac-
tivated 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/K <Temperature>
Range: 0 to 255 °C
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Control has no current controller

1512 HEIDENHAIN Technical Manual TNC 640


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 thermos witches must be metallically 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 to be evaluated, this function must be deactivated through
MP_motEncCheckOff – bit 4 = 1 (See "Monitoring functions when using the
CC 61xx and CC 424" on page 1555).
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.

September 2015 6.18 Monitoring functions 1513


Heat sink At X51 to X60 the temperature warning signal is available at pin 10a.
temperature of the
If the permissible temperature of the heat sink on the power module is
power module
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 manu-
facturer of your power supply unit.

The temperature warning signal is not evaluated in the NC.


 Use Module 9160 (recommended), See "Module 9160 Status
interrogation of temperature and I2t monitoring-" on page 1520 or Module
9360 to interrogate the temperature warning, and take appropriate measu-
res.

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

1514 HEIDENHAIN Technical Manual TNC 640


6.18.8 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-module 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.

September 2015 6.18 Monitoring functions 1515


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])

1516 HEIDENHAIN Technical Manual TNC 640


Fundamentals The following graphics illustrate these parameters in relation to the reference
current. 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 current 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.

Irated [%]

100

Threshold from interpolation with CC 61xx


70.7
Direct transition with CC 422 (F-AC)

Rated speed n
F-DC F-AC

September 2015 6.18 Monitoring functions 1517


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

Irated
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
stall current or rated 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 availa-
ble in the motor table or power module table (See "Temperature models" on
page 1522).
 Use Module 9160 (recommended) or Module 9367 to interrogate the I2t
monitoring,See "Module 9160 Status interrogation of temperature and I2t
monitoring-" on page 1520.

1518 HEIDENHAIN Technical Manual TNC 640


Manually specifying 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 with the aid of 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

September 2015 6.18 Monitoring functions 1519


Machine MP_motFactorI2t
parameters Reference value for I2t monitoring of the motor
(Cf. iTNC 530: MP2302.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 [· Rated or stall current of motor] with up to 9 decimal
places
0: I2t monitoring of motor switched off
(I2t monitoring of power module remains active)
1: Rated current of motor is used as reference value
Default: 1
Access: LEVEL3
Reaction: RUN

MP_ampFactorI2t
Reference value for I2t monitoring of the power module
(Cf. iTNC 530: MP2304.x)
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 1 000 [• rated current of power module] with up to 9
decimal places
0: I2t monitoring of power module switched off
1: Rated current of power module is reference value
Default: 1, optional parameter
Access: LEVEL3
Reaction: RUN

Interrogation Module 9160 Status interrogation of temperature and I2t monitoring-


through The I2t monitoring reported by the module is given with respect to the first I2t
PLC module 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
"Manually specifying" on page 1519.
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 con-
stant for this is approx. 2.56 seconds.
 The response time for the I²t monitoring at 2 * Inoml without pre-load 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.

1520 HEIDENHAIN Technical Manual TNC 640


Call:
CM 9160
PL D <Temperature monitoring>
Bit 15876543210
Axis:Sxxxxx987654321
PL D <I2t monitoring I²t early warning>
Bit 15876543210 15 876543210
AxisSxxxxx987654321 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 "Manually specifying" on page 1519.
Constraints:
 Unconnected axes respond with all error bits as 0.
 The I2t monitor responds if the current value exceeds 110% of the rated cur-
rent.
 The "I2t early warning" message 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 logical axis 0, etc.)
PL D <I2t error, bit-encoded>
(Bit 0 represents logical axis 0, etc.)
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error possible
Error

September 2015 6.18 Monitoring functions 1521


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). Remember that calculation of which temperature model to use
depends exclusively on the availability or nonavailability of the parameters. 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 module. Identifies the point
in the temperature curve at which 63% of the maximum temperature is rea-
ched.
T-AC = 0 – Default value: 10 s for axes, 150 s for spindle
T-AC > 0 – Input value in 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 spindle
Tth2 > 0 – Input value in s for motors

1522 HEIDENHAIN Technical Manual TNC 640


Diagram of the 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

September 2015 6.18 Monitoring functions 1523


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 winding/housing transition.
Tth1 = 0 – Default value (0 s) is active
Tth1 > 0 – Input value in s is active
 Rth1 [K/W]
Thermal resistance for the winding/housing transition.
Rth1 = 0 – Default value: 0 K/W
Rth1 > 0 – Input value in K/W is active
 Tth2 [s]:
Thermal time constant for the housing/coolant transition.
Tth2 = 0 – Default value: 10 s for axes, 150 s for spindle
Tth2 > 0 – Input value in s is active
 Rth2 [K/W]:
Thermal resistance for the housing/coolant transition.
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 exces-
sive 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."

1524 HEIDENHAIN Technical Manual TNC 640


Diagram of the 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.

September 2015 6.18 Monitoring functions 1525


6.18.9 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 Rate rated rated

Synchronous motor M –
-----------------------
MRate rated

Instead of the drive torque, the effective component Iq of the current is used,
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 qNenn
Rated

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).

1526 HEIDENHAIN Technical Manual TNC 640


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 "deac-
tivated 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/K <Utilization of 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 parameter <axis>
ErrorCode

September 2015 6.18 Monitoring functions 1527


6.18.10 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 <Identifier, hardware components>
0: HEIDENHAIN inverter (only with digital control)
1: SIK ID
If you are switching from the iTNC 530:
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/K <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

1528 HEIDENHAIN Technical Manual TNC 640


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/K <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)

September 2015 6.18 Monitoring functions 1529


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 swit-
ched on. Signals that are not provided by the power supply unit must be sup-
pressed 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.

1530 HEIDENHAIN Technical Manual TNC 640


MP_powStatusCheckOff
Suppress error messages from the HEIDENHAIN supply units
(Cf. iTNC 530: MP2195)
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 0 – Status signals that are already active during control start-
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 4 – 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 or LIFTOFF function not active
Bit 10 – Spindle power is reduced if maximum power is
exceeded when supplied by the same UV
0: Power reduction is not active
1: Power reduction is active if maximum power is exceeded
Default: All bits = 0, optional parameter
Access: LEVEL3
Reaction: RUN

September 2015 6.18 Monitoring functions 1531


6.18.11 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.

1532 HEIDENHAIN Technical Manual TNC 640


 In MP_vCtrlSwitchOnDelay, you can define a time during which the para-
meter 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 adap-
tation for suppressing the oscillations.

MP_motEncCheckOff
Monitoring function
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 during speed controller switch-off
(Cf. 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
Adapt controller parameters for a locked brake
(Cf. 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

September 2015 6.18 Monitoring functions 1533


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 multiple holding brakes
on one axis, this enables each brake to be checked for functionality separately.
Each individual brake can be configured in the configuration entity CfgBrake
and assigned to an axis via MP_Brakes.
This brake test functions in conjunction with HEIDENHAIN inverter systems if
the inverter brake outputs or any PLC outputs are used. 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 MP_connection machine parameter.
This is relevant for testing the motor brake controls and the motor brakes:
–2: For motor brake control, the brake output (X344) of the inverter is used
(with the entry –2, the control is compatible with the former control)
–1: For brake control, any PLC output is used.
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.

1534 HEIDENHAIN Technical Manual TNC 640


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
applies an 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 configura-
tion.
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 M 0 =0 has been 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)

September 2015 6.18 Monitoring functions 1535


Always keep in mind:
 Torque for motor test≥ 1,3 ⋅ Maximum load torque of the axis
 Stall torque of the ≥ 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 specified by the


manufacturer (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.

1536 HEIDENHAIN Technical Manual TNC 640


In general, the workflow of automatic tests with use of multiple brakes for
each axis is 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 entire test for the drive. With this simultaneously set error message the
operator is informed which of the brakes on the axis caused the error.
 The PLC program receives this information to allow a query for this informa-
tion 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 successive 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 MP_timeToBrakeTest parameter 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 1067
 For the duration of the brake test, the kv factor is reduced automatically
and AVD is disabled in order to avoid low-frequency drive oscillations
during the test.

September 2015 6.18 Monitoring functions 1537


PLC modules As before, PLC Module 9143 starts the test for all brake(s) of a drive. 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 successively. The
result is only established after all brakes on an axis have been tested. If the
test finds a brake to be defective, the test is not aborted, but continued with
the other brakes. 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 successively 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 brake(s).
Bit-coded brake 1 to brake n of the axis correspond to
bit 0...n
0: Request to activate the brake
1: Request to release the brake
NN_SpiBrakeReleaseRequest D
Request to release the spindle brake(s)
Bit-coded brake 1 to brake n of the spindle correspond
to bit 0...n
0: Request to activate the brake
1: Request to release the brake

The information of the two 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 collective status of all brakes is returned. If a brake
did not pass the test, this is reported 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 targeted
testing of only one brake. If the test is started via 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. If the axis has only one brake to be tested, a result will be entered. 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.

1538 HEIDENHAIN Technical Manual TNC 640


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 0V side
is controlled via the A channel of an FS output.
–1: The brake is controlled via any 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 the motor current for motor brake tests
(Cf. 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

MP_testBrakeTolerance
Maximum permissible distance for motor brake tests
(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, parameter optional
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 by the SKERN
Default: 480
Access: LEVEL3
Reaction: RUN

September 2015 6.18 Monitoring functions 1539


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 com-
pleted.
 The PLC module automatically passes the processing time to other spawn
and submit processes.

Note

If the functional safety (FS) features are used, the following additional cons-
traints apply:
A successfully completed test will reset 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 speci-
fied there.
Please refer also to the information in the Technical Manual for Functional
Safety (FS).

Call:
PS K/B/W/D <Axis number>
0 = 1st axis, 2 = 2nd axis, etc.
PS K/B/W/D <Rated current multiplier>
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/K <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)

1540 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 Invalid axis programmed (invalid axis num-
ErrorCode ber, 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)

September 2015 6.18 Monitoring functions 1541


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 called
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 deacti-
vated, 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 also to the information in 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/K <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)

1542 HEIDENHAIN Technical Manual TNC 640


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 inva-
ErrorCode lid, no closed-loop axis, currently open-
loop, slave axis or analog axis) or
an invalid value for the mode, the brakes
mask, the direction or an additional para-
meter has been programmed
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 influ-
ences (e.g. emergency stop)

September 2015 6.18 Monitoring functions 1543


6.18.12 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 latch circuit 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!

1544 HEIDENHAIN Technical Manual TNC 640


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 inten-
ded 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 is switched off (-STO.A.x over PWM cable; responsible
watchdog reacts after the time set in MP_watchdogTime of 1 to 30 s), and
the inverters are disconnected
 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 SH1B signal (inverter enabling)
Available from NCK software version: 597110-03.
Format: Number
Input: 1 to 30 [s]
Default: 3 [s]
Access: LEVEL3
Reaction: RUN

September 2015 6.18 Monitoring functions 1545


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 inten-
ded 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

1546 HEIDENHAIN Technical Manual TNC 640


Axis release 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 277.
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.
But in the MP_driveOffGroupInput machine parameter (100106), you can
now enter 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 using the provided braking ramp (usually at the limit of current).
Via PLC module 9161, you must then 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 module over the PWM interface (-STO.B.x).
The 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 has come to 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 modules via -STO.B.x (signal on the 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
has expired. 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.

September 2015 6.18 Monitoring functions 1547


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)
(Cf. 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

1548 HEIDENHAIN Technical Manual TNC 640


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!

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 Cir-


cuit Diagram.
Ensure that the control-is-ready acknowledgment occurs within 1 second.

September 2015 6.18 Monitoring functions 1549


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 Cir-


cuit 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

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".

1550 HEIDENHAIN Technical Manual TNC 640


Time diagram of essential signals after the start-up of the TNC 640 and during
the emergency-stop test:

Step Function Screen display


1 Start of the self test, immediately after
compiling of the PLC program
2 Sequence of 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 Sequence of 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
outputs and ES.A/ES.B are at "1".

September 2015 6.18 Monitoring functions 1551


The following error messages can occur during the test:
 Timeout during self-test
At least one HSCI device 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 in the self-test sequence
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 requi-
red 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 during self-test
Has the same causes as Error in the self-test sequence. 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.

1552 HEIDENHAIN Technical Manual TNC 640


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. The PLC program must ensure that this requirement is
met. A running NC program may be run to its end even after the 168 hours
have passed if the protective 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 brake test is started with 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 con-
trols
For systems without operating-mode group (PNC 610), the PLC program
must select an NC operating mode. 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.

September 2015 6.18 Monitoring functions 1553


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/K <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 <Mode parameter> or
ErrorCode <Parameter>
28 Test already active
43 This is neither an HSCI system nor a system
with functional safety (FS)
58 Control with operating-mode group
61 Function is not supported by this control

1554 HEIDENHAIN Technical Manual TNC 640


6.18.13 Monitoring functions when 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:
 Bit 4, 5: The KTY temperature sensor of the motors is monitored by the TNC
640 for excessively high or low temperatures. If the KTY is not to be evalua-
ted (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 monito-
ring function can be deactivated. The following error messages can appear:
• Speed encoder: 8860 Input frequency from speed encoder of <axis>
• Position encoder: 8870 Input frequency from position encoder of
<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.

September 2015 6.18 Monitoring functions 1555


MP_motEncCheckOff
Monitoring function
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 4 – Monitoring for excessive motor temperature
0: Monitoring is active
1: Monitoring is inactive
Bit 5 – Monitoring for insufficient motor temperature
0: Monitoring is active
1: Monitoring is inactive
Bit 7 – Monitoring of input frequency of the speed encoder
0: Monitoring is active
1: Monitoring is inactive
Bit 8 – Adjust mechanical offset by gradually increasing the kv
factor
0: Function is active
1: Function is inactive
Default: 0
Access: LEVEL3
Reaction: RUN

1556 HEIDENHAIN Technical Manual TNC 640


6.18.14 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 realization 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. Further details are
available from your HEIDENHAIN contact person.

September 2015 6.18 Monitoring functions 1557


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.

1558 HEIDENHAIN Technical Manual TNC 640


MP_spindleIndices
Key names of all spindles on the machine
Available from NCK software version: 597110-02.
Format: Menu choice
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 (not assigned)
NN_AxSpindle D
Logical spindle number of the spindle. Identical to the
spindle number from MP_spindleIndices. (from API 4)
–1: Spindle is deactivated

September 2015 6.19 Spindles 1559


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.
If you enter a formula instead of a fixed value, it will only be calculated once
when the control starts up or in case you switch over to a different MP sub-
file.
 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 as reference signal. The reference mark of the position encoder will not
be evaluated in this case, see page 1568.
 Evaluate the reference mark with Module 9220 (See "Renewed traversing
of the reference marks" on page 1255).
The individual gear ranges are realized via one spindle parameter set each, See
"Gear shifting" on page 2440.

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 for reference end position
0: Trip dog not triggered
1: Trip dog triggered

1560 HEIDENHAIN Technical Manual TNC 640


Oriented
spindle stop
(spindle point stop) Settings in the configuration editor MP number
Axes
ParameterSets
[Key name of the parameter set]
CfgFeedLimits
M19MaxSpeed 400307
M19MaxMode 400319
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/posEnco-
derType is set to no encoder, an oriented spindle stop is not possible.

September 2015 6.19 Spindles 1561


Oriented An oriented spindle stop (spindle point stop) with rotating spindle and at high
spindle stop with speeds is executed in two steps if you set MP_M19MaxSpeed accordingly:
rotating spindle
 Momentary speed >= 120 % of MP_M19MaxSpeed (phase 1):
The spindle is braked at the limit of current until the speed limit
(MP_M19MaxSpeed) is reached (speed control with Vnom = 0).
 Momentary speed < 120 % of MP_M19MaxSpeed (phase 2):
The position controller is switched on at the rotational speed limit
(MP_M19MaxSpeed). The actual position, actual speed and actual accelera-
tion at the time of the transition of phase 1 to 2 are the initial values for posi-
tioning under position feedback control. This results in a continuous move-
ment, speed and acceleration until the target position is reached. The jerk is
limited during deceleration and positioning, whereby the maximum jerk can
be set.

1562 HEIDENHAIN Technical Manual TNC 640


The oriented spindle stop with rotating spindle and at a speed < 120% of
MP_M19MaxSpeed is executed under position feedback control.

Note

Note that MP_maxAcceleration is not effective if the speed in


MP_M19MaxSpeed is less than the spindle speed with which the braking
process is triggered.
In the above example the spindle with T1 is servo controlled, but
MP_maxAcceleration is not effective across the complete braking
process.

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 lathe spindles, set a minimum value 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 automati-
cally limits the value.

September 2015 6.19 Spindles 1563


MP_M19MaxSpeed
Maximum rotational speed limit for M19
(cf. 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

1564 HEIDENHAIN Technical Manual TNC 640


Use the MP_M19MaxMode parameter to configure the braking behavior with
M19 above MP_M19MaxSpeed:

MP_M19MaxMode
Braking behavior with M19 above MP_M19MaxSpeed
Available from NCK software version: 597110-10.
Format: Menu choice
Options: MaxCurrent
This setting is used to brake the spindle at the limit of current
until the value in MP_M19MaxSpeed is reached.
UsePmax2
This setting is used to brake the spindle at the limit of current,
too, but the maximum power is limited to the value of the
MP_Pmax2 parameter in CfgServoMotor.
UseNormalDec
This setting is used to brake the spindle using the configured
M5 ramp, including the characteristic with a kink until the value
in MP_M19MaxSpeed is reached.
Default: 0
Access: LEVEL3
Reaction: RUN

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: Speed in [1/min]
Default: 8 [1/min]
Access: LEVEL3
Reaction: RUN

Note

Please note that the specification from MP_M19NcSpeed is not effective


with spindle positioning from the PLC program.

September 2015 6.19 Spindles 1565


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 1 000 [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

Oriented A ramp algorithm determines the acceleration with a stationary spindle.


spindle stop with MP_maxAcceleration determines the steepness of the ramp during
stationary 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

Key:
 P0: Initial position
 P1: Target position
 st-max: MP_maxFeed or the rotational speed from 9414
 A: MP_maxAcceleration
 B: MP_maxAcceleration

1566 HEIDENHAIN Technical Manual TNC 640


If the spindle motors (C spindle/C axis) are optimally adjusted for positioning
mode, noise may be caused with spindle orientation and ramps and jerk are
not suitable.
 The parameter MP_m19FilterTime enables you to set the mean-value filter
of the nominal position values for M19.

MP_m19FilterTime
Time of position nominal 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 orientation See "Spindle control by the PLC" on page 1583.


via PLC module

September 2015 6.19 Spindles 1567


Referencing/
stopping the
spindle at the trip Settings in the configuration editor MP number
dog
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)

Referencing the spindle with external reference signal:


Set the value spindleRef in MP_externRefPulse if you want to use an
external reference signal instead of the reference signal of the connected
motor encoder or position encoder (e.g. when gear ranges are used). The
signal is evaluated at X9
(-SP.REF) of the external PL 62xx . Please note that this is a mere hardware
signal. A configuration via IOconfig is neither required nor possible. Only one
spindle in the entire system can be homed (referenced) with an external
reference signal.
For the evaluation, a high-speed PLC input at the PLC system module PL 62xx
or at the UEC 11x can be used. A fast PLC input is not read in PLC cycle time
but in the IPO clock. Per parameter set, only one high-speed input can be
defined. It is parameterized via IOconfig (a total of 5 inputs max can be
configured). Only the first four slots of a PL6xxx can be used for high-speed
PLC inputs. The fifth slot and the successive slots (on PL 6x06, PL 6x08) must
not be defined as high-speed PLC inputs.
If you selected the referencing function via the high-speed PLC inputs, use the
MP_fastInputType parameter to specify how the TNC 640 should handle the
signal from the trip dog for reference end position. Select forReferencing. The
TNC 640 handles the signal of the trip dog for reference end position as
reference pulse of the encoder.
If you use the forReferencing function, you need to additionally set the
MP_refType = None parameter in the CfgReferencing configuration object of
the spindle.

Note

HEIDENHAIN recommends to use the hardware signal at X9. An evaluation


by means of the hardware signal is more precise and a configuration via
IOconfig is not required.

1568 HEIDENHAIN Technical Manual TNC 640


Reference run process:
 With M3 or M4:
The spindle accelerates to the programmed speed and picks up the refe-
rence point during this process.
 With M19:
If the spindle was not referenced before, it rotates in the positive direction
at the speed defined in the MP_refFeedLow parameter (CfgReferencing)
until the reference pulse has been recognized. Then the spindle stops and
orients.
Stopping the spindle with an external reference signal:
A spindle that is not driven using a position controller can also be stopped at a
defined position (trip dog position).
For the evaluation, a high-speed PLC input at the PLC system module PL 62xx
or at the UEC 11x can be used. A fast PLC input is not read in PLC cycle time
but in the IPO clock. Per parameter set, only one high-speed input can be
defined. It is parameterized via IOconfig (a total of 5 inputs max can be
configured). Only the first four slots of a PL6xxx can be used for high-speed
PLC inputs. The fifth slot and the successive slots (on PL 6x06, PL 6x08) must
not be defined as high-speed PLC inputs.
With the MP_fastInputType parameter you specify how the TNC 640 handles
the signal of the trip dog for reference end position. Select forStopping to stop
the spindle at trip dog position with M19 upon receiving this input signal.
During a spindle stop, the PLC transfers the rotational speed for "waiting for
the input signal" (See "Module 9414 Position the spindle" on page 1595) 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.

September 2015 6.19 Spindles 1569


Machine parameters:

MP_fastInputType
Treatment of the fast input for the spindle
Available from NCK software version: 597110-01.
Format: Menu choice
Options: none
The signal from MP_fastInput 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
Note: From NC software version 597110-09, parameterization
should be done using IOconfig., see page 314
Available from NCK software version: 597110-01.
Format: Number
Input: 0 to 32767
Default: 0, optional parameter
Access: LEVEL3
Reaction: RUN

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: Menu choice
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.

1570 HEIDENHAIN Technical Manual TNC 640


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: Menu choice
Options: off
The reference signal of the connected motor encoder or
position encoder is used.
spindleRef
In systems with HSCI, the reference signal at the
-SP.REF+ input at X9 of the external PL is evaluated. In analog
systems (e.g. MC 321), the reference signal at input X30 is
used.
Default: off, optional parameter
Access: LEVEL3
Reaction: RUN

September 2015 6.19 Spindles 1571


6.19.3 Spindle in speed 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


 CfgServoMotor is 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 and 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 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 speed-controlled, 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 monitoring off with
MP_motEncCheckOff – bit 1 = 1.

1572 HEIDENHAIN Technical Manual TNC 640


MP_motEncCheckOff
Monitoring function
Available from NCK software version: 597110-01.
Format: Number
Input: Bit 0 – Monitoring of the reference mark:
0: Monitoring is active
1: Monitoring is inactive
Bit 1 – Monitoring of the direction of rotation:
0: Monitoring is active
1: Monitoring is 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 monito-
ring function for the direction of rotation 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
(Cf. iTNC 530: MP2221)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: on
The reference mark of the speed encoder is monitored.
off
No monitoring
Default: off
Access: LEVEL3
Reaction: RUN

September 2015 6.19 Spindles 1573


Acceleration of the
spindle
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 speed-controlled spindle (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
adapt the acceleration behavior of large, speed-controlled main spindles better
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).

1574 HEIDENHAIN Technical Manual TNC 640


Description of the machine parameters:

Machine parameters 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 Formula input for acceleration. Effective above
MP_limitSpeedAcc. For the syntax for entering
formulas, see page 505. If no formula has been entered,
MP_limiAccSpeedCtrl is effective.
MP_limitDecSpeedCtrl M3/M4/M5 Absolute deceleration during braking. Effective above
MP_limitSpeedDec
MP_limitDecSpeedCtrlF M3/M4/M5 Form input for deceleration during braking. Effective
above MP_limitSpeedDec. See page 505 for the syntax
for entering formulas. If no formula is entered here,
MP_lmitDecSpeedCtrl is effective.

September 2015 6.19 Spindles 1575


The parameters MP_limitSpeedAcc, MP_limitSpeedDec,
MP_limitAccSpeedCtrl(F) and MP_limitDecSpeedCtrl(F) are only effective
for spindles in speed control 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 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

1576 HEIDENHAIN Technical Manual TNC 640


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

Example
configuration
Machine parameters 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)

September 2015 6.19 Spindles 1577


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 a "kink" in the 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 a "kink" in the 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 a "kink" in the 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
Formula input 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) For the syntax for formula input in MP_limitAccSpeedCtrlF see page 505.

1578 HEIDENHAIN Technical Manual TNC 640


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 a "kink" in the 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
Formula input for 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) For the syntax for formula input in MP_limitDecSpeedCtrlF see page 505.

September 2015 6.19 Spindles 1579


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.
For MP_manualFilterOrder for axes, See "Filter before position control loop"
on page 1383.
 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

1580 HEIDENHAIN Technical Manual TNC 640


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)

Switching the The following figure shows the procedure for switching the spindle drive on/
spindle off.
drive on/off

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

September 2015 6.19 Spindles 1581


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.

1582 HEIDENHAIN Technical Manual TNC 640


Spindle control by The PLC controls the spindle by using the following modules:
the PLC
 Module 9412: Stop the spindle, see page 1584
 Module 9413: Rotate the spindle, see page 1585
 Module 9414: Position the spindle (M19), see page 1595
 Module 9416: Select gear range and associated settings for spindle, see
page 2441.
 Module 9417: Set shaft speed for spindle
 Module 9418: Set status for spindle, see page 1083
The status is queried by
 Module 9410: Read spindle status

Note

PP_SpiEnable = 1 must be set for a spindle movement to be executed.

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 1587).
Module 9410 Read spindle status
The module reads the status of the specified spindle.
This module is only supported by the 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 ope-
rate with symbolic memory interface)

September 2015 6.19 Spindles 1583


Module 9412 Stop the spindle
Use Module 9412 to stop the specified spindle (M5 status).
This module is only supported by the 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)

1584 HEIDENHAIN Technical Manual TNC 640


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 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 move-
ment is read from the configuration data, and the shaft speed given is igno-
red. With a digitally controlled spindle, the given shaft speed is interpreted
as the motor shaft speed for the reciprocation movement.
 The module returns error 4 if constant cutting speed is specified but if the
spindle is not assigned to an NC channel and the cutting speed can there-
fore not be calculated.
Call:
PS B/W/D/K <Spindle index>
PS B/W/D/K <Mode>
Bit 0 and bit 1: Direction of rotation
01 = Rotation CW (M3)
10 = Rotation CCW (M4)
Bits 2, 3 and 4: Type of rotation
001 = Constant cutting speed
010 = Constant shaft speed
100 = Constant motor shaft speed for reciprocation
movement
Bit 5 (only in connection with constant shaft speed)
0 = Observe limit for minimum speed from CfgFeedLimits/
minFeed
1 = Ignore limit for minimum speed from CfgFeedLimits/
minFeed
PS B/W/D/K <Spindle speed or cutting speed>
Constant cutting speed in [m/min]
Constant rotational speed in [rpm]
CM 9413
PL B/W/D/K <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 being rotated
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)

September 2015 6.19 Spindles 1585


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 <Rotational speed in 1/1000 rpm>
CM 9417
PL B/W/D/K <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)

1586 HEIDENHAIN Technical Manual TNC 640


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 PLC 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 orienta-
tion 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 <Angle of orientation [1/10000 degrees]>
or additional preset if there is a value from CYCLE DEF 13
PS B/W/D/K <Rotational 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

September 2015 6.19 Spindles 1587


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 incor-
rect, or there has been no speed out-
put
19 Spindle is not a closed-loop spindle
24 Module was called in a submit/spawn
job
27 A spindle orientation is already run-
ning

1588 HEIDENHAIN Technical Manual TNC 640


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 mini-
mum 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

September 2015 6.19 Spindles 1589


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 up to 9 decimal places
Default: 0.01 [s]
Access: LEVEL3
Reaction: RUN

MP_minFeed
Applies only to spindles: minimum spindle speed
(cf. 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

1590 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 6.19 Spindles 1591


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 spindle speed = 500 rpm, MP_vCtrlSpinSpeedTol = 20 %
The monitoring function will respond if the spindle speed falls below 400 rpm.
Monitoring is useful for high-speed 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 excessive spindle speed
(cf. 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 excessive spindle speed
(cf. 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

1592 HEIDENHAIN Technical Manual TNC 640


MP_vCtrlSpinSpeedTol
Permissible spindle speed shortfall
(Cf. 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
(Cf. 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
(cf. 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

September 2015 6.19 Spindles 1593


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 the parameter is set, the TNC 640 increases the spindle speed to above the
nominal spindle speed in the load pauses. The energy stored in the mass
inertia of the spindle is therefore available when the teeth are engaged. This
increases the mean power of the spindle, and the mean speed corresponds to
the nominal speed.
If MP_incrPowForRoughing is set, an overshoot can occur when the nominal
speed is reached. Deactivate MP_incrPowForRoughing if the overshoot has
a negative effect.

MP_incrPowForRoughing
Increased spindle power for roughing
Available from NCK software version: 597110-09.
Format: Menu choice
Options: TRUE
Increased spindle power active for roughing.
FALSE
Function not active.
Default: No value, parameter optional (= FALSE)
Access: LEVEL3
Reaction: RUN

1594 HEIDENHAIN Technical Manual TNC 640


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
moved to the trip dog at the specified rotational speed (See "Referencing/
stopping the spindle at the trip dog" on page 1568).
This module is only supported by the 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>
Bit 0..2: Direction of rotation
000 = shortest direction of rotation, absolute position
entry
001 = direction of rotation CW, absolute position entry
010 = direction of rotation CCW, absolute position entry
100 = relative position entry, direction of rotation from
the algebraic sign of the position entry
Bit 3: Select function
0 = "Position the spindle (M19)" function
1 = "Stop/reference the 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)

September 2015 6.19 Spindles 1595


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

1596 HEIDENHAIN Technical Manual TNC 640


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 sets of your spindle motor with the same name in
the motor table. Identify parameter set 1 by entering 0 in the MODE column,
and parameter set 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 opera-
ting modes 0 or 1 if selected with PLC Module 9163. Then create the para-
meter 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 564

September 2015 6.19 Spindles 1597


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...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

1598 HEIDENHAIN Technical Manual TNC 640


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 opera-
ting 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.
Call:
PS B/W/D/K <Axis>
PS B/W/D/K <Type of circuit>
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 confi-
ErrorCode gured as a spindle was transferred.
2 Incorrect type of connection transferred
3 No parameter set was defined for the com-
bination of switching type and gear range
9 The entered switching type is already
active
21 The transferred axis is currently being con-
trolled by an NC channel
27 The position control loop of the transferred
axis is currently closed
28 A switchover is already active

September 2015 6.19 Spindles 1599


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 nomi-
nal-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 1069.
You configure a unipolar spindle as follows:
 Open the parameter set of the spindle concerned and move the cursor to
the config object CfgAxisAnalog.
 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)
Control of unipolar motors:
From software version 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

1600 HEIDENHAIN Technical Manual TNC 640


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: Menu choice
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

September 2015 6.19 Spindles 1601


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 proce-


dures
(e.g. polygonal turning). You can activate spindle synchronism via Module
9415. For this purpose, it is absolutely necessary to enable the option.

Note

If spindle synchronism is active for a spindle that is not referenced, the error
message "Spindle has not yet been homed" appears.

1602 HEIDENHAIN Technical Manual TNC 640


Separate kv factor Use MP_kvFactorSync to define a separate kv factor for the spindle
for spindle synchronism, which is then effective instead of the value from
synchronism CfgPosControl/kvFactor. 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 control window of MP_syncTolerance 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 up to 9 decimal places
Default: 0.01 [s], optional parameter
Access: LEVEL3
Reaction: RUN

September 2015 6.19 Spindles 1603


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.
The following applies:
Master speed * FM = Slave speed * FS
 FM: Speed factor of master
 FS: Speed factor of slave

1604 HEIDENHAIN Technical Manual TNC 640


The angle offset is set as default.
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 <Angular 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 ope-
rate with symbolic memory interface)

September 2015 6.19 Spindles 1605


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 kinematics 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 1161.

1606 HEIDENHAIN Technical Manual TNC 640


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 2440 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 2187. 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.

September 2015 6.19 Spindles 1607


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 CfgPos-
Control/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

1608 HEIDENHAIN Technical Manual TNC 640


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 1 000 [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
Limitation of spindle speed with Cycles 17, 18 and 207
(cf. iTNC 530: MP7160, bit 1)
Available from NCK software version: 597110-06.
Format: Menu choice
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

September 2015 6.19 Spindles 1609


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)

1610 HEIDENHAIN Technical Manual TNC 640


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 at the bottom of the thread
(cf. 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, parameter optional
Access: LEVEL1
Reaction: RUN

MP_thrdPreSwitchTime
Advanced switching time of spindle
(cf. 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, parameter optional
Access: LEVEL1
Reaction: RUN

September 2015 6.19 Spindles 1611


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 spind-
les. 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 refe-
rence mark must be reevaluated after the drive has been switched on again
with Module 9418, otherwise the TNC 640 issues an error message.

1612 HEIDENHAIN Technical Manual TNC 640


 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 pur-
pose, enter for example a key name for a second S strobe in CfgPlcSStro-
bes (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 fol-
der 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.

September 2015 6.19 Spindles 1613


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 enco-
ders.
Note

If the C axis is driven by a separate servo 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 their own position encoder. The position
encoder inputs must be on the same drive-control motherboard in 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.

1614 HEIDENHAIN Technical Manual TNC 640


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.
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-coded>
24 Module was called in a spawn or submit job

September 2015 6.19 Spindles 1615


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 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

fcutoff fM

The maximum speed in the volts-per-hertz control mode corresponds to the


maximum speed in closed loop operation.

1616 HEIDENHAIN Technical Manual TNC 640


Settings to drive a motor with a U/f component:
Settings in the configuration editor:
 MP_posEncoderType = CC_MOTOR_ENCODER
From the motor table information given below, the CC controller unit derives
that a volts-per-hertz control mode is used. Other encoder settings
(MP_posEncoderInput, MP_speedEncoderInput) are not evaluated.
 MP_maxAccSpeedCtrl (permissible axis acceleration) must be set to a
small value. As a general rule, the following applies:
Select a suitable acceleration and braking ramp to ensure that the maximum
drive current (the lesser of maximum motor current and maximum power
module 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 type
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.

September 2015 6.19 Spindles 1617


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.

1618 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 represents a factor for the MP_distPerMotorTurn machine parameter.
The position of the driven tool can thus be restored even with re-coupling.
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

September 2015 6.19 Spindles 1619


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 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/K <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)

1620 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.

September 2015 6.19 Spindles 1621


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)
 NC command FUNCTION TURNDATA
 Comprehensive cycle package for turning operations
 Tool management for turning tools
(TOOLTURN.TRN turning tool table, See "Elements of the turning-tool
table" on page 2206)
If you want the code number for enabling option 50, please contact HEI-
DENHAIN for the code number.

1622 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

September 2015 6.20 Turning operations on milling machines (option 50) 1623
Contents of the  Required: Select the machine kinematics for milling or turning mode
macros (FN17: ID290 NR1)
 Optional: Restrictions for active presets
(FN17: ID534)
 Required: Initiate the switchover in the PLC program
(vie 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:
At the PLC: Deactivate the "old" axis
FN17: ID290 NR1 (switch kinematics)
At the PLC: "Run parameter set switchover"
At the 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 code 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
runtime 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.

1624 HEIDENHAIN Technical Manual TNC 640


Special In the OEM macro, you determine an active block scan by using
characteristics FN18: SYSREAD ID992 NR10 (return code 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 imme-
diately 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 switch-overs 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.
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 2607. In the "Cancel" system cycle, you recognize the
cancellation 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.

September 2015 6.20 Turning operations on milling machines (option 50) 1625
Examples of
macros

Note

The following macros illustrate how the OEM functions required for swit-
ching between milling and turning modes can be structured. The FN29:
function is used to realize instructions to the PLC. Therefore, it is not neces-
sary 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 HEIDEN-
HAIN. If you do not use the PLC basic program, you must modify the
macros correspondingly.

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 2552.
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


(identifier)
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

1626 HEIDENHAIN Technical Manual TNC 640


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]

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 clamping/brake of the tool spindle
FN 29: PLC =+99992 / +4 / +0 ;Select the parameter set of the workpiece spindle
END PGM MODETURN MM

September 2015 6.20 Turning operations on milling machines (option 50) 1627
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]

BEGIN PGM MODEMILL MM


M305 ;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 the block scan)
FN 29: PLC =+99995 / +Q1804 / +0 / +1 ;Tool spindle STOP
;(M function is output during the 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

1628 HEIDENHAIN Technical Manual TNC 640


OEM start-up macro

Settings in the configuration editor


System
Paths
CfgSystemCycle
OEM_STARTUP
path: [Path]

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 2621.

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 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

September 2015 6.20 Turning operations on milling machines (option 50) 1629
OEM cancel macro

Settings in the configuration editor


System
Paths
CfgSystemCycle
OEM_CANCEL
path: [Path]

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 2607.

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

1630 HEIDENHAIN Technical Manual TNC 640


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 sel-
ected and the turning mode is active (FUNCTION MODE TURN).

September 2015 6.20 Turning operations on milling machines (option 50) 1631
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 ori-
ented 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 transfor-
mation in the chain (before the first axis and before the last axis). Please
refer to the following configuration examples (Page 1634). For more infor-
mation about the configuration of the machine kinematics on the TNC 640,
please see "Machine kinematics" on page 1161.

1632 HEIDENHAIN Technical Manual TNC 640


Eccentric turning Sometimes it is not possible to clamp a workpiece such that the axis of
rotation is aligned with the axis of the turning spindle (e.g. large or rotationally
non-symmetrical workpieces. The eccentric turning function (Q535 in cycle
800) allows you nevertheless to perform lathe machining.
For eccentric turning, more than one linear axis is coupled to the turning
spindle. The TNC 640 compensates the eccentricity by performing circular
compensating movements with the coupled linear axes.
 With MP_eccLimSpeedFactor, you can limit the spindle speed when per-
forming eccentric turning. If you enter the value 0, eccentric turning is not
permitted. The limit value is calculated as follows:
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 maximum 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

September 2015 6.20 Turning operations on milling machines (option 50) 1633
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 Subkinematics name
activeSpindle: S2 Turning 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

1634 HEIDENHAIN Technical Manual TNC 640


Example of Principle of structuring a kinematic configuration for turning operations on a
kinematics: B head/ machine with a B head and an A table.
A table

Settings in the configuration editor Comment


Channels
Kinematics
CfgKinComposModel
KIN_TURNING
subKinList
[0]: B_HEAD_A_TABLE Subkinematics name
activeSpindle: S2 Turning 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

September 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: BC machine with a BC table.
table (45 degrees)

Settings in the configuration editor Comment


Channels
Kinematics
CfgKinComposModel
KIN_TURNING
subKinList
[0]: BC_TABLE Subkinematics name
activeSpindle: S2 Turning 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

1636 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.20 Turning operations on milling machines (option 50) 1637
6.21 Measuring the imbalance, monitoring the imbalance, 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 non-symmetrical 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]
The unbalance is significantly influenced by the structural shape of the
workpiece and by the chucking equipment used. A non-symmetrical pump
body is a good example of a workpiece that creates outward-directed
centrifugal forces:

1638 HEIDENHAIN Technical Manual TNC 640


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.

Unbalance The TNC 640 determines the unbalance behavior of the rotary table by using
calibration 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_[spindle key name].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 1642.

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 compensation 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 1646), 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.

September 20156.21 Measuring the imbalance, monitoring the imbalance, balancing 1639
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.
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.]

1640 HEIDENHAIN Technical Manual TNC 640


Example:
Unbalance limit value (MP_maxUnbalanceOem) = 5 µm
Sum of unbalance for monitoring (MP_limitUnbalanceOem) = 20 µm
Unbalance error message with Emergency Stop response occurs in the
following conditions:
 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 an 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.

September 20156.21 Measuring the imbalance, monitoring the imbalance, balancing 1641
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 unba-
lance" on page 1644.
 Enable the Turning mode, for example by executing a block with
FUNCTION MODE TURN in MDI
 Select the Manual Operation mode
 Select the second level of the soft-key row
 Press the MANUAL CYCLES soft key
 Press the TURNING soft key
 Press the CALIBRATE UNBALANCE soft key

1642 HEIDENHAIN Technical Manual TNC 640


 Define the starting values for 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 Spindel]/
tableCalibrate, then this file name is used instead of UnbCal_[spindle key
name].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 calibra-


tion table to an associated unbalance parameter set.
If a complete path was specified in CfgUnbalance/spindle/[Index Spin-
del]/tableCalibrate then this path is used instead of
PLC:\table\UnbCal_[Keyname Spindel].ubc.

September 20156.21 Measuring the imbalance, monitoring the imbalance, balancing 1643
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 con-
figuration 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 confi-
guration
 Insert the configuration folder spindle under CfgUnbalance in the configura-
tion

1644 HEIDENHAIN Technical Manual TNC 640


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 the lathe spindle
Available from NCK software version: 597110-05.
Format: Menu choice
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 [1/min]
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

September 20156.21 Measuring the imbalance, monitoring the imbalance, balancing 1645
 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 posi-
tioned. This is the best axis for measuring the effect of the unbalance.
The parameter is evaluated by the unbalance calibration and unbalance mea-
surement functions and by the unbalance monitor.

MP_axisOfMeasure
Axis for measured value acquisition
Available from NCK software version: 597110-05.
Format: Menu choice
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

1646 HEIDENHAIN Technical Manual TNC 640


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 required 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
 With MP_maxUnbalanceOem, MP_limitUnbalanceOem,
MP_maxUnbalanceUsr and MP_limitUnbalanceUsr, specify the limit
values for unbalance monitoring, See "Monitoring the unbalance, unbalance
monitor" on page 1640.

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

September 20156.21 Measuring the imbalance, monitoring the imbalance, balancing 1647
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 unba-
lance measurement.

1648 HEIDENHAIN Technical Manual TNC 640


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

September 20156.21 Measuring the imbalance, monitoring the imbalance, 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 cali-
bration table. The table is automatically created during the unbalance cali-
bration 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 pro-
cedure, within which the trigger conditions must be fulfilled.

MP_timeOut
Time slot 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

September 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 can be selected:
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:
 With 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 CC61 xx 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 DSPs 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
drive-control motherboard. 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 drive control 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.

September 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 drive-control motherboard.


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. If speed-dependent switching of the PWM frequency is
used (See page 1409), the second PWM output of that same drive-control
motherboard or drive control expansion board can no longer be used.
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 vary through
the configuration of double-speed control loops due to the hardware
conditions.

September 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 (RB B)


(RB A) for max. 4 SS max. 4 SS

Controller group 1 Controller group 2 Controller group 1 Controller group 2


(on RB A) (on RE 1) (on RB B) (on RE 1)

X51A X52A X53A X54A X51B X52B X53B X54B


(SS) (SS) (SS) (SS) (SS) (SS) (SS) (SS)

1656 HEIDENHAIN Technical Manual TNC 640


Possible configurations for the CC 6108, each for controller group 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

Composition of the CC 6110: (not available with TNC 620)

DSP on drive-control DSP (RB B) max. 6 SS


motherboard A, (RB A)
for max. 4 SS

Controller group 1 Controller group 2 Controller group 1 Controller group 2 Controller group 3
(on RB A) (RE 1) (on RB B) (RE 1) (RE 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

September 2015 6.22 Configuring the controller unit and drive motors 1657
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 RB drive-control (controller expansion (controller expansion
motherboard) board 1 RE 1) board 2 RE 2)

X80 (SS) X81 (SS) X82 (SS) X83 (SS) X84 (SS) Vacant
Spindle Axis Axis Axis Axis

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: Menu choice
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
(Cf. iTNC 530: MP2180.x)
Available from NCK software version: 597110-01.
Format: Menu choice
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

September 2015 6.22 Configuring the controller unit and drive motors 1659
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.
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
(Cf. 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 operated at a PWM frequency of 3.2 kHz (spindle) and
4 kHz (axes).
The rated currencies 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 power module table.

Note

A reduction of the PWM frequency has no effect on the maximum rotatio-


nal speed, but it means that the axes and the spindle(s) must be commis-
sioned again.

When a new machine is put into service, HEIDENHAIN recommends the


PWM frequency appropriate for the axis modules (normally 4 kHz, see the
SIEMENS documentation). If the power module of the spindle gets too warm
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.

September 2015 6.22 Configuring the controller unit and drive motors 1661
Reduction of the reference value for I2t monitoring or of the rated current
IN in the power module table.
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 reduc-
tion begins
 fPWM = PWM frequency in kHz set in MP_ampPwmFreq

This results in the reference value for I2t monitoring:

X R [%]
X B = 1 – --------------------
100

 Reduce the rated current 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 moni-
toring-
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

September 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 Permanent assignment,
inputs to the PWM outputs encoder inputs are also MP_speedEncoderInput
permanently assigned. Always omitted
in one row, e.g. X16A, X51A and
X202A are permanently
assigned to each other.
MP_hsciCcindex Assignment of axes and Not available
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

1664 HEIDENHAIN Technical Manual TNC 640


Function CC 61xx CC 424
Control-loop cycle times Single speed: Single speed:
(at a PWM frequency of 5000 200 µs/200 µs/100 µs 200 µs/200 µs/100 µs
Hz) Double speed: Double speed:
(Position/speed/current) 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)
Following error in the jerk phase Same as CC 424 Typical input values: 0.001 to
(MP_compIpcJerkFact) 0.005
Stick-slip friction compensation Same as CC 424 Independent of feed rate
(MP_compFriction0, MP_compFriction0 has the
MP_compFrictionT1, same meaning as previously
MP_compFrictionT2) (effective values, readjustment
necessary),
MP_compFrictionT1 has a new
meaning
MP_compFrictionT2 has been
added
Filter in the speed control loop Same as CC 424 MP_vCtrlFiltLowPassT
removed,
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 has a 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 (e.g. after the changing
milling heads).

September 2015 6.22 Configuring the controller unit and drive motors 1665
Function CC 61xx CC 424
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
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

1666 HEIDENHAIN Technical Manual TNC 640


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 TNC 640 opens the currently active motor table when you make an entry
in MP_motName. Select the name of the motor.
Along with the motor table supplied by HEIDENHAIN, the OEM can save a
customized 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.
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.

September 2015 6.22 Configuring the controller unit and drive motors 1667
MP_motName
Name of the motor
(cf. iTNC 530: MP2200.x)
Available from NCK software version: 597110-01.
Format: Menu choice
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 encoder
(cf. iTNC 530: MP2206.x)
Available from NCK software version: 597110-01.
Format: Menu choice
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 w/o 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

1668 HEIDENHAIN Technical Manual TNC 640


You define the counting direction of the encoder in MP_motDir. If "off" is
entered, then the counting direction specified in the motor table is used.

MP_motDir
Counting direction of the motor encoder
(cf. iTNC 530: MP2204.x)
Available from NCK software version: 597110-02.
Format: Menu choice
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
(cf. 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

September 2015 6.22 Configuring the controller unit and drive motors 1669
6.22.9 Configure HEIDENHAIN drive components via electronic keyboard
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 saved 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 corre-


sponding machine parameters.
 Select KEEP to leave the current configuration unchanged.
 Select CANCEL to cancel the evaluation of electronic ID labels.
During every further restart, the TNC 640 checks whether the connected units
with electronic ID label match the following configuration entires:
 CfgSupplyModule/name
 CfgPowerStage/ampName
 CfgServoMotor/motName

1670 HEIDENHAIN Technical Manual TNC 640


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 electronic ID labels
Available from NCK software version: 597110-09.
Format: Menu choice
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: Menu choice
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

September 2015 6.22 Configuring the controller unit and drive motors 1671
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 is oriented
has been read, the absolute position and automatically (rough orientation; the message
determined field angle are assigned to each other. Finding the field angle appears). The drive is
The field angle is assigned to the zero position of ready for operation after this procedure. The field
the encoder. angle is 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.

1672 HEIDENHAIN Technical Manual TNC 640


General  An absolute encoder with EnDat interface should be used, since the abso-
information about lute position value is available directly after switch-on, and the field angle
encoders for direct can be assigned immediately. This means that the motor can be controlled
drives immediately.
 The encoder should have a high line count, as this leads to better controlla-
bility.
 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 tra-
versed can the field angle determined during commissioning be assigned.
 If excessive clamping of the axis prevents the "minimum" motion for deter-
mining 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 com-
missioning 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 % mass
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!

September 2015 6.22 Configuring the controller unit and drive motors 1673
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.

1674 HEIDENHAIN Technical Manual TNC 640


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 will be run. 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 through the
PLC.

September 2015 6.22 Configuring the controller unit and drive motors 1675
MP_motFieldAdjustMove
Field-angle adjustment mode
(cf. iTNC 530: MP2254.x)
Available from NCK software version: 597110-05.
Format: Menu choice
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.

1676 HEIDENHAIN Technical Manual TNC 640


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 measuring results could be determined. One com-
mon reason for this is that the parameters for the encoder are incorrect. 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.

September 2015 6.22 Configuring the controller unit and drive motors 1677
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
?

Reference Absolute Reference


marks, encoder with mark,
traversing EnDat traversing
interface

Determination of field
angle with motion (&
plausibility test),
automatic entry in
MP_motPhiRef

Determination of
field angle for
Incremental absolute and
encoder incremental
Drive ON encoders as per
Encoder
method from
?
MP_motTypeOf
Absolute FieldAdjust
encoder with
EnDat
interface Determination of field
angle as per method in If necessary,
Associate field angle MP_motTypeOfFieldAdj
from MP_motPhiRef controlled motion
ust, in order to enable over referencemark
controlled motions

Automatic entry
Controlled motion over of the field angle
reference mark in MP_motPhiRef

1678 HEIDENHAIN Technical Manual TNC 640


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 stored in
MP_motPhiRef.

Field angle already determined (MP_motPhiRef ≠ 0):


If the field angle on this machine was already determined after the control was
started (MP_motPhiRef ≠ 0), two cases must be distinguished:
 Use of an absolute encoder with EnDat interface:
The absolute position of the encoder is read immediately after the start-up
of the control has finished. The field angle from MP_motPhiRef is assigned
to this position. Therefore, the first motor motion already occurs with the
determined field angle.
 Use of an incremental encoder:
Immediately after the control has been started and the control voltage has
been switched on, then depending on MP_motTypeOfFieldAdjust, a field
angle is determined which is 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.

September 2015 6.22 Configuring the controller unit and drive motors 1679
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 han-
ging 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 posi-
tion of the rotor magnets can be established even if there is considerable
noise in the encoder signals.

Danger

Use Method 4: (MP_motFieldAdjustMove = mode 4) only after


consultation with HEIDENHAIN!

 In MP_motTypeOfFieldAdjust select the method to be used for determi-


ning the absolute rotor position.

MP_motTypeOfFieldAdjust
Rough determination of the field angle without motor motion
(cf. iTNC 530: MP2250)
Available from NCK software version: 597110-02.
Format: Menu choice
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 not applied.
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

1680 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 6.22 Configuring the controller unit and drive motors 1681
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.
During determination of the rotor position, the maximum speed of the
corresponding drive motor is being monitored. This means that the axes may
not exceed a maximum speed of 2000 mm/min, for spindles, the maximum
speed is 500 rpm. If this maximum speed value is exceeded, the control
issues the error message "0x8910 Velocity too high for rotor position
measurement %1". In exceptional cases, you can disable speed monitoring
with MP_motEncCheckOff – bit 24 = 1. Disable this monitoring function only
after consultation with HEIDENHAIN!

Danger

Hanging or axes with a gravitational load 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.

1682 HEIDENHAIN Technical Manual TNC 640


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.
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 num-
ber 94655.
 The PLC must
• switch the drive on/off
• release and lock the brakes

September 2015 6.22 Configuring the controller unit and drive motors 1683
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 that the parameters
for the encoder are incorrect. 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.

1684 HEIDENHAIN Technical Manual TNC 640


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 encoder is used. For the dura-
tion of determining the field angle (about 5 to 7 seconds), <mode> 1 returns
bit-encoded values for 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 deter-
mining 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/K <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)

September 2015 6.22 Configuring the controller unit and drive motors 1685
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 <Index of the axis>
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/K <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 function 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 informa-
ErrorCode (W1022) tion> is outside the value range
2 The axis given does not exist

1686 HEIDENHAIN Technical Manual TNC 640


Saving the The determined field angle is automatically entered in MP_motPhiRef.
determined field
For purposes of reliability and redundancy, either the serial number of the
angle
encoder (only for EnDat interface) or a unique control ID must additionally be
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.
 Use of an incremental encoder:
The field angle from MP_motPhiRef and the new identification (MAC
address of the control) for MP_motEncSerialNumber may only be taken
over if you can be sure that the same drive is mean (e.g. after changing con-
trols).

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
(cf. 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
(cf. 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

September 2015 6.22 Configuring the controller unit and drive motors 1687
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>.
Consequently:
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)

1688 HEIDENHAIN Technical Manual TNC 640


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 non-volatile 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.

September 2015 6.22 Configuring the controller unit and drive motors 1689
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/K <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 (not "non-aligned")
202: Invalid commutation angle
203: Commutation angle already set
PL B/W/D/K <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

1690 HEIDENHAIN Technical Manual TNC 640


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 specifying, 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.

September 2015 6.23 Commissioning 1691


 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 configura-
tion.
 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.

1692 HEIDENHAIN Technical Manual TNC 640


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 the HEIDENHAIN motor table in the table editor


(write-protected mode)

Open power module table (inverter.inv) in the table editor


(write-protected mode)

Open power supply module table (supply.spy) in the table


editor (write-protected mode)

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 tables or 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.

September 2015 6.23 Commissioning 1693


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 is listed 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
Supply module type
Available from NCK software version: 597110-05.
Format: Menu choice
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
Name of the motor supply module
Available from NCK software version: 597110-05.
Format: Menu choice
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
(Cf iTNC 530: MP2100.x)
Available from NCK software version: 597110-01.
Format: Menu choice
Options: Name of the power module from the inverter.inv power module
table (entered by the TNC 640)
Default: –
Access: LEVEL3
Reaction: REF

1694 HEIDENHAIN Technical Manual TNC 640


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: Other inverter manufacturer
Bit 3 = 1: HEIDENHAIN inverter
Default: No value, parameter optional
Access: LEVEL3
Reaction: RUN

MP_motName
Motor type
Available from NCK software version: 597 110-01.
Format: Menu choice
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: Menu choice
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

September 2015 6.23 Commissioning 1695


MP_motStr
Overwrite the "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 the "type of encoder" from the motor table
Available from NCK software version: 597 110-03.
Format: Menu choice
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 w/o Z1 track
ROT_DIST_CODED_NOT_ADJUSTED
Incremental rotary encoder with distance-coded reference
marks (nonaligned)
LIN_DIST_CODED_NOT_ADJUSTED
Incremental linear encoder with distance-coded reference
marks (nonaligned)
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

1696 HEIDENHAIN Technical Manual TNC 640


MP_motInertia
Overwrite the mass moment of inertia J from the motor table
(cf. 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

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 (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 in Hz

September 2015 6.23 Commissioning 1697


Entries in the power  NAME: Designation of the power module
module table  PWM: PWM frequency in [Hz] at which the power module is operated
(inverter.inv)  S: Switch position of the current sensor. Is required for the D series of HEI-
DENHAIN 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, indicates 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 INDC in [Hz]
 T-AC: Cycle duration for the duty cycle S6-40% in [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 entry in this column is main-
tained by HEIDENHAIN and need not be changed by the machine tool buil-
der.
 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 trans-
ferred via a digital interface to the CC.
 T-MIN-us: Minimum pulse suppression [us], preparation for future function
extension

1698 HEIDENHAIN Technical Manual TNC 640


Entries in the motor  TYPE: Motor type
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
 %-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)

September 2015 6.23 Commissioning 1699


 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 s
 F-DC: Lower thermal limit frequency in Hz
 T-AC: Thermal time constant for alternating current in s
 F-AC: Upper thermal limit frequency in Hz; above this frequency, the maxi-
mum 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.(Recommen-
dation; 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: Iron resistance of the laminated core. Enter 0.

1700 HEIDENHAIN Technical Manual TNC 640


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.
For HEIDENHAIN inverters the voltage build-up is dU/dt = 6000 V/µs.

September 2015 6.23 Commissioning 1701


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 Total = 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 stall current of the motor (see I0 in motor.mot)
[Aeff]
and I0 ≥ IN
 Impermissible temperature of the bearings

1702 HEIDENHAIN Technical Manual TNC 640


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 1409

 Compliance with the maximum permissible short-circuit current


The short-circuit current IK is calculated 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 must not exceed the maximum current: IK ≤ IMax

September 2015 6.23 Commissioning 1703


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 readju-


sted.
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.
There are manufacturers who do not indicate the inductance per phase, but
rather the mesh inductance (calculated from VeffL-L and Ieff).
 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 the inductance of the series reactor from the motor
table
(cf. 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

1704 HEIDENHAIN Technical Manual TNC 640


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 = R1cold ⋅ 1.4 ⋅ Irated (100 K)


Ur = 0.067 ⋅ 1.4 ⋅ 56
Ur = 5.258 Veff L,N

Ux = (XH + Xstr1 + 2 ⋅ π ⋅ F-N ⋅ L/10000) ⋅ (Irated (100


K)/1000)
Ux = (4100 + 170 + 2 ⋅ π ⋅ 300 ⋅ 150/10000) ⋅ (56/
1000)
Ux = 254.94 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

September 2015 6.23 Commissioning 1705


Values in the HEIDENHAIN motor table Values from the motor data sheet
Stator resistance at 20° C Data sheet value RStr
R1 in [mΩ] at 20° C R1 = 3050 mΩ
R1: 3050
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 at F-N in operation with Calculation from data sheet value LD, nrated
nominal values 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
Threshold rpm in 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. motor temperature at temperature sensor
T-MAX in [°C]
T-MAX: 150
Max. motor current Data sheet value Imax
I-MAX in [Aeff] winding I-MAX = 7.5 Aeff
I-MAX: 7,5

1706 HEIDENHAIN Technical Manual TNC 640


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] Mnenn (100 K)
P-N: 1351 P-N = 2 ⋅ π ⋅ (nnenn / 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 [µH]
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 limit 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 limit frequency
F-AC in [Hz]
F-AC: 0

September 2015 6.23 Commissioning 1707


6.23.2 Field orientation
Methods of the TNC 640 for determining the field angle
For a description of field-angle orientation by the TNC 640, see "Field angle
determination on the CC 61xx" on page 1675.

6.23.3 Preparation
Proceed as follows:
 Check the wiring against the grounding diagram.
 Acknowledgment of control-is-ready signal (See "Emergency stop monito-
ring" on page 1544).
 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 1161 in
this manual.
The machine configuration must contain a parameter set for every axis. The
machine parameters should be preset with initial values before commission-
ing
 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 Inter-
net.
HEIDENHAIN recommends using 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 1816)
to check this before putting the machine into service.
 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.
 Specify a power supply module from the SUPPLY.SPY table by using
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 1691.
 If CfgSupplyModule and MP_motSupply have not been configured:
Use MP_ampBusVoltage to enter the DC-link voltage at the power
module.

1708 HEIDENHAIN Technical Manual TNC 640


MP_ampBusVoltage
DC-link voltage Uz (only configure if no supply module table has
been defined!)
(Cf. 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/K <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

September 2015 6.23 Commissioning 1709


Type of power  Specify a power supply module from the SUPPLY.SPY table by using
module CfgSupplyModule and MP_motSupply. The TNC 640 reads the power
module model from the table. See "Tables for power modules, supply modu-
les and motors" on page 1691..
 If CfgSupplyModule and MP_motSupply have not been configured:
Use the MP_ampPowerSupplyType parameter to define whether you are
using a power supply module with or without energy 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: Menu choice
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

1710 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
System
CfgFilter
defaultPosition
shape: Triangle Type of the nominal position value
frequency: 40 filter
defaultCutterLoc: Deactivated Frequency of the position filter
CLP filter: disabled
(delete from configuration)
Channels
ChannelSettings
CH_NC
CfgLaPath
minPathFeed: 0 Min. feed rate on the path
minCornerFeed: 0 Min. feed rate at corners
maxPathJerk: 5 Max. jerk on the path
maxG1Feed: 99 999 Max. machining feed rate
pathTolerance: 0.01 Tolerance for contour transitions
maxPathYank: 1000000 Max. Yank on the path

September 2015 6.23 Commissioning 1711


Machine parameters in the configuration editor and Meaning
preliminary input value
Axes
ParameterSets
[Key name of the parameter set] Parameter set of the axis
CfgAxisHardware
signCorrActualVal: off Invert counting direction of the
signCorrNominalVal: off actual value
CfgPosControl Invert counting direction of the
kvFactor: 15 nominal value
servoLagMin1: 20
servoLagMax1: 20 kv factor
servoLagMin2: 20 Following error limit
servoLagMax2: 20 Following error limit
feedForwardFactor: 1 Following error limit
ctrlOutputLimit: 1000 Following error limit
CfgFeedLimits 100 % feedforward control
maxAcceleration: 0.5 Controller output limit for position
CfgReferencing cont.
refType: None
CfgControllerAuxil Max. permissible acceleration
driveOffLagMonitor: off
checkPosStandstill: 2 No evaluation of ref. markers
CfgEncoderMonitor
checkAbsolutPos: off Following error monitoring
movementThreshold: 0 Standstill monitoring
CfgControllerTol
posTolerance: 0.01 Monit. of distance-coding
CfgPositionFilter Movement monitoring threshold
axisPosition: Deactivated
axisCutterLoc: Deactivated Positioning window

Axis-specific position filter


Axis-specific CLP filter
(Delete the parameters from the
configuration)

1712 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 the axis
CfgSpeedControl
vCtrlPropGain: 0.5 Proportional component for the speed
vCtrlIntGain: 20 controller
vCtrlIntTime: 0 Integral-action component for the speed
vCtrlDiffGain: 0 controller
vCtrlFiltLowPassT: 0 Limit of integral-action component
vCtrlFiltDamping[1...6]: 0 Differential factor of the speed controller
vCtrlFiltFreq[1...6]: 0 PT2 element of the speed controller
vCtrlFiltType[1...6]: 0 Band-rejection filter damping for filters 1 to
CfgCurrentControl 6
iCtrlPropGain: 0 Band-rejection filter center frequency for
iCtrlIntGain: 0 filters 1 to 6
CfgControllerComp Type of filter
compFriction0: 0
compFrictionT1: 0 Proportional component for current
compFrictionT2: 0 controller
compFrictionNS: 0 Integral-action component for current
compCurrentOffset: 0 controller
compAcc: 0
compIpcT1: 0 Friction compensation, low motor speed
compIpcT2: 0 Delay of friction compensation
compIpcJerkFact: 0 Delay of stick-slip friction compensation
Friction compensation at rated speed
Holding current
Acceleration feedforward control
IPC time constant T1
IPC time constant T2
Following error in the jerk phase

September 2015 6.23 Commissioning 1713


6.23.4 Commissioning of digital axes

Overview:
Commissioning

Current controller
P/I
Page 1715

Speed controller Determination of


No Torque / Yes
stability adjustment field angle
1718 linear motor? Page 1675

Determination of Determination of
speed speed
controller frequency controller frequency

Speed controller
step adjustment Speed controller
Page 1720 (AUTO adjustment)
Kp/Kv/Ki
(see TNCopt
User's Manual)
Feedforward
adjustment

Feedforward
adjustment
Page 1724
IPC / Kv factor
1725

Jerk /
LookAhead /
Jerk / Nominal position
LookAhead / value filter
Nominal position Page 1752
value filter
Page 1752

1714 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.

September 2015 6.23 Commissioning 1715


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 advi-
sable to use API Module 9470 (see page 1686) 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
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error possible
Error

1716 HEIDENHAIN Technical Manual TNC 640


Adjusting the current controller:
 Do not acknowledge the Power Interrupted message. In the Programming
operating mode, use the MOD key to enter the code number 94655. In the
background, the TNC 640 will start the special mode of operation Current
Controller and Field Angle Adjustment
 Switch to the Manual mode of operation
 Press the CE key, wait until the PLC program has been converted 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 soft key Current
Control
 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 sel-
ection 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.

September 2015 6.23 Commissioning 1717


Commissioning the  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 controller 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 stand-
still 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 tra-
verse direction, see "Defining the traverse direction" on page 1055.

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 measure-
ment.

1718 HEIDENHAIN Technical Manual TNC 640


 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

September 2015 6.23 Commissioning 1719


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 con-
troller 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 pre-
viously. This factor might be too high and need to be reduced. After the fol-
lowing measurement, reduce the P factor until one of the following conditi-
ons is met
– There is little oscillation tendency
– There is (nearly) no overshoot
– A rise time of approx. 3 ms has been reached (including the I factor)
– A "smooth" step response is obtained
 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.

1720 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 6.23 Commissioning 1721


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 1332

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 1055

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 CfgChannelAxes configuration object to define the sequence in


which the reference marks are to be traversed. In MP_refAllAxes, you spe-
cify 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:

1722 HEIDENHAIN Technical Manual TNC 640


Switch on the line voltage

Edit machine YES


parameters?
Edit
MP_signCorrActuaVal
NO MP_signCorrNominalVal
MP_refDirection

Clear power interruption with CE


Switch on machine control voltage

YES
Standstill monitoring of
<axis>? Reboot the control
MP_signCorrActuaVal
NO or
MP_signCorrNominalVal
MP_signCorrNominalVal
Traverse reference
NO YES
points
Traverse direction
correct?

Switch off line voltage


Edit MP_signCorrActuaVal Finished
and
MP_signCorrNominalVal

September 2015 6.23 Commissioning 1723


Adjustment of The feedforward parameters are adjusted with TNCopt. Please refer to the
feedforward detailed information in the TNCopt User's Manual.
parameters
To 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 operating mode Program Run, Full Sequence
 Depending on the axis to be optimized, on the appropriate 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 automatically determines the feedforward control parameters
for:
– Friction (at low speeds)
– Friction (at high speeds)
– Acceleration
– Holding current for vertical axes
by minimizing the integral current

1724 HEIDENHAIN Technical Manual TNC 640


 The integral current should now be nearly 0:

 Transfer the determined machine parameters to the control.

IPC / Kv factor The prerequisite for a correct adjustment of the IPC is that the acceleration
feedforward (MP_compAcc parameter) has realistic 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.

September 2015 6.23 Commissioning 1725


 Correctly adjusted kv factor:

Note

If the measurement cannot be successfully completed, the trigger thres-


hold 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 1351.

1726 HEIDENHAIN Technical Manual TNC 640


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 mass 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 cur-
rent I (nom) reaches the limit. 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 module, e.g.:
15 A · 80 % = 12 A

September 2015 6.23 Commissioning 1727


 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 path too short
 Use the integrated oscilloscope to check whether the configured axis jerk
(e.g. MP_axJerk = 500 m/s3) is actually reached.

1728 HEIDENHAIN Technical Manual TNC 640


Result: The jerk actually achieved is only 364 m/s3.
Possible causes:
 Speed too low
 Traverse path too short

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 operating 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 para-
meter set per axis and traverse range. The individual traverse ranges are
activated by switching the parameter sets (e.g. by the PLC).

September 2015 6.23 Commissioning 1729


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 1498.


Define two position monitoring limits in the machine parameters: one for
operation with following error, and one for operation with velocity feedfor-
ward control
 Configure the movement monitoring, See "Movement monitoring" on page
1504.
 Configure the standstill monitoring, See "Standstill monitoring" on page
1506.

Note

Adjust the input values to the machine dynamics.

1730 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
internal 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 displayed in 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 the maximum acceleration of the axis
(MP_maxAcceleration)
Ascertain the 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.

September 2015 6.23 Commissioning 1731


Preparation Proceed as follows:
 Check the wiring against the grounding diagram.
 Acknowledgment of control-is-ready signal (See "Emergency stop monito-
ring" on page 1544).
 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 commission-
ing
 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 ship-
ped. In addition, registered customers can download the current version of
the PLC basic program from the HESIS Web Including Filebase on the Inter-
net.
HEIDENHAIN recommends using 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 1816)
to check this before putting the machine into service.
 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

1732 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 Maximum machining feed rate
pathTolerance: 0.01 Tolerance for contour transitions
Axes
ParameterSets
[Key name of the parameter set] Parameter set of the axis
CfgAxisHardware
signCorrActualVal: off Invert counting direction of the
signCorrNominalVal: off actual value
CfgPosControl Invert counting direction of the
kvFactor: 0 nominal value
servoLagMin1: 20
servoLagMax1: 20 kv factor
servoLagMin2: 20 Following error limit
servoLagMax2: 20 Following error limit
feedForwardFactor: 1 Following error limit
ctrlOutputLimit: 1000 Following error limit
CfgFeedLimits 100 % feedforward control
maxAcceleration: 0.5 Controller output limit for position
CfgControllerAuxil cont.
driveOffLagMonitor: off
checkPosStandstill: 2 Maximum permissible
CfgEncoderMonitor acceleration
checkAbsolutPos: off
movementThreshold: 0 Following-error monitoring
CfgControllerTol Standstill monitoring
posTolerance: 0.01
CfgPositionFilter Monitoring of distance code
defaultPosition Movement monitoring threshold
shape: Triangle
frequency: 40 Positioning window
defaultCutterLoc: Deactivated
manualFilterOrder: 11
Form of position filter
Limit frequency of filter
CLP filter: deactivated

September 2015 6.23 Commissioning 1733


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 manu-
facturer of your servo amplifier.

 Adjust the offset according to the information given by the drive manufactu-
rer.
 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.

1734 HEIDENHAIN Technical Manual TNC 640


Commissioning the
analog axes

General Analog axis feedback control is based on the following formula:


information
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
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.

September 2015 6.23 Commissioning 1735


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 mode of operation Oscilloscope
 In the Oscilloscope use the SELECT soft key to set the following value:
Display mode: YT
Sample 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 sign

1736 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
must 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.

September 2015 6.23 Commissioning 1737


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 crossing over the reference
marks:
Manual Operation
 Switch to the Oscilloscope mode of operation (code number 688379).
 In the Oscilloscope use the SELECT soft key to set the following value:
Display mode: YT
Sample 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:

1738 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.

September 2015 6.23 Commissioning 1739


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 mode of operation Oscilloscope
 In the Oscilloscope use the SELECT soft key to set the following value:
Display mode: YT
Sample 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 check


the calculated value by performing a measurement with the internal oscillo-
scope.

1740 HEIDENHAIN Technical Manual TNC 640


3. Determining  Clamp an object of maximum permissible mass 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 the nominal position
value filter of the linear-axis filter
axisCutterLoc/shape Off Shape of the nominal position
(401607) value filter of the rotary-axis filter
manualFilterOrder (401605) 1 Order of the mean-value filter in
manual operation

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 mode of operation Oscilloscope


 In the Oscilloscope use the SELECT soft key to set the following value:
Display mode: YT
Sample time: IPO clock
Channel 1: Analog
Channel 2: v nom
Channel 3: v act
Trigger: Free run
 Press the soft key OSCI
 Start recording by pressing the soft key START.
 Press the rapid traverse key together with the axis-direction key to output
the maximum possible feed rate.
 Stop recording by pressing the soft key STOP.

September 2015 6.23 Commissioning 1741


 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 Description


a m/s2 Acceleration
Vnom mm/min Nominal velocity
ton s Rise time

1742 HEIDENHAIN Technical Manual TNC 640


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 ss ⋅ 66 000
0.125 s

 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.

September 2015 6.23 Commissioning 1743


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 designed in such a way 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 servo lag (s diff) as well.
 Perform the first measurement with the temporary kv factor (15).
 Increase the kv factor until the oscillation limit is reached.
 Calculate the input value for the MP_kvFactor as follows:
MP_kvFactor = <determined value of the oscillation limit> · 0.5

1744 HEIDENHAIN Technical Manual TNC 640


kv factor too high, axis oscillates

Axis has reached the oscillation limit

September 2015 6.23 Commissioning 1745


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 servo lag (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.

1746 HEIDENHAIN Technical Manual TNC 640


Value in MP_maxPathJerk too high

Value in MP_maxPathJerk adjusted correctly

September 2015 6.23 Commissioning 1747


6. Defining 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 a 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

1748 HEIDENHAIN Technical Manual TNC 640


MP_accForwardFactor set too high

Correctly adjusted MP_accForwardFactor

September 2015 6.23 Commissioning 1749


Step 7: Set 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 dis-
play.
 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).

1750 HEIDENHAIN Technical Manual TNC 640


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 the position monitoring (See "Position monitoring" on page 1498).


 Define two position monitoring limits in the machine parameters: one for
operation with following error, and one for operation with velocity feedfor-
ward control
 Configure the movement monitoring, See "Movement monitoring" on page
1504.
 Configure the standstill monitoring, See "Standstill monitoring" on page
1506.

Note

Adjust the input values to the machine dynamics.

9. Hysteresis / For configuring the reversal-spike compensation, See "Compensation of


static friction reversal spikes for analog axes" on page 1389.

September 2015 6.23 Commissioning 1751


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, only available for the TNC 6xx) function by setting the
parameter CfgHardware/setupADP to Premium.
With ADP, the TNC optimizes motion control of the feed axes. A more uni-
form execution of NC programs with reduced data resolution or irregular
distribution of points leads to lower feed deviations with use of ADP and
improvements in surface quality, See "Advanced Dynamic Prediction (ADP)"
on page 1310.

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 filters
 Advanced HSC filters

Default filter and The filters are set system-wide with the configuration object 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

Configuring different filters for axes with joint interpolation is only permit-
ted in exceptional cases! It leads to distortions of the nominal path!

With FN17: SYSWRITE ID610, you can switch over the nominal position value
filters during program run (e.g. in OEM cycles), See "Data transfer NC => PLC,
PLC => NC" on page 2551.

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.

1752 HEIDENHAIN Technical Manual TNC 640


Overview of 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 1765.

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 Short description Page


object number number
CfgLaPath
Channel-specific jerk and tolerance parameters in the Channels folder
minPathFeed 201501 – Minimum feed rate in the 1292
segment
minCornerFeed 201502 – Minimum transition feed 1293
rate
maxG1Feed 201503 MP1092 Starting with this feed rate, 1294
"Hi" values apply
maxPathJerk 201504 MP1090 Maximum jerk on the path 1295
maxPathJerkHi 201505 MP1090 Maximum jerk on the path 1295
at rapid traverse
pathMeasJerk 201517 – Maximum jerk on the path 1295
during probing
pathTolerance 201506 MP1202 Path tolerance for contours 1294
(and transitions) after the
filter
pathToleranceHi 201507 MP1202 Path tolerance for contours 1294
(and transitions) after the
filter at rapid traverse
maxPathYank 201508 – Maximum yank (time 1296
change of the jerk) on the
path
maxPathYankHi 201518 – Mode of yank limitation at 1296
rapid traverse
reduceCornerFeed 201516 MP1205 Reduction of the 1305
contouring feed rate at the
beginning of a contour
element

September 2015 6.23 Commissioning 1753


Config Machine parameters NCK iTNC MP Short description Page
object number number
curveTolFactor 201509 – Factor for path tolerance in 1308
circles and progression of
straight lines
curveJerkFactor 201510 MP1230 Factor for feed rate 1308
to reduction at curvature
MP1243 changes
angleTolerance 201511 – Tolerance for rotary axes 1297
with M128
angleToleranceHi 201512 – Tolerance for rotary axes 1297
with M128 and rapid
traverse
filterFeedTime 201513 MP1522 Time constant of feed-rate 1278
smoothing filter
maxTransAcc 201514 MP1070 Maximum radial 1298
acceleration on circles and
curved paths
maxTransAccHi 201515 MP1070 Maximum radial 1298
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 1302
to segment transitions
MP1250
axPathJerk 401703 MP1085 Axis-specific maximum 1304
MP1097 jerk in traverse direction
MP1098
axPathJerkHi 401704 MP1086 Axis-specific maximum 1304
jerk in traverse direction
with rapid traverse
axMeasJerk 401705 – Axis-specific maximum 1304
jerk during measurement
axFilterErrWeight 401702 – Factor for filter error 1309

1754 HEIDENHAIN Technical Manual TNC 640


Config Machine parameters NCK iTNC MP Short 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 1288
100406 nominal position value filter
frequency 100405 MP1210 Cutoff frequency of the 1289
100406 MP1211 filter
MP1212
MP1213
MP1218
hscMode 100405 – Mode (only relevant with 1289
100406 HSC filter)
maxHscOrder 100405 MP1262 Maximum filter order 1289
100406 MP1263 (relevant only for HSC
filter)
defaultManualOrder 100407 – Global order of the mean- 1289
value filter for the Manual
Operation mode
disableForMeasure 100408 – Global deactivation of the 1290
filters during measurement
with TS or TT

September 2015 6.23 Commissioning 1755


Config Machine parameters NCK iTNC MP Short description Page
object number number
CfgPositionFilter
Axis-specific machine 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 1288
401607 position value filter
frequency 401606 MP1210 Cutoff frequency of the 1289
401607 MP1211 filter
MP1212
MP1213
MP1218
hscMode 401606 – Mode (only relevant with 1289
401607 HSC filter)
maxHscOrder 401606 MP1262 Maximum filter order 1289
401607 MP1263 (relevant only for HSC
filter)
manualFilterOrder 401605 – Axis-specific order of the 1290
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 1274
tolerance 201102 – Maximum distance of the 1275
filtered to the unfiltered
contour
maxLength 201103 – Maximum length of the 1275
path as a result of filtering

1756 HEIDENHAIN Technical Manual TNC 640


Ascertaining the 1. Ascertain the machine frequency:
initial values
With the nominal position value filters you limit the bandwidth of the given
(default 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 feedfor-
ward adjustment.
 With the integrated oscilloscope, record the signals v nom, v act and the fol-
lowing 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 reso-
nance 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).

September 2015 6.23 Commissioning 1757


 Select the lowest frequency of all rotary axes for the default setting of the
CLP filter (defaultCutterLoc).

Range for determining the


machine frequency

1758 HEIDENHAIN Technical Manual TNC 640


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 switching 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 dyna-
mics.

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 limita-
tion):
CfgLaPath: MP_maxPathJerk and MP_maxPathJerkHi
(Hi values generally apply to rapid traverse)
 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

September 2015 6.23 Commissioning 1759


Perform an adjustment:
 Use suitable NC program.
The TNCopt software from HEIDENHAIN features the "FF_100_[axis].h" NC
programs for feedforward adjustment.
 MP_axPathJerk: Modify the setting until the following error s-diff is redu-
ced 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

1760 HEIDENHAIN Technical Manual TNC 640


 MP_axTransJerk: Modify the setting until the following error during the
direction reversal of the axis is reduced to a few µm.

Additional inspection of the transition from straight line to circle:


Use the integrated oscilloscope to 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:

September 2015 6.23 Commissioning 1761


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 parameters 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 care-
fully 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.

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.
The feed rate is also reduced at curvature changes, 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 1306). 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 greater than 5
should be avoided. HEIDENHAIN recommends:
For MP_curveJerkFactor, set values between 1 and 2.

1762 HEIDENHAIN Technical Manual TNC 640


 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 para-


meters, please also refer to "Axis-specific limit values" on page 1299.

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 1765.)
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 1276

September 2015 6.23 Commissioning 1763


Proceed as follows to do the adjustment:

Set MP_filterFeedTime

Starting value:
MP_filterFeedTime = 0.02

Increase
MP_filterFeedTime
by 0.005

Following error No
(servo lag)
small enough?

Yes

1764 HEIDENHAIN Technical Manual TNC 640


Selection criteria
for setting the
mode of operation
Rapidity

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 fre-
quency.
 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

September 2015 6.23 Commissioning 1765


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 permit-
ted 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 1299.
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 fil-
ter" on page 1273.
(Not available on TNC 320 and lathe controls!)
 Important for uniform machining:
(= feed rate as constant as possible)
Set a high transition jerk value:
CfgLaAxis: MP_axTransJerk
Set a value no higher than 5 as the factor for feed-rate reduction at curvature
changes
CfgLaPath: MP_curveJerkFactor, See "Tolerance for corners and arcs" on
page 1306.

Note

The feed rate can be additionally smoothed with the feed-rate smoothing
filter (CfgLaPath: MP_filterFeedTime), See "Ascertaining the initial values
(default setting)" on page 1757. 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 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.

1766 HEIDENHAIN Technical Manual TNC 640


 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 = high 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

Conduct a Measurement

Reduce MP_frequency
by about 10 %

Recommendation: No
Following error < 1 µm?

Yes

Mill a test workpiece

September 2015 6.23 Commissioning 1767


Clean surface – Example values of a medium-sized machine:

Machine parameters 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), 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
 The HSC filter is recommended for 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.

1768 HEIDENHAIN Technical Manual TNC 640


Perform an adjustment:
 Goal:
Maximum speed while maintaining the programmed contour tolerance
(Cycle 32).
 Use 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

Define machine parameters


according to "basic settings"

Increase the jerk

Yes

Machine
Velocity No load, noise development or
sufficient? following error
are still low?

Yes No

September 2015 6.23 Commissioning 1769


Rapidity – exemplary values of a mid-sized machine with tolerance
exceeding 50 µm:

Machine parameters 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 cutoff 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!

1770 HEIDENHAIN Technical Manual TNC 640


Perform an adjustment:
 Goal:
The programmed contour tolerance (Cycle 32) must be maintained while the
following error is kept at a minimum
 Use 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 with increased centrifugal


forces (centrifugal 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 "basic settings"

Reduce the jerk and axis


accelerations of the X, Y
and Z axes (KGM
measurement required)

Contour tolerance Yes


exceeded?

No

September 2015 6.23 Commissioning 1771


Accuracy – Example values of a medium-sized machine:

Machine parameters 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 deactivated (MP_setupADP = Off) use the same value (1
to 1.5).

1772 HEIDENHAIN Technical Manual TNC 640


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 program-
med 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. Howe-
ver, 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 frequency of the cutter location filter
MP_defaultCutterLoc/frequency are 1 to 20 Hz. The larger the rotary axis
or the lower the possible jerk values of the rotary axis can be set (depending
on the following error), the smaller the value specified in
MP_defaultCutterLoc/frequency should be. 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 switching 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/fre-
quency or MP_axisCutterLoc/frequency.

September 2015 6.23 Commissioning 1773


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 1715.

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 (n nom),
the actual feed rate v (n 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 oscilloscope

1774 HEIDENHAIN Technical Manual TNC 640


 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 limit
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 overs-


hoots are minimized.

I (nom) oscillates

September 2015 6.23 Commissioning 1775


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 parameters 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 the speed
control loop if
MP_maxAccSpeedCtrl and/or
MP_maxDecSpeedCtrl are not
defined.

1776 HEIDENHAIN Technical Manual TNC 640


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 accelera-
tion and braking ramp gradient at which the motor reaches the electrical
current limit during starting and braking. Pay attention to the manufactu-
rer'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 para-
meter 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.

September 2015 6.23 Commissioning 1777


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 operating modes
with closed-loop position control.
 The behavior of the spindle can be adjusted, if necessary, with the
MP_axPathJerk parameter for jerk limiting.

Check the direction of rotation:


You can check the direction of rotation of the spindle in the output of M03. 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 "Oriented spindle
stop (spindle point stop)" on page 1561.
 If the error message Nominal speed value too high appears, you must
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.

1778 HEIDENHAIN Technical Manual TNC 640


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).
You can record a maximum of four CC signals. From CC61xx, you can record
six channels.

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 via the position encoder.
Actual spindle acceleration value [rpm/sec],
calculated via the speed encoder.
a nom Nominal axis acceleration value [m/s2] or [°/s2]. –
Nominal spindle acceleration value [rmp/sec]
v act Actual axis feed rate [mm/min] or [°/min], calculated –
via the position encoder.
Actual spindle speed value [rpm], calculated via the
speed 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 number 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], for rotary axes in –
[°/sec3]. Calculated via the position encoder.
j nom Nominal jerk value [m/s3], for rotary axes in –
[°/sec3].

September 2015 6.24 Integrated oscilloscope 1779


Analog Meaning CC
signals signal
v (N act) Actual shaft speed value [rpm]. 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 [rpm]. Output quantity of the CC
position controller
I (N int) Integral component of nominal current value [A]; CC
CC 422: peak value, CC 61xx/CC 424: effective
value
I (nom) Torque-defining nominal current value [A]; 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, M, I, O, T, C, s) 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.
For s, you can transfer a symbolic value.
PLCPostPgm The PLC operands (B, W, D, M, I, O, T, C, s) 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. For s, you
can transfer a symbolic value.
Analog Analog axis/spindle: –
Analog voltage = nominal velocity value [V]
SPLC-MC SPLC operands of the SPLC program of the MC –
(D, M, I, O, T)
SPLC-CC SPLC operands of the SPLC program of the CC CC
(D, M, I, O, T)
IpoDbg Diagnostic information for internal purposes –
CCDbg Diagnostic information for internal purposes CC
Contour Circular interpolation test, contour deviation in mm –
deviat.

1780 HEIDENHAIN Technical Manual TNC 640


Analog Meaning CC
signals signal
AFC diagnosis Diagnostic information for the AFC option (Adaptive –
Feed Control - option 45). The following parameters
are available:
 Spindle utilization
 Override factor
 Cutting condition
 Position
 State
 Spindle utiliz. accord. to DSP
 Load for breakage monitoring
 Upper overload limit
 Lower overload limit
 Idle load of spindle
The sampling time should be set to the control loop
cycle.
Utilization Utilization of a motor with respect to the nominal CC
point in%. See "Current utilization of drive motors"
on page 1526.
RTC Output channel of the real time coupling function –
(RealTimeCoupling). Setting CfgRTCoupling/
testMode=TRUE outputs the result of an RTC
calculation formula to the RTC channel instead of
being output to the nominal position value of an
axis. For more information, See "Real Time Coupling
(RTC)" on page 1122.
Comp Diagnosis information for nonlinear and linear axis –
compensation and the axis-related PLC
temperature
J_total, Mot Estimated mass inertia (for rotary axes) from Load CC
Adaptive Control (LAC), if active
m_total, load Estimated mass (for linear axes) from Load CC
Adaptive Control (LAC), if active
i_actual Actual current of the motor in mA CC
i_dist Actual magnetizing current of the motor CC
in mA
P_elec Electric power consumption by the motor CC
in W
P_uv Current power output of the supply module in W CC
a. If you are switching 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).

September 2015 6.24 Integrated oscilloscope 1781


Digital signals Meaning
M PLC marker
I Input
O Output
T Timers
C Counter
S Symbolic input
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.

1782 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 oscillos-
cope and displays the setup menu for signal selection:

Set the following in the setup menu:


Output:
 Select whether the nominal velocity value is to be output as a step:
• If you make no selection, then the programmed feed rate, kv factors, and
acceleration values go into effect that you have specified with the
machine parameters of the axes.
• If you select step output, a step will be output as nominal velocity value
when you press the axis-direction buttons in the Manual operating mode.
Using Feed rate F, you can set the feed rate for the step function (max.
input value: 1.000.000). During the output the position control loop is ope-
ned. A step can be output only if code number 688379 or 807667 has
been entered.

September 2015 6.24 Integrated oscilloscope 1783


Display mode:
 Set the time interval for recording the signals:
• YT: Chronological depiction of the channels
• YX: Graph of two channels
• Circle: Circular interpolation test, see page 1794
Sample time:
 Set the time interval for recording the signals:
• CC clock: Time interval = 0.6 ms
• IPO clock: Time interval = IPO clock
(from MP_System/CfgCycleTimes/ipoCycle)
• PLC clock: Time interval = PLC clock
(results from MP_System/CfgCycleTimes/plcCount * Ipo clock)
Approximately 10 000 grid points (events) are stored. The time interval
determines the duration of recording.
Examples:
 0.6 ms ⋅ 10000 = 6 s
 3 ms ⋅ 10000 = 30 s
 21 ms ⋅ 10000 = 210 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, M, I, O, T, C, s) 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.

1784 HEIDENHAIN Technical Manual TNC 640


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 10 000 events are
stored.
• Free run: The recording is started and ended by soft key. If you press the
STOP soft key, the last 10 000 events (at most) are stored.
• Channels 1 to 6: Recording begins when the trigger condition of the sel-
ected channel is fulfilled.
• Channel 1 + L to channel 6 + L: Recording begins when the trigger con-
dition 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").
Edge type
 Set 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 in the signals
table on 1779).
Pre-trigger:
 Select a value from the selection box.
Recording begins at a time preceding the trigger time point by the value
entered here.

September 2015 6.24 Integrated oscilloscope 1785


Setup for digital
Call the configuration for digital signals:
signals
 Press soft key MIOTC KONFIG.

Set:
 Selection:
• 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 only considered if Selection=X is set.
• 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 SYM-
BOL LIST soft key.

1786 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.

September 2015 6.24 Integrated oscilloscope 1787


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 pro-
gram 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.

Trigger conditions Trigger and pre-trigger conditions:


 Trigger=Single shot: 10 000 events beginning from the start are recorded.
 Trigger=Free run: At most the last 10 000 events before the STOP soft key
is pressed are recorded.
 Trigger condition defined: The time when recording ends depends on the
setting of the pre-trigger.
• Pre-trigger=0%: 10 000 events are recorded, beginning as soon as the
trigger condition is fulfilled.
• Pre-trigger=25% (or 50%, or 75%): 75% (or 50 % or 25%) of the total
of 10 000 events are recorded, beginning as soon as the trigger condi-
tion is fulfilled.
• Pre-trigger=100 %: Recording is stopped. The last 10 000 events are
recorded that occurred before the trigger condition was fulfilled.

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.

Hide/show grid lines:


 Press the GRID soft key

1788 HEIDENHAIN Technical Manual TNC 640


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."

September 2015 6.24 Integrated oscilloscope 1789


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.

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.

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).

1790 HEIDENHAIN Technical Manual TNC 640


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:

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.

September 2015 6.24 Integrated oscilloscope 1791


6.24.6 Operation via NC program
It is possible to operate the integrated oscilloscope from the NC program. This
makes it possible, 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. No additional locking takes place: For example,
active recording can be stopped with the STOP soft key, restarted, or the
settings can be changed.
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" or
FUNCTION SCOPE START JOB QS1 RESULT QS2
The oscilloscope is started with this syntax. The file specified in JOB initiali-
zes the oscilloscope (channels, measurands to be recorded, trigger conditi-
ons, sample time, ...). A *.SCO file is used for the initialization. To do this,
set the desired configuration in the internal oscilloscope and save the set-
tings 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 spe-
cify 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 evalua-
tion.
This function reserves the internal oscilloscope, and therefore the oscillos-
cope 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 oscillos-
cope can be started again with the OSCI soft key.

1792 HEIDENHAIN Technical Manual TNC 640


 FUNCTION SCOPE STOP Q1 or
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 been met, a Q parameter can be transferred with the shut-
down function. The oscilloscope management describes the value of the
transferred parameter in order to give a 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 condi-
tion 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 condi-
tion 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_Einstellungen.SCO"
RESULT "TNC:\Messdaten.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

September 2015 6.24 Integrated oscilloscope 1793


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 the setting
Contour deviat. as the signal type.
 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 contai-
ned 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

1794 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, define the colors for the oscillos-
cope.

MP_background
Background color
Available from NCK software version: 597110-01.
Format: Menu choice
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

September 2015 6.24 Integrated oscilloscope 1795


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: Menu choice
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: Menu choice
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: Menu choice
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: Menu choice
Options: See MP_background
Default: light_red
Access: LEVEL3
Reaction: NOTHING

1796 HEIDENHAIN Technical Manual TNC 640


MP_channel5
Color for channel 5
Available from NCK software version: 597110-01.
Format: Menu choice
Options: See MP_background
Default: light_blue
Access: LEVEL3
Reaction: NOTHING

MP_channel6
Color for channel 6
Available from NCK software version: 597110-01.
Format: Menu choice
Options: See MP_background
Default: light_red
Access: LEVEL3
Reaction: NOTHING

September 2015 6.24 Integrated oscilloscope 1797


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: Menu choice
Options: See MP_background
Default: yellow
Access: LEVEL3
Reaction: NOTHING

MP_select
Color for selected channel
Available from NCK software version: 597110-01.
Format: Menu choice
Options: See MP_background
Default: white
Access: LEVEL3
Reaction: NOTHING

MP_grid
Color for gridlines
Available from NCK software version: 597110-01.
Format: Menu choice
Options: See MP_background
Default: light_gray
Access: LEVEL3
Reaction: NOTHING

MP_cursorText
Color for gridlines
Available from NCK software version: 597110-01.
Format: Menu choice
Options: See MP_background
Default: dark_gray
Access: LEVEL3
Reaction: NOTHING

1798 HEIDENHAIN Technical Manual TNC 640


6.25 Diagnosis with the online monitor (OLM)

6.25.1 Introduction
The (OLM (OnLine Monitor) assists you in commissioning and provides
diagnostic functions to check control components:
 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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1799
6.25.2 Using the OLM

Overview of menus

1800 HEIDENHAIN Technical Manual TNC 640


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 exi-
ted.

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.

September 2015 6.25 Diagnosis with the online monitor (OLM) 1801
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.

1802 HEIDENHAIN Technical Manual TNC 640


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 clocks
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]

Select axes and To select axes or channels, proceed as follows:


channels
 Ctrl + Cursor up / Cursor down influences the left column
• CTRL + UP ARROW: Display the next axis/channel.
• CTRL + DOWN ARROW: Display the previous axis/channel.
 ALT + Cursor up / Cursor down influences the right column
• ALT + UP ARROW: Display the next axis/channel.
• ALT + DOWN ARROW: Display the previous axis/channel.
 Cursor up / Cursor down (without Ctrl or Alt) influences both columns
• UP ARROW: Display the next axes/channels.
• DOWN ARROW: Display the previous axes/channels.

September 2015 6.25 Diagnosis with the online monitor (OLM) 1803
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.

1804 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1805
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
lagPeak Peak of current following error. The maximum peak of
the following error is determined and displayed here.
Use CLEARPEAKLAG to delete it.

1806 HEIDENHAIN Technical Manual TNC 640


Variable Display
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
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.

September 2015 6.25 Diagnosis with the online monitor (OLM) 1807
Variable Display
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.

1808 HEIDENHAIN Technical Manual TNC 640


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 until the last nominal position
value has been received by the axis (runtimes 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.

September 2015 6.25 Diagnosis with the online monitor (OLM) 1809
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 swit-
ched 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 para-
meters.
 AlreadyMaster: This axis is a master and cannot be a slave
at the same time (synchronism).
 AlreadySlave: Only the SYCHRON_OFF command is allo-
wed for a slave spindle.
 NoSlave: The SYNCHRON_OFF command was sent to a
non-slave spindle.

1810 HEIDENHAIN Technical Manual TNC 640


Variable Display
Vb-Prog Programmed feed rate (mm/s)
Vb-Act Active feed rate
Source Type of handwheel (serial, e.g. HR 510, 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 510
mPLC

September 2015 6.25 Diagnosis with the online monitor (OLM) 1811
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

1812 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 6.25 Diagnosis with the online monitor (OLM) 1813
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

1814 HEIDENHAIN Technical Manual TNC 640


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 for reference end position
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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1815
Actual status 1 of To select the Ipo Act State 1 function:
the axes (Ipo Act
 Press the Login Ipo (or Login SimIpo) soft key.
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

1816 HEIDENHAIN Technical Manual TNC 640


Variable Display
RELEASE_ Status of axis-specific enabling (X150/X151)
CONNECTOR
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)

September 2015 6.25 Diagnosis with the online monitor (OLM) 1817
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
SP_SPEED_ Only for spindles – last spindle speed reached
REACHED
SP_MASTER Axis is master spindle (for spindle synchronism)

1818 HEIDENHAIN Technical Manual TNC 640


Variable Display
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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1819
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

1820 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1821
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 com-
mand.

Axis commands
Set axis to position 0.

Set axis to position 1000.

Set axis to position –50

Restore original axis data.

1822 HEIDENHAIN Technical Manual TNC 640


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 parame-


ter set.

"Change ParSet" dialog box:

Dialog box entries:


 Axis-Index: Logical axis number
 ParSet-Index: Index of parameter set

September 2015 6.25 Diagnosis with the online monitor (OLM) 1823
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.

1824 HEIDENHAIN Technical Manual TNC 640


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.
 If you want to use commands for spindle synchronism, remember the fol-
lowing assignment:
• 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 com-
mand.

Specify the direction of rotation (M3 or M4) in the commands for spindle
synchronism.

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°

September 2015 6.25 Diagnosis with the online monitor (OLM) 1825
Spindle synchronization commands
Spindle synchronization:
 Same direction of rotation
 Master slave speed ratio: 1/1
Spindle synchronization:
 Same direction of rotation
 Master slave speed ratio: 1/2
Spindle synchronization:
 Reversed direction of rotation
 Master slave speed ratio: 1/1
Spindle synchronization:
 Same direction of rotation
 Master slave speed ratio: 1/1
 Angle offset: 42°
Spindle synchronization:
 Reversed direction of rotation
 Master slave speed ratio: 2/1
 Angle offset: -25°
Switch off spindle synchronization

1826 HEIDENHAIN Technical Manual TNC 640


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 con-
trol 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 Status that can be assumed by the channel in bit-coded
display (See page 1831)

September 2015 6.25 Diagnosis with the online monitor (OLM) 1827
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 ack-
nowledgment 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

1828 HEIDENHAIN Technical Manual TNC 640


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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1829
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
kindOfKinCompSave Type of current kinematics
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

1830 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 6.25 Diagnosis with the online monitor (OLM) 1831
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.

1832 HEIDENHAIN Technical Manual TNC 640


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).

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."

September 2015 6.25 Diagnosis with the online monitor (OLM) 1833
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
Model 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

1834 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
MsgInfoFrHost0 .. 3 Additional information on the command
CmdToHost Current command from the CC
AxInfoToHst Associated axis information
MsgInfoToHst0 .. 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): Supply module not ready
(Port input:"„RDY.PS" = low level)
 oxoo oooo (x=1): Leakage current too high
(Port input: "–ERR.ILEAK" = low level)

September 2015 6.25 Diagnosis with the online monitor (OLM) 1835
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

1836 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.

Dialog box CC_command:

Dialog box entries:


 Function: Job sent to the CC
• AxMpUebern
• MotTemp
• AntriebEin
• AntriebAus
• State
• CHK_PHIFELDREF
• SHOW_HW_CO...
 Info: Not used
 Achs-No: Logical axis number

September 2015 6.25 Diagnosis with the online monitor (OLM) 1837
Data of the static This function displays the data stored in the static RAM of the IPO.
RAM (SRAM)
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

1838 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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1839
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

1840 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_

September 2015 6.25 Diagnosis with the online monitor (OLM) 1841
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

1842 HEIDENHAIN Technical Manual TNC 640


Data of the encoder With Encoder Data, you display the information on 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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1843
Variable Display
latch2 Counter increments of latch 2, including fine
interpolation (reference pulse or measuring pulse).
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

1844 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..4: Fast inputs of the PLC
 5..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 toI31
 HSCI: All inputs are permitted
set Status of the input (0/1)

September 2015 6.25 Diagnosis with the online monitor (OLM) 1845
6.25.8 Group of drive commands

Note

With a control with analog interface to the drives (without CC controller


unit) this function supplies no 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.

1846 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).

September 2015 6.25 Diagnosis with the online monitor (OLM) 1847
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.

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 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 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-related
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
(exchanging axes in and removing axes from the
interpolation context)

1848 HEIDENHAIN Technical Manual TNC 640


Variable Display
M97-G62-G162 Outputs during the synchronization of several NC
channels
AxesRegState Outputs at status change of axes in the controller
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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1849
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.

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

1850 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
To select the Set PosCorr function:
(Set 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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1851
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.

1852 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 assi-
gned 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)

September 2015 6.25 Diagnosis with the online monitor (OLM) 1853
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]

1854 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 modules are 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 PlcTrace Save- soft key for the OLM to save the PLC trace data in
the file r:\runtime\=APIModCall.txt.

PLC trace on/off Plc-Trace On-Off is set as follows:


 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.

September 2015 6.25 Diagnosis with the online monitor (OLM) 1855
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 + ursor Down: Scrolls backward in increments of 10.

 ALT + Cursor Down: Scrolls backward in increments of 100.

1856 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

September 2015 6.25 Diagnosis with the online monitor (OLM) 1857
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: DRIVE_FREE ()

DRIVE_FREE=false: Presumably error on the CC or a hardware problem

2 Check whether "Drive on" was requested by the PLC.


Selection: Login Ipo/Axes/Plc Nom State: DriveOn ()

DriveOn=false: Presumably error in the PLC program

3 Check whether the drive was switched on.

Selection: Login Ipo/Axes/Ipo Act State 1: DRIVE_ON ()

DRIVE_ON=false: Presumably internal IPO error

4 Check whether position feedback control was requested by the PLC.


Selection: Login Ipo/Axes/Plc Nom State: PosCtrlRequest (not valid for
spindles)

PosCtrlRequest=false: Presumably 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: Feed rate-enable

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: Max. axis feed rate

Max. axis feed rate = 0: Presumably error in the PLC program

2 The axis override must be greater than 0.


Selection: Login Ipo/Axes/Plc Nom State: Axis override

Axis override = 0: Presumably 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: Presumably internal IPO error

4 The IPO actual speed must not be equal to 0.


Selection: Login Ipo/Axes/Ipo Act Data: absIstV

absIstV = 0: Presumably internal IPO error

1858 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

September 2015 6.26 Block diagram for TNC 640 with CC 61xx 1859
1860 HEIDENHAIN Technical Manual TNC 640
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 user interface of the TNC 640 has been redesigned for a more modern
appearance compared to the previous TNC controls.
The improvements 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 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 clock and/or a
OEM logo at the top right corner of the screen and an information bar below
the operating mode display:

Time display or
OEM logo

Info line

September 2015 7.1 Display and operation 1861


Configuring the
time-of-day 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" screens (1024 x 768)
max. 108 x 22 pixels with 19" screens (1280 x 1024)
 Permissible file formats:
BMP, BMX, GIF, JPG, PNG, SVG
You can store the logo anywhere 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: Menu choice
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

1862 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, parameter optional
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
On a 1024x768 pixel screen (15 inch or 12.1 inch), error messages appear over
two lines when the info line is deactivated.

MP_infoLineEnabled
Enable/disable info line
Available from NCK software version: 597110-05.
Format: Menu choice
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 installed on the control for own texts it displays (e.g. in
Python masks), the TNC 640 automatically uses the "Dejavu Sans" (TrueType)
default font. Observe this with your OEM-specific implementations.
HEIDENHAIN specifically recommends using fonts installed on the TNC 640.

September 2015 7.1 Display and operation 1863


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 soft key row
Available from NCK software version: 597110-06.
Format: Menu choice
Options: Disabled
The left vertical OEM soft key row is not active.
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, optional parameter
Access: LEVEL3
Reaction: NOTHING

1864 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

MP_modelType specifies the type of the displayed model for 3-D graphic
simulation.

MP_modelType
Model type of the 3-D simulation graphics
Available from NCK software version: 597110-08.
Format: Menu choice
Options: No Model
The model depiction is deactivated. Only the 3-D line graphics
are shown (lowest processor load, e.g. for fast testing of the NC
program and 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
Access: LEVEL1
Reaction: NOTHING
MP_modelQuality specifies the model quality of the 3-D graphic simulation
in four stages.

MP_modelQuality
Model quality of the 3-D simulation graphics
Available from NCK software version: 597110-08.
Format: Menu choice
Options: very high
Very high model quality, the production result can be precisely
judged. This setting requires the highest computing
performance.
Block numbers and block end points can only be displayed with
this setting in the 3-D line graphics.
high
High model quality
medium
Medium model quality
low
Low model quality
Default: medium
Access: LEVEL1
Reaction: NOTHING

September 2015 7.1 Display and operation 1865


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.

1866 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/K <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

September 2015 7.1 Display and operation 1867


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

Deletion 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.

1868 HEIDENHAIN Technical Manual TNC 640


MP_clearMode
Reset status values and Q parameters
(cf. iTNC 530: MP 7300)
Format: Menu choice
Options: 0 to 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 in the event of M02, M30 or 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 or 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 –

September 2015 7.1 Display and operation 1869


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: Reference Mark Traverse
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/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 editor active
4: Pocket tables 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: V axis
5: VI axis
6: VII axis, etc.

8 Selected axis in machine mode (for Index from CfgAxes/axisList


actual-position capture)

1870 HEIDENHAIN Technical Manual TNC 640


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 several
999: Virtual tool axis
>=0: Number of 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
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: Tilt plane is active
1: Tilting preselected for manual operation
2: Tilting preselected for program run
19 Active line in the *.CMA file >=0: Current line
(call only from within a submit/spawn –1: No *.CMA file
job)
20 Speed for HR 410 or 0: Slow
HR 510 1: Medium
3: Fast
–1: No global speed range set (undefined)
21 Control type 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 active in "Edit on"
mode "Table editing" in the "Machine" 3: Tool editor active in "Edit on"
operating mode 4: Pocket-table editor active in "Edit on"
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

September 2015 7.1 Display and operation 1871


Transferred number Return code
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
56 Tool no. in spindle with call FN18 ID61
100 Number of the tool axis
110 Simulation ID that can be set via 0: No ID set, simulation not active
JHIOsim.DLL (corresponds to D296 >=0: Any ID
for iTNC 530)
111 Configuration of simulation mode 0: FullOperation: The programming station is
(programming station mode) deactivated. The wiring of the machine must be
complete; drives can be moved.
1: 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. All PLC inputs and outputs as
well as the EMERGENCY-STOP circuit must be
properly connected in order to switch the control on
correctly.
2: DriveSimul: The programming station is active
(simulation of the drives). All PLC inputs and outputs
as well as the EMERGENCY-STOP circuit must be
properly connected in order to switch the control on
correctly.
3: DriveAndEmStopSimul: The programming station
is active (simulation of the drives and of the
EMERGENCY STOP circuit). All configured PLC inputs
and outputs must be connected properly.
4: FullSimul: The programming station is active.
Simulation of the drives, the EMERGENCY STOP
circuit and all PLC inputs and outputs.
120 Status of the latest job issued by the 0: Function not active – last job was terminated
PLC for saving service files (Module correctly
9274)
1: Function not active – last job terminated was
terminated with error
2: Function active
500 Cycle counter interpolator 0..
501 Cycle time of PLC
502 Momentary 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)

1872 HEIDENHAIN Technical Manual TNC 640


Transferred number Return code
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 block scan or during switching
between programs
2: NC program started from pallet
3: Pallet change macro started
4: Epilog macro started
5: Pallet change macro started by PLC (Module 9280)
6: NC macro started for changing fixture
7: NC macro started for prolog
8: NC macro started for program cancellation

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/K <Status information>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information is invalid
ErrorCode 20 Call not in a submit/spawn job
58 No NC channel or multi-channel system confi-
gured

September 2015 7.1 Display and operation 1873


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 inch/rev
Cutting speed mm/min ft/min

Number of places after the decimal point 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: Menu choice
Options: metric
Metric measurement system
inch
Inches
Default: metric
Access: LEVEL3
Reaction: RUN

1874 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).

September 2015 7.1 Display and operation 1875


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: Menu choice
Options: ENGLISH – English
GERMAN – German
CZECH – Czech
FRENCH – French
ITALIAN – Italian
SPANISH – Spanish
PORTUGUESE – Portuguese
SWEDISH – Swedish
DANISH – Danish
FINNISH – Finnish
DUTCH – Dutc
POLISH – Polish
HUNGARIAN – Hungarian
RUSSIAN – Russian
CHINESE – Chinese (simplified)
CHINESE_TRAD – Chinese (traditional)
SLOVENIAN – Slovenian
KOREAN – Korean
NORWEGIAN – Norwegian
ROMANIAN – Romanian
SLOVAK – Slovak
TURKISH – Turkish
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: Menu choice
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).

1876 HEIDENHAIN Technical Manual TNC 640


MP_plcErrorLanguage
PLC error message language
Available from NCK software version: 597110-01.
Format: Menu choice
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: Menu choice
Options: see MP_ncLanguage
Default: ENGLISH
Access: LEVEL1
Reaction: RUN

September 2015 7.1 Display and operation 1877


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: Menu choice
Options: AUTOMATIC
Dependent files are not displayed
MANUAL
Dependent files are displayed
Default: AUTOMATIC
Access: LEVEL1
Reaction: NOTHING

1878 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
Available from NCK software version: 597110-01.
Format: Menu choice
Options: HEIDENHAIN
Program entry with HEIDENHAIN conversational programming
ISO
Program entry according to ISO
Default: HEIDENHAIN
Access: LEVEL2
Reaction: RUN

September 2015 7.1 Display and operation 1879


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 (2nd 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.

1880 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: Menu choice
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

September 2015 7.1 Display and operation 1881


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: Menu choice
Options: TRUE
Behavior as with iTNC 530: the cursor is on the previous line
FALSE
The 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: Menu choice
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

Display of the With the MP_lineBreak parameter you define the display of multiline NC
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 parameter MP_lineBreak is not evaluated in Test Run operating mode.

MP_lineBreak
Line break on NC blocks with more than one line
Available from NCK software version: 597110-02.
Format: Menu choice
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

1882 HEIDENHAIN Technical Manual TNC 640


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: Menu choice
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: Menu choice
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

September 2015 7.1 Display and operation 1883


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 TRUE,
the TNC 640 displays the safety check Really delete NC block? before the
block is deleted. DEL!.

MP_warningAtDel
Confirmation request when deleting an NC block.
Available from NCK software version: 597110-01.
Format: Menu choice
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 (same 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

1884 HEIDENHAIN Technical Manual TNC 640


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, within the specified line number, the TNC 640 finds no such syntax
element, the error message Block search aborted in block n. Please use
the search function. In this case, either enter a larger value
MP_maxLineCommandSrch, or use the search function in the Programming
mode of operation.
Longer waiting times may occur depending on the software used and when
using the maximum input range of MP_maxLineCommandSrch. This should
only be used in 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 incre-


Block number ment 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

September 2015 7.1 Display and operation 1885


Specify  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: Menu choice
Options: TRUE
Use the axis configuration defined in parameter
CfgChannelAxes/progAxis (200301).
On machines with traverse range switchover, the editor offers
all axes that are included in at least one kinematic model of the
machine.
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. (This parameter does not exist with TNC 128, as
this system can perform only paraxial positioning)

MP_enableStraightCut
Allow or lock paraxial positioning blocks
Format: Menu choice
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) instead of a paraxial positioning 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

1886 HEIDENHAIN Technical Manual TNC 640


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 function FN16: F-PRINT is 20,480
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
Use dialog windows to select the folder and load it with the
SELECT soft key
Default: No value, optional parameter
Access: LEVEL1
Reaction: RUN

MP_fn16DefaultPathSim
Default output path for the function FN16: F-PRINT in the Test
Run operating modes
Available from NCK software version: 597 110-05.
Format: String
Input: Path with max. 260 characters
Use dialog windows to select the folder and load it with the
SELECT soft key
Default: No value, optional parameter
Access: LEVEL1
Reaction: RUN

September 2015 7.1 Display and operation 1887


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 character
The default directory %SYS%\bincache should not be changed.
No entry: Binary cache is not active
Default: %SYS%\bincache
Access: LEVEL3
Reaction: NOTHING

1888 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.1 Display and operation 1889


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 commission-
ing 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
inKey name? Use environmental variables instead of drive letters:
%OEM%\ instead ofPLC:\
%USR%\ instead ofTNC:\
Example: %USR%\SETUP
 In Storage file? select a *.cfg file, in which the new settings are to be
stored (normally: PLC:\config\oem.cfg).
 Use the machine parameter MP_protection to define the access level, such
as LEVEL3 for OEM access via code number "95148".

1890 HEIDENHAIN Technical Manual TNC 640


 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: Menu choice
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

September 2015 7.1 Display and operation 1891


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 136.
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 Enable 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 Select the PLC Programming operating mode and allow
access to the LOG drive
94655 Select the special operating mode Current Controller
and Field Angle Adjustment
6871232 Tests the internal EMERGENCY STOP
857282 Resetting the operating times
NET123 Ethernet settings
RESTORE Enable the restoring of an OEM-specific machine backup
(*.ZIP) in the file manager.
SIK Opens the menu for enabling software options
211258 Displays additional soft keys and a status tab for diagnosis
purposes relating to kinematic compensation
(KinematicsComp, temperature compensation) in Manual
Operation operating mode.

1892 HEIDENHAIN Technical Manual TNC 640


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

After replacing a code number, the valid password must be entered for
deleting, renaming or editing the MP. This applies for both
MP_replaceWith and MP_hideOriginal.

September 2015 7.1 Display and operation 1893


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

Modifications to the MP_replaceWith and MP_hideOriginal parameters


are not shown in the change list and cannot be reversed with the CANCEL
MODIFICATIONS soft key.

MP_replaceWith
New OEM password or code number
Available from NCK software version: 597110-05.
Format: String
Input: Max. 18 character
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: Menu choice
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

1894 HEIDENHAIN Technical Manual TNC 640


Daily key 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.

September 2015 7.1 Display and operation 1895


7.1.14 Programming station mode

Settings in the configuration editor MP number


System
CfgMachineSimul
simMode 100201
skipReferencing 100202
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 the following setting possibilities for the
programming station mode:
 FullOperation:
The TNC 640 starts in normal operation. The programming station mode is
deactivated. All drives and the PLC are active.
 DriveSimul:
The TNC 640 simulates the CC controller unit while the PLC is active. All
PLC inputs and outputs, as well as the emergency-stop loop must be
properly connected in order to switch the TNC 640 on correctly. From NCK
software version 597110-04, analog values are only simulated and are no
longer transmitted if axes are moving.
 DriveAndEmStopSimul:
The TNC 640 simulates both the drives and the emergency stop circuit. All
configured PLC inputs and outputs are evaluated and must be connected
properly.

Danger

With the DriveSimul and DriveAndEmStopSimul settings, 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.

 FullSimul:
The TNC 640 simulates the CC controller unit and all PLC inputs / outputs.
The PLC runs in simulation mode, and the EMERGENCY-STOP loop and
PLC inputs and outputs are not interrogated.
 Delivery:
During startup of the TNC 640, all axes are set to the test mode to prevent
the axes from being switched on. 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 normal operation (FullOperation).
if MP_simMode has the Delivery value, a warning is output after the TNC
640 starts up.

1896 HEIDENHAIN Technical Manual TNC 640


Depending on the connected hardware, the TNC 640 automatically activates
the programming station mode at startup:
 If no CC controller unit was detected, a HSCI-based control automatically
activates the DriveSimul mode.
 If no system PL was detected, the DriveAndEmStopSimul is automatically
activated. This enables programming station mode with machine operating
panel, but without system PL.
 If neither a system PL nor a machine operating panel was detected, the
FullSimul module is automatically activated.

Note

Systems with integrated functional safety (FS) do not support operation


without CC.

Note

The PLC program can use the PLC module 9035 to ascertain information
about the programming station mode (return code 111). For further
information, please refer to the documentation on module 9035, Page
1870.

After changes in MP_simMode, the TNC 640 must be restarted for the new
settings to become active.

MP_simMode
Specifies the type of programming station mode
Available from NCK software version: 597110-02.
Format: Menu choice
Options: FullOperation
Programming station mode is switched off, the emergency-
stop loop (X41/34 and X42/4) must be complete. The drives are
moved.
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.
DriveSimul
Simulation of the CC controller unit. All PLC inputs and outputs,
as well as the emergency-stop circuit, must be properly
connected in order to switch the control on correctly.
DriveAndEmSopSimul
Simulation of the drives and the EMERGENCY STOP circuit. All
configured PLC inputs and outputs must be connected properly.
FullSimul
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.
Default: FullOperation
Access: LEVEL3
Reaction: RESET

September 2015 7.1 Display and operation 1897


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: 597110-02.
Format: Menu choice
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

1898 HEIDENHAIN Technical Manual TNC 640


On the TNC 640, transferring configuration data from a machine with a CC
61xx (HSCI) to a programming station can lead to errors concerning IPO/
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: 597110-05.
Format: Menu choice
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 installed
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

MP_simHardwareType
Controller unit to be simulated in programming station mode.
With the TNC 640 only the NoCC value is possible.
Available from NCK software version: 597110-05.
Format: Menu choice
Options: NoCC
No controller unit installed
Default: No value, parameter optional
Access: LEVEL3
Reaction: RESET

September 2015 7.1 Display and operation 1899


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

1900 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 axis to be referenced is 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 Continue in preparation
If a program was selected and CONTINUE is active
but has not yet been started with Cycle ON
105 Single block continue in preparation
If a program was selected and SINGLE BLOCK and
CONTINUE is active but has not yet been started
with Cycle ON
106 Measure 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 special operating mode Retraction is active
following power failure
201 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 continue mode
If a single cycle is started and CONTINUOUS is set

September 2015 7.1 Display and operation 1901


"Machine"  "Machine" main operating modes
operating modes • Traverse reference points (not with absolute encoders)
• Manual Operation
• El. Handwheel
• Position 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
 "Machine" background operating modes (cannot be called from every main
operating mode)
• MOD
Basic settings and information
• Program Management/Interfaces
File manager and configuration of external interfaces
• Edit Tool Table
• Edit Pocket Table
• Edit Other Tables

"Editor"  "Editor" main operating modes


operating modes • Programming and Editing
• Test Run
Virtual machining of a workpiece with nearly real-time graphic
simulation
 "Editor" background operating modes
• MOD
General settings and settings via code number
• Program Management/Interfaces
• MP Editor
• PLC programming

1902 HEIDENHAIN Technical Manual TNC 640


Disabling PLC Module 9285 can be used to disable operating modes and other
operating modes 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 operating 0x04


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

September 2015 7.1 Display and operation 1903


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/K <Status>
0: Function performed
1: Illegal group number
2: Incorrect parameterization via bit mask
20: Module was not called in a spawn or submit job
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid group number
ErrorCode 2 Invalid value for <Bit mask> parameter
20 Call not in a submit/spawn 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

1904 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 operating-mode group>
PS B/W/D/K <Number of status information>
1: Delay exiting of the Pass Over Reference Point mode
2: PLC error table .PET: activate/deactivate alternative error
reactions
3: Force block-wise execution of NC programs
PS B/W/D/K <New value of status information>
Status information 1:
0: Enable exiting
1: Delay exiting
Status information 2:
0: Activate normal error reactions
1: Activate alternative error reactions
Status information 3:
0: Do not force block-wise execution
1: Force block-wise execution of NC programs
2: Force block-wise execution of NC programs and NC
cycles
CM 9409
PL B/W/D/K <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 <Number of operating-mode
ErrorCode group> parameter, <Number of status informa-
tion> or <New value of status information>

September 2015 7.1 Display and operation 1905


Selecting the NC Module 9425 Select a pallet file or an NC program as main program for
program or pallet an operating-mode group
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 "Program Cancellation" reaction is pending.
 No operating mode for running NC programs has been selected for the
operating-mode group.
Possible errors:
 The specified 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 allow NC machining
A pending error message does not allow 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 operating-mode group>
PS B/W/D/K/S<String number or constant string: Path name>
PS B/W/D/K <Mode (bit encoded)>
Bit 0: Reserved
Bit 1: Reserved
Bit 2: Selection of an NC program (0)
or a pallet file (1)
CM 9425

1906 HEIDENHAIN Technical Manual TNC 640


Error code:

Marker Value Meaning


NN_GenApiModule 0 NC program or pallet file was selected
Error 1 Error in NN_GenApiModuleErrorCode
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
allow NC machining
A pending error message does not allow selec-
tion 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

September 2015 7.1 Display and operation 1907


7.1.16 Retraction after power failure
The special Retraction mode of operation gives users the possibility to retract
a tool after a power failure. If power fails during machining (e.g. thread cutting),
the tool can be retracted from the workpiece following a restart before the
brake test is implemented and the axes have to be homed.
Activate the Retraction mode of operation with the MP_retractionMode =
Available machine parameter. 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 confirms power interruption with
the CE key, the Retraction mode becomes active following 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 more detailed
information about using the Retraction mode of operation, please refer to the
User's Manual for the 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 refe-
rencing 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 soft-
ware 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 im-
plement 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 im-
plemented here at the end of the self-test. This test may cause move-
ments in the axes. Take this into account when considering enabling of
the Retraction operating mode.

1908 HEIDENHAIN Technical Manual TNC 640


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.
 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: Menu choice
Options: Available
The user 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

September 2015 7.1 Display and operation 1909


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
(compare to 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

1910 HEIDENHAIN Technical Manual TNC 640


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 move-
ments with M128 can also be limited via the PLC and the FMAX soft key, in
addition to MP_maxCompFeed.

MP_toolRefPoint
Tool reference point for the programmed path
Available from NCK software version: 597110-01.
Format: Menu choice
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

September 2015 7.1 Display and operation 1911


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 The PLC executes an NC start with PP_ChnNcStart.


NC 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

1912 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.1 Display and operation 1913


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.
 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 confi-
guration 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.

1914 HEIDENHAIN Technical Manual TNC 640


 In MP_hideSoftkey you can specify whether the AUTOSTART soft key is to
be hidden or grayed out when MP_autoStartEnabled is deactivated
(=OFF).

MP_autoStartEnabled
Activate AUTOSTART soft key
(compare to iTNC 530: MP7683, bit 5)
Available from NCK software version: 597110-01.
Format: Menu choice
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: Menu choice
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: Menu choice
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

September 2015 7.1 Display and operation 1915


MP_hideSoftkey
Hide or gray out the AUTOSTART soft key
Available from NCK software version: 597110-06.
Format: Menu choice
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

1916 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.1 Display and operation 1917


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

1918 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.1 Display and operation 1919


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

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 cancellation
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

1920 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 7.1 Display and operation 1921


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:
 The evaluation of the NC program name is available in Module 9322 only.
 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/K <Current block number>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (Block number has been found)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid string number
ErrorCode

1922 HEIDENHAIN Technical Manual TNC 640


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 to the specified string and shortened for
better display, if necessary.
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 block display of
the NC)
2: Only name of NC main program
PS B/W/D/K <String number>
CM 9322
PL B/W/D/K <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

September 2015 7.1 Display and operation 1923


Determine the
current fixed cycle
Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of machining channel]
CfgNcPgmBehaviour
plcSignalCycle 200803

Enter the number or the name of a PLC word marker in MP_plcSignalCycle


The TNC 640 writes the number of the current cycle pending machining in this
PLC operand.
This enables you to lock the running of selected machining cycles via the PLC
for example in specific operating situations.
The TNC 640 writes the cycle number to the specified operand before starting
the execution for all CALL-active machining cycles or all DEF-active point
pattern cycles.
Following cycle execution the PLC operand is reset to 0.

MP_plcSignalCycle
PLC signal for number of pending machining cycle
Available from NCK software version: 597110-09.
Format: String
Input: Name or number of a PLC word marker
Max. 500 character
Default: No value, optional parameter
Access: LEVEL2
Reaction: RUN

1924 HEIDENHAIN Technical Manual TNC 640


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.
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:
 From 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/K <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/K <Status>
0: NC program is being run
1: NC program run is interrupted
2: NC program run has completed
PL B/W/D/K <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, still 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 indirectly canceled by operator (e.g. by
switching the operating mode)
2: NC program run canceled by operator

September 2015 7.1 Display and operation 1925


3: NC program run canceled by error with reaction "Can-
cel"
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/K <Block number of the displayed NC program>
PL B/W/D/K <Help number, not yet supported>
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> para-
ErrorCode meter
2 Invalid value for <Mode> parameter
3 The entered string number is invalid

1926 HEIDENHAIN Technical Manual TNC 640


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 shown on the screen as long as a traversing
command is active. This applies regardless of the axis movement. If for
example feed-rate override is set to 0 % and a traversing command is pending,
the TNC 640 shows the control-in-operation symbol.
In Manual Operation mode axes can be moved with the axis direction buttons
as long as no cycle (macro or NC program) is executed that was started with
the PP_ChnNcStart marker. The NN_ChnControlInOperation marker is not
set in this case. Axes can be moved with the axis direction buttons in all
operating modes if an NC program is run that explicitly allows this with the
FN17: SYSWRITE ID910 function. Axes can be moved with the axis direction
buttons if an NC program was interrupted and the operator pressed the
MANUAL TRAVERSE soft key.

PLC Operand / Description Type

NN_ChnControlInOperation M
Control is in operation
0: Control not in operation
1: Control in operation

September 2015 7.1 Display and operation 1927


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/K <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 synchroni-
zed
24 The module was called in a submit job or spawn
process

1928 HEIDENHAIN Technical Manual TNC 640


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 1949).

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.

September 2015 7.1 Display and operation 1929


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

1930 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.1 Display and operation 1931


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 listed in the error window:


 Press the Delete all soft key.

1932 HEIDENHAIN Technical Manual TNC 640


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 ledg- group
ment
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 Error
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.

September 2015 7.1 Display and operation 1933


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).

1934 HEIDENHAIN Technical Manual TNC 640


To find a log file entry:
To 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
If the current file is full, the control switches the files. After converting the
log 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

September 2015 7.1 Display and operation 1935


Filters Use a filter to limit the log file display to the following error groups:
 Information
 Warnings
 Error
 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.

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

1936 HEIDENHAIN Technical Manual TNC 640


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))

September 2015 7.1 Display and operation 1937


To find a log file entry:
To call the "Find" dialog box:
 Press the FIND soft key

 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

1938 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 7.1 Display and operation 1939


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
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

Filters Use a filter to limit the log file display to the following error groups:
 Information
 Warnings
 Error
 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

1940 HEIDENHAIN Technical Manual TNC 640


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.

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

September 2015 7.1 Display and operation 1941


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:
 With the <switch for additional entries> parameter set, bit 2 (close file), the
programmed data of the other module parameters (with consideration of
bits 0 and 1) is written to the file before closing.
 If an empty string is programmed an empty line is added to the file.
Call:
PS B/W/D/K/S<Path with file name (without *.LOG extension)>
PS B/W/D/K/S<String with wild card 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
Bit 3 = 1: Time stamp and text are output in one line
CM 9277
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (data written to OEM log)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid string number or incorrect constant
ErrorCode string
22 Data could not be written, system over-
loaded – the module assigns more jobs per
time unit than the system can execute and
write to the data carrier

1942 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 (complete and effective configuration)
 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 suggests the default name SERVICE[time
stamp].zip. If you use any other chosen name, the TNC 640 also automatically
appends a time stamp to the file name. The time stamp has the format
yyyymmdd-HHMMSS.
Path: TNC:\[name][time stamp].zip

Note

When using a chosen name, remember to enter the complete path in the
form [TNC]:\[folder]\[name]-[time stamp].zip If you specify an
incomplete path, it may happen that the service files are stored in an
undefined path in the system.
When using the default path and name, the service file will be stored in the
default folder TNC:\service\.

September 2015 7.1 Display and operation 1943


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

 Specify 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 tel-
emaintenance enables third parties to access your data anyway.
 The control automatically creates the *.ZIP file TNC:\[name]-[time
stamp].zip.

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 availa-
ble 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 ge-
nerated.
 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
1893. 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.

1944 HEIDENHAIN Technical Manual TNC 640


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][i]
Save all files in 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. If the path contains a space, it must be
specified in double quotes (").

[<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.
Examples: *.TXT, PGM12?.H
If no parameter is entered, all files of the directory are
saved.

[-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

September 2015 7.1 Display and operation 1945


Event Function

[-b] Binary files are not converted to ASCII files. All binary files
are saved in binary format.

[-i] Optional parameter to apply the selection criteria for file


names, independent of case.
Example: the filter *.txt also applies to *.TXT

 FILE <fname> [-a=<n><u>][-s=<n><u>][-b]


Save a single file. You can use the same parameters that are used for
FOLDER.

Event Function

<fname> Complete path and name of the file to be saved. If the


path contains a space character, it must be specified in
double quotes (").

 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. If


the path contains a space character, it must be specified
in double quotes (").

1946 HEIDENHAIN Technical Manual TNC 640


Manual access to As long as the OEM code number is active, the file manager displays a new
log files drive with the name LOG:. This drive allows manual access to the log files and
to the LogExplorer output files.

Danger

Write and delete accesses are not monitored. The deletion or the creation
of files can make the control crash or cause software update failures.

PLC module Module 9274 Generate service files


Module 9274 allows you to create service files. This includes the option to
inform the end user by means of a dialog window if the new service file
contains NC data (i.e. possibly sensitive data). The dialog window also informs
the end user about how to customize the ZIP file. If you only save OEM-
specific log files, a dialog window is not necessary.
The dialog window display is controlled via a bit in <parameter>. The dialog
window is always displayed in case of <Function=0>.
Constraints:
 The module can be called in the cyclic program part as well as in a
subordinate program part.
 Error-free completion of the function automatically starts writing the service
file.
 The completion of this operation can be determined by module 9035
<status=120>.
 The resulting service file is always saved in ZIP format.
 The definition file is only evaluated if <function=2> applies. This file lists the
files to be considered. Moreover, you can define here entries for the type of
backup.
 Excessive use of the module within only a few seconds causes the control
to issue a warning message.

September 2015 7.1 Display and operation 1947


Call:
PS B/W/D/K <Function>
0: Save service file (default scope)
1: Save service file (short form: combined key / error log)
2: Service file as specified in definition list
PS B/W/D/K/S<Name / folder for the service file>
PS B/W/D/K/S<Name / folder for the definition file>
PS B/W/D/K <Parameter>
Bit 0: Dialog window for saving / customizing a ZIP file
0: Do not display dialog window
1: Display dialog window (implicit setting with
<function=0>)
CM 9274
PL B/W/D/K <Error code/status>
0: Service file is saved
1: Invalid function
2: Invalid string <service file>
3: invalid string <definition file>
4: Invalid parameter
5: Function already active
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (creation of the service files star-
Error ted)
1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 An error has occurred (see <error code>)
ErrorCode 3 Invalid string number or incorrect constant
string
28 The module is already active

1948 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

September 2015 7.1 Display and operation 1949


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

MP_notifyInfo
Symbolic name or the number of a marker
Available from NCK software version: 597110-03.
Format: String
Input: Max. 260 character
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, parameter optional
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 character
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, parameter optional
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 character
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, parameter optional
Access: LEVEL3
Reaction: NOTHING

1950 HEIDENHAIN Technical Manual TNC 640


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 is
permanently defined: %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.

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 The PLC error message table (*.PET) consists of the following columns, to
PET table which you can assign special attributes:
 NR
Line number [0 to 4999] in the table. The modules select the PLC error
message by assignment of 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 defined in MP_errorText (# <line
no.>)
 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

September 2015 7.1 Display and operation 1951


 Error class: The error class is defined in the following columns (See "Error
status" on page 1929). 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)
• REACT
With this attribute an NC stop occurs at the block end if the error marker
is set at this time:
0: No NC stop at the end of the block upon activation of the error
message
1: NC stop or internal stop at the end of the block upon activation of the
error message (NN_ChnErrorReact wird gesetzt)

Note

With the attribute REACT, note that


 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 the run times in the sy-
stem, it may occur despite this that the NC stop is not triggered.

• NC_LIFTOFF
0: No lift off
1: Reaction with immediate NC stop, lift off and emergency stop
following standstill upon activation of the error message
(NN_ChnErrorLiftOff is set)

1952 HEIDENHAIN Technical Manual TNC 640


• AE
Use the PLC module 9409 to activate an alternative error reaction,
provided that it is available in the PET table. The column AE (Alternative
error reaction E/C/S/F) of the PET table is evaluated for this. However,
the error reactions that are active at the time an error message occurs
will become effective. This means that error messages that were active
when Module 9409 was called, but have not been displayed yet, will
trigger the original error reactions. The following entries are possible in
the column AE: 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 message has occurred.
1: A service file is generated if an error message has occurred.
• PLC
A bit pattern, which can be read out by the PLC program, can be saved.
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 cleared by the operator
1: Error message cannot be cleared by the operator
 PRIO
The PRIO column is only evaluated if several errors are simultaneously
triggered in a 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.
 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 1972.
 ONL_NR: Help number within this help file (*.CHM), See "Enhanced error
notification" on page 1972.

Note

Several error classes for an error can be set. However, only the maximum
set error reaction is triggered by the TNC.

September 2015 7.1 Display and operation 1953


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.
Module 9084 Display PLC error message 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 messages. 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 *.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 dis-
Error played
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

1954 HEIDENHAIN Technical Manual TNC 640


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.
If the error number is not equal to –1 and no .PET table is selected:
System error message PLC: ERROR TABLE MISSING EXISTS
Call:
PS B/W/D/K <Line number *.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

September 2015 7.1 Display and operation 1955


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 *.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

1956 HEIDENHAIN Technical Manual TNC 640


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 *.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 no. or status code
ErrorCode

September 2015 7.1 Display and operation 1957


Module 9393 Read PLC column from the PET table
In the PLC column of the PET table, any value can be saved for all error
numbers. This value can be read out with Module 9393. The hexadecimal
input range in the PLC column is $0 to $FFFFFF.
Call:
PS B/W/D/K <Line number *.PET table>
Error number
PS B/W/D/K <Mode>
0: PLC column
CM 9393
PL B/W/D <Value>
Mode 0: Value of PLC column, in case of 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 <Line number PET table> para-
ErrorCode meter
2 Invalid value for <Mode> parameter

1958 HEIDENHAIN Technical Manual TNC 640


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
...
Entry in log file:
Event: 160-00b9 Class: 3 Client: Nc/CH_NC/Geo.ChannelObjThread
Date: <date> Time: <time>
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.

September 2015 7.1 Display and operation 1959


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 only executable in submit or spawn jobs.
 References to dialog texts must be specified as <SUB>D<number> or
#D<number> (e.g. "#D17")
 References to error texts must be specified as <SUB>E<number> or
#E<number> (e.g. "#E199")
 Single special characters must be specified as <SUB>A<unicode> or
#A<unicode> (e.g. "#A26" for <SUB>)
 The quantity of numbers is not limited for reference to a dialog text, error
text or single special character. The reference is terminated with the first
character that is not a number.
 If the source string contains a reference initiated by the # character that is
syntactically wrong or cannot be resolved (dialog text or error text not
defined), the corresponding characters are copied from the source string
into the target string and no error is reported – the control then assumes that
this string is part of the text to be copied.
If the reference is initiated by the <SUB> control character, a syntactically
wrong or non-resolvable reference causes an error because this string is
non-printable text.
Call:
PS B/W/D/K/S<Log entry>
–1: No entry
PS B/W/D/K/S<Log code>
–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 <Priority> parameter
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

1960 HEIDENHAIN Technical Manual TNC 640


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 first operand>
PS B/W/D/K <Number of operands>
PS B/W/D/K/S<Log code>
–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 <Priority> parameter
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 charac-
ters
47 The PLC data could not be written to the log

September 2015 7.1 Display and operation 1961


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 Key non-functional error message
Available from NCK software version: 597 110-04.
Format: Menu choice
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

1962 HEIDENHAIN Technical Manual TNC 640


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
2231.
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.

September 2015 7.1 Display and operation 1963


Module 9217 Display pop-up window for messages
Module 9217 opens a pop-up window in which any messages can be shown.
Various soft key rows can be assigned to the window. The soft key pressed is
reported to the PLC program for further processing.
Constraints:
 The pop-up window occupies the NC keyboard for its own purposes.
 The menu is only displayed on the machine screen.
 Starting with a certain number of lines, vertical a scroll bar appears, and the
arrow keys as well as the PgUp and PgDown keys can be used.
 A horizontal scroll bar is not generated. The width of the window is
determined by the longest line of the text file. Text lines that are longer than
the width of the window on the screen are truncated and have an ellipsis at
the right end.
 The module does not return until the window is closed. If the module is
called in a submit job, all following jobs are blocked. HEIDENHAIN therefore
recommends calling the module in a separate spawn process.
 For the duration of the selection, the module makes the processor available
to other spawn processes.
 If the file name for the text to be shown is transferred without a path, the
file is searched for in the language-specific directory PLC:\LANGUAGE\xxxx\
given in the machine parameters.
 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.
 Applies only to NC-SW 597110-09:
Text files are always evaluated as UTF-8 with Module 9217. This makes
Asian languages possible. There are no changes for existing, pure ASCII
files. If files exist with ISO/IEC 8859-1 coding, these must be converted to
UTF-8.
 Text files can be used with UTF-8 encoding or with ISO/IEC 8859-1
encoding. Files with UTF-8 encoding should start with a byte order mark
(BOM). If no BOM is present, the control tries to detect the encoding
automatically.

1964 HEIDENHAIN Technical Manual TNC 640


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 key
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/K <Pressed button or soft key>
–1 = Error
for K0: 0 = CE key
for K1: 1 = soft key OK; ENT key
for K2: 2 = YES soft key
3 = NO soft key
for K3: 1 = ENT 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 code programmed 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 Indicated text file was not found

September 2015 7.1 Display and operation 1965


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:
 User’s Manual for Conversational Programming
 User’s Manual for Cycles
 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 con-
text-sensitive entry point is available, the control opens the parent book file
main.chm, as described above.

1966 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.
 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.

September 2015 7.1 Display and operation 1967


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).
Table of contents
The contents directory of main.chm contains "merge" objects:
<OBJECT type="text/sitemap">
<param name="Merge" value="oem1.chm::/merged.hhc">
</OBJECT>

1968 HEIDENHAIN Technical Manual TNC 640


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 required with 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_KAP1 10000000
#define IDH_OEM1_Seite1_1 10000100
 *.txt file (only required with 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_KAP1=chapter1.html
IDH_OEM1_page1_1=page11.html

September 2015 7.1 Display and operation 1969


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.

1970 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 SOFT KEY 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 named above.
ACTION Action2_Softkey HELPID:10000000

PULSE Pulse1_Softkey HELPID:10000100


BLANK
ENDSKMENU
or:
PLC SOFT KEY Project File - Version 1.0
...
; here the assignment of a HELPID and a HELPFILE to
; the soft keys. This automatically links to the
; help file entered.
ACTION Action2_Softkey HELPID:10000000
HELPFILE:TNC:\tncguide\de\oem1.chm

PULSE Pulse1_Softkey HELPID:10000100


HELPFILE:TNC:\tncguide\de\eoem1.chm
BLANK
ENDSKMENU

September 2015 7.1 Display and operation 1971


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 OEM Once you have created a valid *.chm file, proceed as follows in order to display
specific online help your own OEM-specific help file in the HEIDENHAIN TNCguide:
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, HEI-
DENHAIN recommends placing it in the other language directories as well.
 Press the HELP key to call the TNCguide. Your help file should now automa-
tically 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

1972 HEIDENHAIN Technical Manual TNC 640


Online help files From 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.
 Implementing a TNC backup 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 stored in language-sensitive form in the
TNC:\tncguide\de or in the TNC:\tncguide\en directory, etc.
 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

September 2015 7.1 Display and operation 1973


Module 9391 Display an error message with additional offset
With Module 9391 you can display a PLC error message from the .PET table
with an additional offset. 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 ONL-Name
column, 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 passed then 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 Error table .PET>
PS B/W/D/K <Offset for the help number in .PET>
CM 9391
Error code:

Marker Value Meaning


M4203 or 0 No errors
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

1974 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 error table .PET>>
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 for the help number in .PET>
CM 9392

September 2015 7.1 Display and operation 1975


Error code:

Marker Value Meaning


M4203 or 0 No errors
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"

1976 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.

September 2015 7.1 Display and operation 1977


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 2489.
 By pressing the "Select split screen layout" key, you can sel-
ect various views for the table editor:

Soft key Function


Show table editor in list view

Show table editor in form view

Table text, export 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 MOREFUNCTIONS 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

1978 HEIDENHAIN Technical Manual TNC 640


Table, importing 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.

Importing the tool With the file manager, you can convert a tool table of the iTNC 530 to the table
table for 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 ITNC 530 IMPORT TABLE soft key: The TNC 640 requests con-
firmation 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.

September 2015 7.1 Display and operation 1979


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: Menu choice
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

1980 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: Menu choice
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: Menu choice
Options: TRUE
Column is displayed, but its right margin is truncated.
FALSE
Incomplete column is hidden completely.
Default: FALSE
Access: LEVEL2
Reaction: NOTHING

September 2015 7.1 Display and operation 1981


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 sel-
ect 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 cha-
racteristics 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 2466.

1982 HEIDENHAIN Technical Manual TNC 640


7.1.22 Machine zero point

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 1268.

 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

September 2015 7.1 Display and operation 1983


RM

RM RM

Workpiece zero point Machine zero point

Scale reference point RM = Reference mark

Set 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.

1984 HEIDENHAIN Technical Manual TNC 640


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.

MP_presetWithAxisKey
Datum setting through axis keys
Format: Menu choice
Options: TRUE:
Datum is set by the SET DATUM soft key and by pressing an
orange axis key.
FALSE:
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
With machines with several traverse ranges, each traverse range can use its
the preset table
own preset table, See "Preset table for traverse range" on page 1091.
FN17: SYSWRITE and FN18: SYSREAD refer to the currently active preset table.
ID 507 Basic transformation
With FN17: SYSWRITE ID 507 and FN18: SYSREAD ID 507 you can read and
write the values of the basic transformation in 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 you change the active preset value with this function, the change will be
applied to the geometry.
ID 508 Axis offsets from preset table
With FN17: SYSWRITE ID 508 and FN18: SYSREAD ID 508 you can read and write
the axis offsets in 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 sy-
stem.
 iTNC 530
Depending on the machine kinematics, displacement from the machine
datum to the table datum.

September 2015 7.1 Display and operation 1985


Password Inputting a password in the LOCKED column enables write-protect lines in the
protection for preset table, such as for the machine datum. The password can be randomly
selected lines of the specified and may consist of any combination of numbers and letters. Write-
preset table protected lines are shown in red. The active line and line 0 are always write-
protected.

Attention

Data loss is possible!


If you forget the password, you can no longer reset the write-protection of
a password-protected line.
Make note of the password when you password-protect lines.
Preferentially use simple protection with the LOCK / ENABLE 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.

1986 HEIDENHAIN Technical Manual TNC 640


MP_chkTiltingAxes
Check the tilting-axis position during "datum setting"
(cf. iTNC 530: MP7500, bit5)
Available from NCK software version: 597110-05.
Format: Menu choice
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
Lock Preset Table soft key
Available from NCK software version: 597 110-03.
Format: Menu choice
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

September 2015 7.1 Display and operation 1987


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

With HEIDENHAIN contouring controls it is possible to call standard cycles


(e.g. pecking, tapping, pocket milling, etc.) from within the part program. You
can also program you own 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 2295 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 rectangu-
lar or circular pocket.

Infeed

Stepover = (MP_pocketOverlap) · cutter radius

1988 HEIDENHAIN Technical Manual TNC 640


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  In MP_posAfterContPocket you specify whether an SL cycle should be fol-


execution of an SL lowed by a return to the position before the cycle call or by a retraction to
cycle clearance height.

MP_posAfterContPocket
Traverse after machining the contour pocket
Available from NCK software version: 597110-09.
Format: Menu choice
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: Menu choice
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 milled.
Default: CircleTangential
Access: LEVEL1
Reaction: RUN

September 2015 7.1 Display and operation 1989


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: Menu choice
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: Menu choice
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.
The parameter is also accessible for the machine operator as a user parameter
with the MOD code number 123.

MP_suppressPlungeErr
Do not display Plunging type is not possible error message
Available from NCK software version: 597110-05.
Format: Menu choice
Options: on
Error message is not displayed.
off
Error message is displayed.
Default: off
Access: LEVEL1
Reaction: RUN

1990 HEIDENHAIN Technical Manual TNC 640


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 "Oriented spindle stop
(spindle point stop)" on page 1561.

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

Restoring coolant Use MP_restoreCoolant to define how the TNC 640 should behave at the
status following end of the Machining Cycles 202 and 204 with respect to M7 and M8.
Cycles 202 and 204
MP_restoreCoolant
Behavior of M7 and M8 with Cycle 202 and 204
Available from NCK software version: 597110-10.
Format: Menu choice
Options: TRUE
At the end of Cycles 202 and 204, the status of M7 and M8 is
restored to that before the cycle call.
FALSE
At the end of Cycles 202 and 204, the status of M7 and M8 is
not restored automatically.
Default: TRUE
Access: LEVEL1
Reaction: RUN

September 2015 7.1 Display and operation 1991


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.

1992 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 enables you to simply assign the memory ranges:
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.

September 2015 7.1 Display and operation 1993


If you press the DIAGNOSIS soft key after entering the code number 807667 or
95148, you can access additional diagnostic information:

 HEROS Information (expanded)


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.

1994 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 diagnosis tool DriveDiag is opened.

September 2015 7.1 Display and operation 1995


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.

1996 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 1998

Supply unit, see page 2002


 Information about ID label and status
Axis (e.g. X, Y, Z, etc.), see page 2005
Higher-level folder containing all axis components

September 2015 7.1 Display and operation 1997


Main computer

Icon Icon Icon Function


Main computer
Version tab:
 Control model: Specification of the type of control
 NC software: Installed NC software version
 PLC software: PLC software being used
Main computer
Status tab:
 Status information about various signals, see page 1999
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 (CC 422
only).
 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 +5V: Current value of voltage in [V]
 DC-link voltage: Current value of voltage [V]
 DC-link current: Current value of current [A]
 DSP computer workstation temp.: Current temperature value on the DSP
computer board [°C]
 Supply voltage +15V: Current value of voltage in [V]
 Supply voltage -15V: Current value of voltage in [V]
 Supply voltage +3.3V: Current value of voltage in [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 about various signals, see page 2001

1998 HEIDENHAIN Technical Manual TNC 640


Meanings of the
signals under "main
computer/status"

Signal Meaning Colors


External enabling signals
Acknowledgment of 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
signal active). For the iTNC 530 the  Green: Signal is not active, enable
(–NE1) 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, refer to "X112/  Gray: No information about the
TS touch probe X113: Triggering touch probe" on signal available
page 342 in the Technical Manual.  Green: Signal is active, no warning
 Red: Signal is not active, warning
Touch Probe For more information, refer to "X112/  Gray: No information about the
trigger signal to X113: Triggering touch probe" on signal available
X112 page 342 in the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TS touch probe at For more information, refer to "X112/  Gray: No information about the
X112 ready X113: Triggering touch probe" on signal available
page 342 in the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TT touch probe at For more information, refer to "X112/  Gray: No information about the
X112 ready X113: Triggering touch probe" on signal available
page 342 in the Technical Manual.  Green: Signal is active
 Red: Signal is not active
Touch Probe For more information, refer to "X112/  Gray: No information about the
trigger signal to X113: Triggering touch probe" on signal available
X113 page 342 in the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TS touch probe at For more information, refer to "X112/  Gray: No information about the
X113 ready X113: Triggering touch probe" on signal available
page 342 in the Technical Manual.  Green: Signal is active
 Red: Signal is not active
TT touch probe at For more information, refer to "X112/  Gray: No information about the
X113 ready X113: Triggering touch probe" on signal available
page 342 in the Technical Manual.  Green: Signal is active
 Red: Signal is not active

September 2015 7.1 Display and operation 1999


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

2000 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 re-triggered. 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 (level 0), 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).

September 2015 7.1 Display and operation 2001


Signal Meaning Colors
Internal enabling signals
Switch-off (speed This signal causes all axes to be switched  Gray: No information about the
0) off or locked at 0-level. Thus the drives of signal available
all control boards are switched off or  Green: Enable: –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: Not enabled
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

Supply unit

Icon Icon Icon Function


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
Supply unit
Status tab:
 Status information about various signals, see page 1999

2002 HEIDENHAIN Technical Manual TNC 640


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. level 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.
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 (level 0), 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

September 2015 7.1 Display and operation 2003


Signal Meaning Colors
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 signal from the  Gray: No information about the
UV controller unit to the supply module. signal available
Resets the error memory in the supply  Green: Reset signal is not active
module.  Red: Reset signal is active

2004 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
State
Speed Controller tab:
 Status information about various signals, see page 2008
State
Position Controller tab:
 Status information about various signals, see page 2011
State
PLC tab:
 Status information about various signals, see page 2012
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 ID of the device
 Brake available: 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).

September 2015 7.1 Display and operation 2005


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 ID of the device
Power module
Status tab:
 Status information about various signals, see page 2014
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.
State
 Status information about various signals, see page 2013
Diagnostics
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.

2006 HEIDENHAIN Technical Manual TNC 640


Icon Icon Icon Function
Motor encoder test
(available only after entering the code number 688379 or 807667)
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 heights 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 about various signals, see page 2014
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 heights of the
speed encoder signals. The red line shows the measured signals.
Position encoder test
Overviewtab:
Begin the test by pressing the START MEASUREMENT button.
 Status information about various signals, see page 2014
The plain text displayed in the lower part of the screen provides additional
information about the test results.
Drive test
(available only after entering the code number 688379 or 807667)
Test tab:
Begin the test by pressing the START MEASUREMENT button.
 Status information about various signals, see page 2015
The plain text displayed in the lower part of the screen provides additional
information about the test results.

September 2015 7.1 Display and operation 2007


Meanings of the
signals under
"Status / Speed
Controller"

Signal Meaning Colors


MC enabling flag 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: Enable
 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: Enable
 Red: Not enabled
Internal drive status Gating of all ready signals (external,  Gray: No information about
internal and software) the signal available
 Green: Enable
 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

2008 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)

September 2015 7.1 Display and operation 2009


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

2010 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

September 2015 7.1 Display and operation 2011


Signal Meaning Colors
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.

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

2012 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 different types of status  Green: No warning
information from the encoder.  Yellow: Encoder issues a
If the encoder issues a warning, it means warning
that the device 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.

September 2015 7.1 Display and operation 2013


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)

2014 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: Supply unit OK
unit  Red: Supply unit
defective
Connection Status of the control ↔  Green: Connection is
power module connection OK
 Red: Connection error

September 2015 7.1 Display and operation 2015


7.1.25 Bus Diagnosis
The TNC 640 provides diagnostic functions for the following bus systems:
 HSCI
 PROFIBUS
 PROFINET
 INTERNAL-IO
For this purpose, the 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 the 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:

The 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
pane are only shown 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 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.

2016 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. The bus diagnosis performs a comparison and shows where the actual
configuration deviates from the nominal configuration.
At HSCI bus positions where a deviation was found, the actually configured
hardware (IOC:) is displayed behind the detected connected hardware (e.g. /
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.

Bus Diagnosis The following soft keys are available in the main menu of Bus Diagnosis:
soft keys
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 the component
 → (or + key) Open the component for the connected modules or terminals
to appear
 ← (or – key) Close the PROFIBUS component.

September 2015 7.1 Display and operation 2017


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: The 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 Plane


Name Symbolic name of the device  Master
 Slave
 Module
 Submodul
e
 Terminal
Comment Information on the selected device from the  Master
.iocp file, if available  Slave
 Module
 Submodul
e
 Terminal
I/O block STD. Default option, preset for each element  Master
 Slave
 Module
Bus address Bus address in the chain  Module
 Submodul
e
Slot Input or output slot  Terminal
Terminal Input or output terminal  Terminal
Operand Linking of the input or output as a PLC operand  Terminal
Order no. Order number  Terminal
Plan page Reference to the page in the electric diagram  Terminal
Pin name Terminal name  Terminal

2018 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 entered into the configuration and 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 features of 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:

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)

September 2015 7.1 Display and operation 2019


S status bit Signal Meaning
5 –STOS.A.MC The spindle is switched off by the MC, A
channel, STOS.A.G is initiated
(CC: switch-off of spindle); 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 (SS1F) operating panel
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

2020 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 to 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 to 31 1 Reserved

September 2015 7.1 Display and operation 2021


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 con-
figuration

2022 HEIDENHAIN Technical Manual TNC 640


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 a 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

September 2015 7.1 Display and operation 2023


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

2024 HEIDENHAIN Technical Manual TNC 640


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 In the "Last accepted configuration, current
configuration" case, the yellow color coding
means that something has changed

For PROFINET / PROFIBUS:


The bus device is available in the network, but
not listed 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.

September 2015 7.1 Display and operation 2025


The following commands are available in the soft key area

Soft key Function


Use this soft key to change between the different views in the
display area: ACTUAL and NOMINAL, ACTUAL, NOMINAL view
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.

2026 HEIDENHAIN Technical Manual TNC 640


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 Call the taskbar via one of the following:


 Click on the left HEIDENHAIN button on the keyboard
 Move the mouse pointer on the lower edge of the display

The XFCE configuration menu provides an integrated online help. Press the
Help button to display a detailed description of the possible settings.

September 2015 7.1 Display and operation 2027


XFCE settings To carry out expanded settings to the XFCE, select WindowManagerConfig in
the Settings menu. To configure this area you must enter the OEM password.
The following options are available:
 reset: Reset windowmanager config to default values
 modify: Modify windowmanager setting
The default settings can be reloaded with a reset. This is indicated by a
message on the lower screen edge. The following settings can be made with
modify:

Press the Help button to display a detailed description of the possible settings.

Display In the display area, all monitor settings can be carried out. This includes:
 Resolution
 Image repeat frequency
 Rotation
 Mirroring
A special feature for the current main computer is installation into the
operating console of the TNC control. This enables the brightness of the
display to also be set. This is not possible with external monitors (BF 7xx).

2028 HEIDENHAIN Technical Manual TNC 640


7.1.28 Remote Desktop Manager (software 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.
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.

September 2015 7.1 Display and operation 2029


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
 Switching-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. Is 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
The user's own applications or programs that should not be started using
the NC software, but with 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".

2030 HEIDENHAIN Technical Manual TNC 640


When using the "Remote desktop manager" software option, please note the
following:
 HEIDENHAIN only assures a functioning connection between HEROSS 5
and the IPC 6641 (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.

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 task bar 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 canceled 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.

September 2015 7.1 Display and operation 2031


Windows Terminal After selecting a connection type, you can configure a new connection with
Service (RDP) Add Connection or change an existing connection with Edit Connection:
connection

Menu item Function

General information General settings

Name: Name of the connection in the Remote


Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection ends
 Never restart
Never restart if the connection ends
 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

2032 HEIDENHAIN Technical Manual TNC 640


Menu item Function

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 mouse button
Shows a menu from 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.

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.)

September 2015 7.1 Display and operation 2033


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.

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.

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 that two users access the control
simultaneously. The user "TNC" should be defined right from the start in the
settings of the connection to the IPC 6641.
Also, with an RDP connection it is 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.

2034 HEIDENHAIN Technical Manual TNC 640


Windows Terminal After selecting a connection type, you can configure a new connection with
Service (RemoteFX) Add Connection or change an existing connection with Edit Connection:
connection

Menu item Function

General information General settings

Name: Name of the connection in the Remote


Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection ends
 Never restart
Never restart if the connection ends
 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

September 2015 7.1 Display and operation 2035


Menu item Function

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 mouse button
Shows a menu from 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.

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.)

2036 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.

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.
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 defined right from the start
in the settings of the connection 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.

September 2015 7.1 Display and operation 2037


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 After selecting a connection type, you can configure a new connection with
Add Connection or change an existing connection with Edit Connection:

Menu item Function

General information General settings

Name: Name of the connection in the Remote


Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection ends
 Never restart
Never restart if the connection ends
 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

2038 HEIDENHAIN Technical Manual TNC 640


Menu item Function

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 mouse button
Shows a menu from 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 setting is
desktop 3. Also the Windows key on the
keyboard unit automatically opens desktop
3.

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.)

September 2015 7.1 Display and operation 2039


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.

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.

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 scroll bar
appears on the screen. HEIDENHAIN therefore recommends activating the
full-screen mode.

2040 HEIDENHAIN Technical Manual TNC 640


Shutting down or To set up a connection with which you can configure the automatic shutdown
rebooting an of a Windows computer, select Switch-off/restart of a computer and click
external computer Add Connection to configure a new connection or Edit Connection to change
an existing one:

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.

September 2015 7.1 Display and operation 2041


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 mouse button
Shows a menu from which the
connection can be established or
canceled.

Move to the Not active with this connection type


following
workspace

Release USB Does not make sense with this connection


mass memory type

2042 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 A shutdown of the TNC causes the


time (seconds): Windows computer to shut down as well.
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 the


switch-off 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.

September 2015 7.1 Display and operation 2043


WEB connection To configure a connection that opens a web page via the Firefox browser,
select the connection type WEB and click Add Connection to set up a new
connection or Edit Connection to change an existing one:

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 mouse button
Shows a menu from which the
connection can be established or
canceled.

Move to the Not active with this connection type


following
workspace

Release USB Does not make sense with this connection


mass memory type

2044 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.

SSH Secure Shell After selecting a connection type, you can configure a new connection with
connection Add Connection or change an existing connection with Edit Connection:

September 2015 7.1 Display and operation 2045


The SSH connection should only be used by users who are already familiar
with Secure Shell.

Menu item Function

General information General settings

Name: Name of the connection in the Remote


Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection ends
 Never restart
Never restart if the connection ends
 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 mouse button
Shows a menu from 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.

Release USB Does not make sense with this connection


mass memory type

2046 HEIDENHAIN Technical Manual TNC 640


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: As 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."

September 2015 7.1 Display and operation 2047


XDMCP connection To configure a new connection, select the XDMCP type of connection and
click Add Connection:

2048 HEIDENHAIN Technical Manual TNC 640


Menu item Function

General information General settings

Name: Name of the connection in the Remote


Desktop Manager

Restarting Restart a canceled connection:


after end of
 Always restart
connection: Always restart if the connection ends
 Never restart
Never restart if the connection ends
 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 mouse button
Shows a menu from 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 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

September 2015 7.1 Display and operation 2049


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.

2050 HEIDENHAIN Technical Manual TNC 640


User-defined To set up a connection with which you can configure the automatic shutdown
connection of a Windows computer, select Switch-off/restart of a computer and click
Add Connection to configure a new connection or Edit Connection to change
an existing one:

September 2015 7.1 Display and operation 2051


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 if the connection ends
 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 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 mouse button
Shows a menu from which the
connection can be established or
canceled.

Move to the Not active with this connection type


following
workspace

Release USB Does not make sense with this connection


mass memory type

2052 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 7.1 Display and operation 2053


7.1.29 ITC 7xx—Connection and configuration
The additional ITC operating stations (Industrial Thin Clients) from
HEIDENHAIN are convenient solutions for an additional, remote station for
operating the machine or a machine unit, such as a tool-changing station. The
remote operation, which was designed for the TNC, permits very simple
connection of the ITC via a standard Ethernet connection with a cable of up to
100 meters.
The ITC 755 is a compact additional operating station for control systems with
a 15-inch or 19-inch main screen. It provides the most important function keys
of the TNC in addition to an ASCII keyboard and a touch screen. The ITC 755
adjusts its resolution automatically to fit the size of the main screen. The soft
keys are operated using the touch screen—keys for the soft keys are
therefore not needed. The following gestures can be used:
 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
 Switching between Manual mode and Programming mode by flicking or
dragging your finger over the operating modes tabs at the top of the screen
 Using the screen switchover key by flicking or dragging your finger
horizontally in the center section of the screen
 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 the TE 73x and the TE 74x respectively, the ITC 750 (15-inch
screen) and ITC 760 (19-inch screen) each make up one complete second
operating station. They are operated in the same way as the TNC.
Convenience through Plug & Play
As soon as the TNC identifies an ITC, it provides it with a current operating
system. After the ITC has been started, the complete content of the main
screen is mirrored to the ITC's screen. Thanks to this Plug & Play functionality,
there is no need for a configuration by the machine tool builder—if the
standard configuration of the X116 Ethernet interface is used, the TNC
automatically integrates the ITC in the system.
You can switch between the TNC and the ITC by directly taking over control,
or by using a handing-over method (selectable). The USB interface of the ITC
provides a direct connection to your control's file system. The TNC handles
the shutting down of the ITC just as reliably as it handles the starting up,
thereby ensuring maximum operational reliability.
With the current NC software versions, a DHCP server for the Ethernet
interface X116 of the MC main computer is activated in the factory default
setting (profile name MachineNet) if the MC has two Ethernet interfaces.
Thanks to this, an ITC 7xx can be operated on main computers with current
NC software in a standard configuration without any further configuration
being required. When operated this way, the screen content of the MC is
displayed on the ITC. A DHCP/TFTP server is mandatory for this type of
operation so that the MC can be operated and configured at all, see page 2734.
Up to four ITC 7xx can be connected via a hub to the Gigabit Ethernet interface
X116 of an MC main computer unit. HEIDENHAIN strongly recommends using
a Gigabit Ethernet hub for this purpose.

2054 HEIDENHAIN Technical Manual TNC 640


If the ITC is not identified and booted automatically when it is connected to
X116 of the MC, proceed as follows to configure the interface X116 (eth1) for
the operation of an ITC.

 Open the network settings of your control.


 Select the Interfaces tab.
 Press the OEM authorization button or soft key.
 Enter the defined PLCPASSWORD or the code number 807667.
 Select the eth1 X116 interface and press the Configuration button.
 Load the profile with the name MachineNet and close the Configure inter-
face dialog with OK.
 Activate the eth1 X116 interface and press the Use button. The control
should then be restarted.
 After rebooting the control or the master, the clients connected to X116 can
be started. They should then boot via the memory medium of the master.
All identified clients are displayed in a Status of DHCP clients list. This list
is opened when the Status button on the DHCP Server tab is pressed.

September 2015 7.1 Display and operation 2055


In the further documentation, the terms "TFTP device," "VNC participant," or
"ITC" are often used. The terms refer to devices that do not have their own
memory media like a hard disk or flash card / flash disk, and which load their
operating system via the network. The HEIDENHAIN control systems support
only HEIDENHAIN ITC (with Intel Atom CPU) as TFTP devices.
These ITCs permit you to define, via the configuration, the functions and
programs to be performed after startup. The simplest case, and thus also the
standard configuration, is the "clone" operation. An "image" of the screen
content of the main computer of the control is displayed on the screen of the
ITC. You can specify this operation and the conditions of switchover between
the different operating stations (between VNC participants) in detail via the
VNC configuration, see page 2742. In addition, PLC Modules 9286, 9287, and
9288 are available for this.
You can switch between the individual VNC participants (e.g. MC main
computer and ITC 750) using the mouse: Click the focus icon (at the lower
right of the screen, between the horizontal and vertical soft-key rows) or by
pressing the Connect key of the ASCII keyboard. The conditions required for
a focus change depend on the VNC configuration. HEIDENHAIN recommends
enabling the switchover only when the focus was released actively (the
setting Enable Concurrency VNC Focus should not be activated).

2056 HEIDENHAIN Technical Manual TNC 640


DHCP client Client settings
settings On all devices, this window allows you to set (overwrite) the name.
 Open the network settings.
 Go to the DHCP Server tab.
 Press the OEM authorization button or soft key.
 Enter the defined PLCPASSWORD or the code number 807667.
 Press the Status
button. In the "Status of DHCP clients" list, all identified DHCP clients are
displayed (name, IP address, MAC address, type, activity, validity).
 Select a client and press the Properties
button. In this overview, you can configure the respective client, see page
2734.

September 2015 7.1 Display and operation 2057


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 name is entered in the name server on the MC, and
therefore this name must be used to access the device in the
network.

2058 HEIDENHAIN Technical Manual TNC 640


Dialog Option Meaning
TFTP client  Configuration name
settings Here you can enter a name for the TFTP device settings (by
overwriting the standard name), or activate an existing setting
for a TFTP client. A configuration name can be used, for
example, to apply the same settings to several TFTP devices or
to transfer TFTP client settings from one machine to another
(e.g. via TNC-Remo). Existing configurations can be viewed via
the drop-down arrow. The settings that are saved under this
name, are v, w, and x. Furthermore, the settings of the Remote
Desktop Manager on the TFTP device are saved under this
name.
 Start type
Here you can indicate what the TFTP devices are to do when
they are ready for operation:
• Clone (standard): An image of the MC screen is shown on
the TFTP device. These devices participate in the VNC focus
assignment and USB memory drives that are connected to
these TFTP devices are forwarded to the MC.
• Graphic with desktop and panel: The TFTP device starts
an empty desktop with a panel bar and a menu in the panel
bar. Using the Remote Desktop Manager, you can configure
programs for automatic start-up via the menu in the panel
bar, (e.g. display of workspace monitoring or of the
Windows surface of a remote computer).
• Graphic with desktop: As above, but excluding the panel
bar. This is a useful option if you have previously configured
programs via the Remote Desktop Manager in the "Graphic
with desktop and panel" mode and no longer need the panel
bar, or if you want to prevent access to the Remote Desktop
Manager.
• Graphic without desktop: This starts the graphic display
(Xserver) and also the Window Manager (responsible for the
frames of the windows and switchover between the
windows), but without the desktop (background image) and
the panel bar. This is mainly intended for situations in which
the OEM wants to occupy the entire screen of the ITC with
a PLC/Python application with several windows.
• Graphical without Window Manager: The Xserver is started
without the Window Manager (WM). This mode is not
suitable for applications with several windows. Also
intended for OEM Python applications that take up the
entire screen of the ITC, but only with one window.
• Text mode: This is currently only useful if the graphic mode
is not available because of an error.

September 2015 7.1 Display and operation 2059


Dialog Option Meaning
 Input integration:
This setting permits operation with two screens. If you move the
cursor of the MC in the corresponding direction out of the screen
of the MC, the mouse and the keyboard inputs are forwarded to
the TFTP device. If you move the mouse back to the screen of
the MC, the transmission is stopped.
• None: No input integration. The TFTP device can be operated
only via the input devices 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 above the MC
screen. Attention: Here, you may not be able to use the
panel bar of the TFTP device because the mouse pointer
does not activate the panel bar but instead is moved to the
screen of the MC. If necessary, change the position of the
panel bar on the TFTP device.
• South: The screen of the TFTP device is below the screen of
the MC. Attention: Here, you may not be able to use the
panel bar of the MC because the mouse pointer does not
activate the panel bar but instead is moved to the screen of
the TFTP device.
Start SSH service Starts the SSH service (Secure Shell) on the TFTP device. Now, an
OEM Python application can start commands and/or programs on
the TFTP device via SSH, for example.

2060 HEIDENHAIN Technical Manual TNC 640


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!

September 2015 7.2 Small PLC window 2061


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

2062 HEIDENHAIN Technical Manual TNC 640


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:
Replaced with ASCII character "@"
 Non-displayable character in the text (except string end):
Replaced with 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 color>
0 to 15
PS K/B/W/D/S<String number or string>
CM 9082
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.

September 2015 7.2 Small PLC window 2063


Module 9083 Display a moving-bar diagram in the small PLC window
The moving-bar diagram is shown in the specified line with the specified
length 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.

Colum 0150 019


n
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 edge and scale graduation>
0 to 15
PS K/B/W/D <Current bar length>
0 to 150
PS K/B/W/D <Maximum bar length>
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

2064 HEIDENHAIN Technical Manual TNC 640


7.3 PLC soft keys
In the vertical soft key row, you can display your own soft keys through the
PLC in all operating modes. Create the soft keys using the TNC Soft
key Editor in the PLCdesign from version 2.3. The menu structure of the
vertical soft key row can be defined using the MenuDesign software (included
in the PLCdesign package from 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

September 2015 7.3 PLC soft keys 2065


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 acknowledgment 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>

2066 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: Top 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 implemented
upon pressing and not releasing the soft
key
HANDWHEEL: Defines a soft key menu for
display handwheels
In the "title" variable the heading is
specified via a handwheel menu
(corresponds to the third line on the
handwheel 420/HR 5xx).

September 2015 7.3 PLC soft keys 2067


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.
old_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
with the first actuation and reset upon
renewed actuation
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 with decimal
notation.
Special characters are e.g.:
&#128; =arrow upwards
&#129; =arrow downwards
&#133; ="Back" symbol in menu
</menu> End of the soft key menu
</resource> End of the soft key resource file

2068 HEIDENHAIN Technical Manual TNC 640


Connecting soft key From 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" Item-
Type="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>

September 2015 7.3 PLC soft keys 2069


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 create pop-up menus using 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 with each call
PS B/W/D/K/S<Reserved>
Transfer 0 or ""
PS B/W/D/K <Number of PLC soft key menu>
or –1: Interrogation of 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 evalua-
ted.
PS B/W/D/K <Operating mode>
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

2070 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

September 2015 7.3 PLC soft keys 2071


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 for the PLC soft keys


Module 9208 determines the current status information for 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 and the constant value 32768
( $8000 ) are generated.
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 <Resource handle> para-
ErrorCode meter or <Function> parameter
20 Call not in a submit/spawn job
44 Error during determination of status infor-
mation

2072 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 shown 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 sub-menu.
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.

September 2015 7.3 PLC soft keys 2073


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>

2074 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
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 booting
After the BIOS is loaded the control starts the HEIDENHAIN HEROS
operating system (HEIDENHAIN Real-time Operating System).
 Step 3: NC software starts
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 power interruption
If so configured with MP_powerInterruptMsg, see page 2077, the control
waits until you confirm the Power interrupted message by pressing 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 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 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 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 1544.

September 2015 7.4 Switching the control on/off 2075


 Step 8: Implement 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 2603.
 Step 9: Crossing the reference marks (if configured)
In the last step, the control displays the Traverse reference points
message prompting the operator to scan the reference marks in 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.

2076 HEIDENHAIN Technical Manual TNC 640


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 is not displayed.

MP_powerInterruptMsg
Acknowledge Power interrupted message
Available from NCK software version: 597110-01.
Format: Menu choice
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

PLC Operand / Description Type

NN_GenCycleAfterPowerOn M
First PLC scan after power 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)

September 2015 7.4 Switching the control on/off 2077


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.
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 Ether-
net 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 system
The system should now function correctly again.

2078 HEIDENHAIN Technical Manual TNC 640


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.

September 2015 7.4 Switching the control on/off 2079


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 deleted and the memory card
(or hard disk) is put into sleep mode. The behavior of the control during
shutdown can be configured, and shutdown can be delayed for specific
actions.
There are various causes for shutdown. In the parameter object
CfgShutDown you define the behavior when the control is shut down,
depending on the cause. A distinction is made between the following causes:
 shutdownOnConfig
Configuration data that caused 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.
MP_rebootOption configures the options if the machine operator terminates
control operation via soft key. In the ALLOW setting and after pressing the OFF
soft key, the operator can specify whether the control is shut down or whether
the NC software is merely restarted. With the SUPPRESS setting, the RESTART
soft key is not displayed and the control can only be shut down.
If the control is shut down, the behavior defined with MP_shutdownOnUser,
meaning SHUTDOWN in the default setting, causes the control to shut down – it
can then only be started up again with the main On/Off switch.
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.

2080 HEIDENHAIN Technical Manual TNC 640


Setting a PLC  Use the POWEROFF setting for shutdown, or use Module 9279 – mode 2 to
output during shut down the control.
shutting down the  Set the MP_powerOffDevice parameter:
control 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:

 Set the parameter MP_powerOffSlot = 0.


 Use MP_powerOffPort to define the desired output terminal.
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.
The output terminals (pins) that can be used are listed in the tables on the
following pages.
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

September 2015 7.4 Switching the control on/off 2081


PL 62xx without functional safety, connection X21:

Terminal (pin) of the PLC output Setting in MP_powerOffPort


X21.1 0
X21.2 1
X21.3 2
X21.4 3
X21.5 4
X21.6 5
X21.7 6
X21.8 7

PL 62xx without functional safety, connection X22:

Terminal (pin) of the PLC output Setting in MP_powerOffPort


X22.1 8
X22.2 9
X22.3 10
X22.4 11
X22.5 12
X22.6 13
X22.7 14
X22.8 15

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

2082 HEIDENHAIN Technical Manual TNC 640


Terminal (pin) of the PLC output Setting in MP_powerOffPort
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.
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.
 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.
 Marker NP_GenShutdownActive
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 of shutdown
(e.g. 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.

September 2015 7.4 Switching the control on/off 2083


Machine MP_shutdownOnConfig
parameters Behavior when RESET configuration data is changed
Available from NCK software version: 597110-01.
Format: Menu choice
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: Menu choice
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

2084 HEIDENHAIN Technical Manual TNC 640


MP_shutdownOnUser
Behavior during switch-off by soft key
Available from NCK software version: 597110-01.
Format: Menu choice
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: TERMINATE
Access: LEVEL3
Reaction: NOTHING

MP_shutdownOnOem
Behavior when PLC module 9279 is called
Available from NCK software version: 597110-01.
Format: Menu choice
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: TERMINATE
Access: LEVEL3
Reaction: NOTHING

September 2015 7.4 Switching the control on/off 2085


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, parameter optional
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

2086 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 O0 to O31 for systems
without HSCI
For systems with HSCI, please see the device-specific table.
No entry: Do not set PLC output.
Default: No value, parameter optional
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, parameter optional
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.

September 2015 7.4 Switching the control on/off 2087


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: Menu choice
Options: ALLOW
The screen button or the RESTART soft key for restarting the
NC software is shown.
SUPPRESS
The screen button or the RESTART soft key is not shown. The
behavior defined in MP_shutdownOnUser is in effect.
Default: TERMINATE
Access: LEVEL3
Reaction: NOTHING
Module 9189 Shutting 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

2088 HEIDENHAIN Technical Manual TNC 640


Module 9279 Shutdown by PLC (configurable)
The module terminates control operation. The behavior during shutdown of
the control is defined in the <Mode> 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 can only be called in a submit or spawn job.
 If mode 1 is active, a control restart 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 control with evaluation of the "powerOff con-
figuration" (configurable in CfgShutDown)
- switch-off port is configured:
"powerOff configuration" is implemented
- no switch-off port is configured:
Only the control is shut down
1: Shut down and restart the control
2: Shut down the control depending on the configuration of
CfgShutDown/shutdownOnOem
CM 9279
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (shutdown implemented)
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid value for <Mode> parameter
ErrorCode 20 Call not in a submit/spawn job

September 2015 7.4 Switching the control on/off 2089


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 is displayed in NP_GenKeyCode while a key of the control
keyboard is being pressed. (See "Codes for keystroke simulation" on page
2095.).

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

2090 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 (from 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/K <Number of the occupied 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/K <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

September 2015 7.5 Keystroke simulation 2091


Module 9182 Re-enable NC key through the PLC
The module cancels the effect of Module 9181.
Call:
PS B/W/D/K <Key code>
CM 9182
PL B/W/D/K <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, 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 9183
PL B/W/D/K <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 Passed PLC group code incorrect
ErrorCode

2092 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/K <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

September 2015 7.5 Keystroke simulation 2093


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: PASSOVER REFERENCE
 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 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 outside value range
ErrorCode 28 Previous call not ended

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/K <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

2094 HEIDENHAIN Technical Manual TNC 640


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
$57 W ASCII $1BC – Numbers
$58 X ASCII $1BD . Numbers
$59 Y ASCII $1C0 MANUAL Mode of
operation
$5A Z ASCII $1C1 TEACH-IN Mode of
operation
$5E ^ ASCII $1C2 SINGLE Mode of
operation
$160 0 soft key Vertic. soft key $1C3 AUTO Mode of
operation
$161 Soft key 1 Vertic. soft key $1C4 EDIT Mode of
operation

September 2015 7.5 Keystroke simulation 2095


Code Key Group Code Key Group
$162 Soft key 2 Vertic. soft key $1C5 HANDWHEEL Mode of
operation
$163 Soft key 3 Vertic. soft key $1C6 TEST Mode of
operation
$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 0 soft key 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

2096 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

September 2015 7.5 Keystroke simulation 2097


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.
With the TNC 640, the "DCM – Dynamic Collision Monitoring" function
(option #40 – ID 526452-01) can be used 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 2099

"CMO—Collision Monitored Object" on page 2104

"DCM with M3D (Mesh3D)" on page 2106

"Integration of CMOs in the kinematics" on page 2119

"DCM – Function and operation" on page 2114

"Optimizing the DCM performance" on page 2117

"Configuration of the CMOs" on page 2120

"DCM—Additional settings / information / PLC modules" on page 2129

"Using KinematicsDesign on the control" on page 2135

Sample DCM danger of collision report

2098 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)


 There is no collision monitoring (DCM inactive) with an active coupling
function. 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


 Collision monitoring is not active on a machine during reference run
(incremental encoders). This means that DCM is inactive (DCM icon flas-
hes) 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 in operation with velocity
feedforward, DCM is inactive (DCM icon blinks). This means that DCM is
inactive if the feedForwardFactor machine parameter for one of the axes in
the kinematics chain does not equal 1.
Use CfgDCM/reactionIfUnref to define the reaction to slave axes with
active DCM.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2099


MP_reactionIfRTC
Reaction to RTC commands with active DCM
Available from NCK software version: 597110-09.
Format: Menu choice
Options: Cancel
The NC program is aborted and an error message is displayed.
None
RTC commands are being executed. During this time, DCM is
deactivated. 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: Menu choice
Options: Cancel
The NC program is aborted and an error message is displayed.
None
DCM is deactivated as long as at least one axis has no
reference or is driven in following error mode. Warnings are
issued.
Default: Cancel, optional parameter
Access: LEVEL3
Reaction: RUN

2100 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 dimensioned correctly and if their positions in the machine coordi-
nate system have been entered correctly.
 Collisions of defined machine components or the tool with the workpiece
are not detected.
 Even if there are CMOs in the kinematics description, there is no protec-
tion against collisions without software option 40 (DCM).
 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)
 Linear axis tolerance (Cycle 32)
 Temperature compensation
 Compensations by the PLC program.
 Compensation of reversal error
 Nonlinear axis error compensation
 Compensation functions performed 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.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2101


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 faulty configurations.

Attention

Cycles for "Rigid tapping" (tapping without floating tap holder)


In the cycles for "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 when the axes are
positioned by the PLC.
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. Thus, MP_manFilterEnhanced
remains effective.

2102 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 edi-
tor, the changes must be saved in order to become effective.
 The settings in the user dialog of the collision monitoring (DCM) for Pro-
gram 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 implement a
movement with the axis keys or handwheel where several axes are
simultaneously traversed 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 can currently not be included yet 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 the MP1292 (manual allowance for DCM) is
currently not available yet for the TNC 640.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2103


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 with the
configuration objects CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane,
CfgCMOMesh3D and transformations. Such individual geometric primitives can
then be combined with each other in the CfgCMO configuration object to
describe complex collision objects. 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 2120.
DCM lets you define objects within the kinematics description with regard to
movable machine axes present 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 feature.

Attention

Starting at the lathe spindle, CMOs must be described as rotationally


symmetric (e.g. the table-top or chucking equipment, if appropriate).

2104 HEIDENHAIN Technical Manual TNC 640


Hollow objects 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 Qty.

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 in-
stead 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 2135.

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.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2105


7.6.4 DCM with M3D (Mesh3D)

General From 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 M3Dconverter HEIDENHAIN PC tool (integrated in
KinematicsDesign , see page 2110), 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.

2106 HEIDENHAIN Technical Manual TNC 640


Procedure for creating STL files from a CAD record

CAD First Clear up and group


step
 Delete / hide unimportant items
• Doors
• Tool changer
• Electrical cabinets
• Rubber bellows
• etc.
 Group machine elements as an assembly

Second Simplify assemblies, remove details, smear up,


step 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).

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2107


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 benefit: Resources saved (no. of
triangles: approx. 2,500)

Add missing parts

Internet version (do not us 'as is') Improved

2108 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.
Result: Danger of collision!

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2109


M3D Converter As mentioned above, you need to convert your STL files to M3D files using
(M3D files) the M3Dconverter HEIDENHAIN PC tool. Only these M3D files can be
integrated into the kinematics model as CMOs.
The M3Dconverter software is installed together with the KinematicsDesign
PC tool (from 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 the
M3Dconverter software via its own icon.
For the conversion of STL files to M3D files, a model check is required.

Note

The M3D Converter software is licensed and protected by a software


release module (USB dongle). If no software release module 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 M3D Converter software (ID 1124969-01).

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, re-
presentation 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.

2110 HEIDENHAIN Technical Manual TNC 640


Examples of issues with 3-D models

Caution:
Danger of collision!
mm 10 20 30

INCHES 1

Different units of Noise Holes


measurement used

Caution:
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

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2111


Features of M3D Converter

 Optimizing
• Simplifying
• Merging

Rest from the CAD export, irrele-

 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.

2112 HEIDENHAIN Technical Manual TNC 640


Attention

Important for DCMsafety


 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 re-
start). 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 struc-
tures 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

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2113


7.6.5 DCM – Function and operation
After the software option 40 has been enabled, collision monitoring is
permanently 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 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 2115), or
generally be excluded relative to other objects via the description table (see
"Collision exclusions" on page 2126).

Manual / Electronic In the Manual or Handwheel operating mode, the TNC 640 reduces the speed
Handwheel of the traverse motions if objects monitored for collision come into proximity,
operating modes in order to safely avoid a 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 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.

2114 HEIDENHAIN Technical Manual TNC 640


Program Run In the Positioning with Manual Data Input, Program Run, Single Block, or
modes of operation Program Run, Full Sequence operating mode, 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 minimum
safe distance calculated by the TNC 640 would be exceeded. This safe
distance is calculated by the TNC 640 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 mode: distance 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 2115.

Activating and There are various methods for activating and deactivating collision monitoring.
deactivating the
 Manually
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 the
PLC positioning movement does not affect the status information
provided 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.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2115


 NC syntax
• FUNCTION DCM OFF
This NC temporarily deactivates collision monitoring.
The deactivation is effective only until the end of the program or until
the next FUNCTION DCM ON. When another program is called, DCM is
active again.
• FUNCTION DCM ON
This NC command cancels an existing 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... ;e.g. Cycle 252
FUNCTION DCM ON; DCM restarts monitoring from here
L...
...

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.

2116 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 (from NC SW 34059x-05) provides 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
to 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 2115) and all definitions of excluded collisions (see "Collision
exclusions" on page 2126) are not included in 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 therefore not collide during traverse
motions, are automatically ignored by the TNC 640. This also applies if, within
two machine-axis definitions, collision objects are separated by
transformations. However, each of these objects can collide with the
individual CMOs traversed in other axes.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2117


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, CYLIN-
DERs and CUBOIDs) in the kinematics model with the most intersection cal-
culations. 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. Traver No. of Name


se the objects
axis
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

2118 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. This is now shifted via the translations (e.g. X, Y and Z axes) and
rotated or tilted via the rotations (e.g. A, B or C axis). A collision object (CMO
- Mesh3D, cuboid, cylinder or plane) is inserted in the kinObjects list
parameter in the kinematics description, taking the momentarily 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.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2119


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 with the configuration objects CfgCMOCylinder, CfgCMOCuboid,
CfgCMOPlane, CfgCMOMesh3D and transformations. Such individual geometric
primitives can then be combined with each other in the CfgCMO configuration
object to describe complex collision objects. 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).

2120 HEIDENHAIN Technical Manual TNC 640


Proceed as follows to define CMOs:
 Describe all required geometric primitives of the machine using the CfgCMO-
Cylinder, CfgCMOCuboid, CfgCMOPlane and CfgCMOMesh3D configuration
objects.
 Create a key name for the desired geometric primitive under CfgCMOCylin-
der, CfgCMOCuboid, CfgCMOPlane and CfgCMOMesh3D. Key names must be
unique.
 Open the CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane or CfgCMOMesh3D con-
figuration 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.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2121


"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, all of them having 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 supposed 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. 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
collision exclusions. Add the CMOs or collision objects to the list of objects
that cannot collide with the selected CMO.

2122 HEIDENHAIN Technical Manual TNC 640


Machine MP_dir
parameters Direction of the cylinder axis
Available from NCK software version: 597110-06.
Format: Menu choice
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
Orientation of the limit plane
Available from NCK software version: 597110-06.
Format: Menu choice
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: Menu choice
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 interfere with the
half-space in positive direction of the coordinate axis given in
axis.
Default: LimitMin
Access: LEVEL3
Reaction: RUN

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2123


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
With this entry, you define the height of the object (cylinder
primitive) in the axis direction defined
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 9 decimal places max.
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 9 decimal places max.
With this entry, you describe the orientation of the center point
of the cylinder bottom 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

2124 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 orientation 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 a 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

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2125


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.
As a general rule, 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.

2126 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.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2127


Machine MP_primitives
parameters List of references to objects of this CMO
Available from NCK software version: 597110-06.
Format: Menu choice
Options: Geometric primitives: CfgCMOCylinder, CfgCMOCuboid,
CfgCMOPlane, CfgCMOMesh3D and transformations
Default: No value, parameter optional
Access: LEVEL3
Reaction: RUN

MP_dontTest
List of CMOs not to be tested
Available from NCK software version: 597110-06.
Format: Menu choice
Options: Collision objects: CfgCMO or geometric primitives:
CfgCMOCylinder, CfgCMOCuboid, CfgCMOPlane and CfgCMOMesh3D
Default: No value, parameter optional
Access: LEVEL3
Reaction: RUN

MP_active
Include objects (CMOs) in the collision calculation
Available from NCK software version: 597110-06.
Format: Menu choice
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

2128 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 operating 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 < 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: Menu choice
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, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2129


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 continues. This behavior also applies to the virtual tool axis VT.

DCM with counter Any changes in position of manually-operated counter axes in the Manual and
axes 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.

Additional
tolerances for DCM
Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of the machining channel]
CfgDCM
maxAngleTolerance 205303
maxLinearTolerance 205305
manualOversize 205304

To ensure that collision monitoring works correctly even during machining


operations with Cycle 32 and associated tolerances (angle and linear axis
tolerances), it is necessary to limit the maximum possible deviation using
MP_maxAngleTolerance and MP_maxLinearTolerance and to specify an
oversize for collision objects using MP_manualOversize. The oversize
(MP_manualOversize) results from the maximum permissible tolerance
(angle tolerance, linear axis tolerances) that the machine manufacturer must
specify for Cycle 32, and from the dimensions of the tilted or rotated machine
components.

2130 HEIDENHAIN Technical Manual TNC 640


Note

 MP_maxLinearTolerance and MP_maxAngleTolerance can only be


used if ADP is active. Otherwise, a configuration error will be shown.
 MP_maxAngleTolerance, MP_maxLinearTolerance and
MP_manualOversize are only effective if the software option 40 (DCM),
M128 or TCPM function and Cycle 32 with tolerance are active.

In connection with DCM (Dynamic Collision Monitoring), the machine


manufacturer can specify a maximum permissible angle tolerance and linear
axis tolerance (MP_maxAngleTolerance, MP_maxLinearTolerance). A
common value for MP_maxAngleTolerance is e.g. 0.1°). An angle tolerance
programmed with Cycle 32 is then limited to this value if collision monitoring
is active, i.e. the maximum effective angle tolerance is the value from
MP_maxAngleTolerance. If DCM is switched off (via FUNCTION DCM or by
switching to kinematics without collision-object definitions), the value
programmed in Cycle 32 is effective again.
The angle specified in MP_maxAngleTolerance, in combination with the
machine kinematics, is the basis for the oversize defined in
MP_manualOversize for collision-object calculations by the control.
For DCM collision monitoring you enter the necessary oversizes of the
collision objects with a separate rotary axis filter in MP_manualOversize.
The following should be considered for the oversizes:
 For the rotary axes, such as a rotary table, assume the largest possible
radius during rotation (usually the table radius), or for a swivel head the
distance from the tool tip (longest tool) to the most distant point of the
swivel head.
 Use this information to calculate the non-considered offset of the rotary axis
which is possible this way. Do so by using the maximum angle tolerance
entered in MP_maxAngleTolerance to calculate the offset in the following
manner:
Example Swivel head
with max. tool length: 200 mm, head length: 480 mm, angle tolerance:
MP_maxAngleTolerance: 0.1 [°], MP_maxLinearTolerance: 0.05 [mm]
soffset = MP_maxLinearTolerance + r · MP_maxAngleTolerance / 360°
soffset = 0.05 + 680 mm · 0.1° / 360°
soffset = 0.239 mm
Since the oversize entered in MP_manualOversize is added to each length of
the objects in the calculation, the oversize to be entered in
MP_manualOversize must be halved:
MP_manualOversize = soffset / 2
MP_manualOversize = 0.239/ 2
MP_manualOversize = 0.2 [mm] (rounded up from 0.119 mm)

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2131


Note

Please note that when operating with multiple rotary axes, the offsets can
add up, and so you must also add the oversizes together.
Example:
Oversizetilting table = 0.119 [mm]
Oversizerotary table = 0.596 [mm]
MP_manualOversize = 0.8 [mm] (0.751 mm rounded up)

MP_maxAngleTolerance
Maximum angle tolerance for DCM
Available from NCK software version: 597110-10.
Format: Number
Input: 0 to 10 [°] with max. 9 decimal places
An angle tolerance programmed with Cycle 32 for M128 or the
TCPM function is limited to this value if collision monitoring is
active. If DCM is switched off (via FUNCTION DCM or by
switching to kinematics without collision-object definitions), the
value programmed in Cycle 32 is in effect again.
Default: 5 [mm]
Access: LEVEL3
Reaction: RUN

MP_maxLinearTolerance
Maximum linear axis tolerance for DCM
Available from NCK software version: 597110-10.
Format: Number
Input: 0 to 20 [mm] with max. 9 decimal places
A linear axis tolerance programmed with Cycle 32 for M128 or
the TCPM function is limited to this value if collision monitoring
is active. If DCM is switched off (via FUNCTION DCM or by
switching to kinematics without collision-object definitions), the
value programmed in Cycle 32 is in effect again.
Default: 9 [mm]
Access: LEVEL3
Reaction: RUN

MP_manualOversize
Maximum linear axis tolerance for DCM
Available from NCK software version: 597110-10.
Format: Number
Input: 0 to 1000 [mm] with max. 9 decimal places
If M128 or the TCPM function is active, DCM will increase the
dimensions of all CMOs by the oversize configured here. The
system will compensate for angle tolerances from Cycle 32.
Default: 0 [mm]
Access: LEVEL3
Reaction: RUN

2132 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> parameter or
ErrorCode <Action> 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 pro-
grammed
58 No NC channel or multi-channel system confi-
gured

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2133


Module 9064 Status information about 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/K <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 confi-
gured

2134 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
KinematicsDesign version on the TNC 640 supports you in optimizing,
adjusting and changing the kinematics 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.
The M3D Converter is not available on the control, see page 2110.

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

 By using the KinematicsDesign version on your control, you can edit and
change the active kinematics of your machine. The changes made imme-
diately 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.

September 2015 7.6 DCM—Dynamic Collision Monitoring (Option 40) 2135


7.7 Pallet editor

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 2466.
 Define the prototype in the directory PLC:\PROTO with the file name exten-
sion .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 Required field:
Definition of the entry
 PAL = pallet
 PGM = NC program
 FIX = fixture
NAME Required 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 datum by entering a number from the preset
table
LOCATION Optional field:
Location of the 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 processed.
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 automatically updates the tool usage file once you
have finished editing the entry.

2136 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 2610. 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:
 For a pallet entry of the PAL type: Call the
OEM_PALPG_PAL_CHNG macro if the path is configured
 For a fixture entry of the FIX type: Call the
OEM_PALPG_FIX_CHNG macro if the path is configured
 For a program entry of the PGM type: Call the
OEM_PALPG_PROLOG macro if the path is configured
 After running the NC program (for PGM) type: 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, Sin-
gle 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.
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.

September 2015 7.7 Pallet editor 2137


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:
A 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:
A 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.

2138 HEIDENHAIN Technical Manual TNC 640


Machine MP_stopAt
parameters Specifies when the pallet processing stops
Available from NCK software version: 597110-01.
Format: Menu choice
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 the
program run
Available from NCK software version: 597110-01.
Format: Menu choice
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/K <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

September 2015 7.7 Pallet editor 2139


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 – Set datum shift / datum
0: Do not run
1: Run immediately
Bit 1 – Set datum shift / datum
0: Do not run if the line is locked by an entry in the "LOCK"
column
1: Also run if the line is locked by an entry in the "LOCK"
column
CM 9281
PL B/W/D/K <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
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

2140 HEIDENHAIN Technical Manual TNC 640


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 execu-
and fixtures tion 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 execu-
tion 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.
To synchronize the current machine status and the look-ahead calculation with
an NC macro call, See "NC macros" on page 2603.

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
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/CfgSystem-
ErrorCode Cycle 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 ope-
rating 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

September 2015 7.7 Pallet editor 2141


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 an NC 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.
To synchronize the current machine status and the look-ahead calculation with
an NC macro call, See "NC macros" on page 2603.

2142 HEIDENHAIN Technical Manual TNC 640


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, HR 510 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 389.
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 written in the configuration object CfgA-
xisHandwheel.
 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

September 2015 7.8 Electronic handwheel 2143


Type of handwheel MP_type
Handwheel
Available from NCK software version: 597110-01.
Format: Menu choice
Options: NONE
No handwheel connected (value 0)
HRA110
HRA 110 handwheel adapter connected to X23 (value 1)
HR 510 / HR410
HR 510 or 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 510, HR 410 and
initialization HRA 110 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 2161
 HR 510: See "HR 510 portable handwheel" on page 2163
 HRA 110 with HR 150: See "HR 150 panel-mounted handwheels with HRA
110 handwheel adapter" on page 2179
 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

2144 HEIDENHAIN Technical Manual TNC 640


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 soft-
ware, and therefore incorrect positioning movements might occur. HEIDEN-
HAIN 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: Menu choice
Options: positive
Positive counting direction
negative
Negative counting direction
Default: positive
Access: LEVEL3
Reaction: RUN

September 2015 7.8 Electronic handwheel 2145


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 unintentio-
nal movements.

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.

2146 HEIDENHAIN Technical Manual TNC 640


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]: Handwheel with cross-circuit test
(cf. 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 510, 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 is effective only for handwheels with axis keys (e.g.


HR 410, HR 510, HR 520, HR 550) and panel-mounted handwheels HR 150
(with 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.

September 2015 7.8 Electronic handwheel 2147


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 510, 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, parameter optional
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.

2148 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.8 Electronic handwheel 2149


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: Signal 1 VSS or 11 µASS
 MP_EncoderFreq: Maximum input frequency
 MP_EncoderResistor: Terminating resistor

2150 HEIDENHAIN Technical Manual TNC 640


MP_input
Connection of the encoder handwheel
Available from NCK software version: 597110-01.
Format: Menu choice
Options: none
No handwheel connected to position encoder input
X01..X06
Handwheel at X01..X06 of MC connected
X35..X38
Handwheel at X35..X38 of MC connected
X201..X210
Handwheel at X201..X201 of CC connected
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, further
HSCI devices
(e.g. PLs) are not relevant.
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: Menu choice
Options: 1 Vpp
Input signal of encoder is 1 Vpp signal.
11 µA
Input signal of 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 encoder is TTL signal.
Default: 1 Vpp, optional parameter
Access: LEVEL3
Reaction: NOTHING

September 2015 7.8 Electronic handwheel 2151


MP_encoderFreq
Input frequency of position encoder input for handwheel
Available from NCK software version: 597110-01.
Format: Menu choice
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: Menu choice
Options: without
Without terminating resistor
120 ohms
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 mul-
tiplied 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 soft-
ware, and therefore incorrect positioning movements might occur. HEIDEN-
HAIN handwheels typically feature 100 detent steps per revolution.
 MP_maxDelayRaster: Number of detent steps for limiting the axis trailing.
For a handwheel with detent, trailing may occur if the handwheel is rotated
quicker than the axis is able to follow. With this parameter, trailing can be
limited to a maximum value. The actual trailing is calculated from the
distance per handwheel revolution, the number of detent steps per revolu-
tion and the specified limit.

2152 HEIDENHAIN Technical Manual TNC 640


MP_countDir
Axis-dependent counting direction of the handwheel
Available from NCK software version: 597110-02.
Format: Menu choice
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 to 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

September 2015 7.8 Electronic handwheel 2153


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
Trailing limit for 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

2154 HEIDENHAIN Technical Manual TNC 640


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 oscillo-
scope.
 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 [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

September 2015 7.8 Electronic handwheel 2155


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 revolu-
tion for each axis moved by handwheel.
 In MP_speedFactor, define the handwheel transmission for three transmis-
sion ratios.

MP_distPerRevol
Distance 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 step in [%]
[1] = second step in [%]
[2] = third step 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.

2156 HEIDENHAIN Technical Manual TNC 640


7.8.4 Assign 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.
As an alternative for handwheels with axis keys, you can define the axis
assignment for e.g. an HR 410, HR 5xx, (with evaluation of the keys by the NC)
or for three HR 150s via HRA 110 through MP_selectAxes; See
"MP_selectAxes" on page 2148.
Use Module 9035 to find the axis to which the handwheel is assigned.
Module 9036 Write NC status information
The module modifies status information from the NC. The status information
to be modified is transferred by function number.
 Function Select handwheel axis:
• the handwheel connected to connector X23 of the MC is assigned to an
axis.
• a modification to the handwheel axis will not be seen immediately for
interrogation with Module 9035.
The new information is available to the Module 9035 at the earliest in
the subsequent cycle of the PLC.
 Set the handwheel transmission ratio:
• the handwheel transmission ratio is defined.
• a modification to the transmission ratio will not be seen immediately for
interrogation with Module 9035. The new information is available to the
Module 9035 at the earliest in the subsequent cycle of the PLC.
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 IV 0 to 10: Subdivision factors
(MP_axisKeyIV)
4 Handwheel subdivision V 0 to 10: Subdivision factors
(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 %
(from software as fraction of maximum
version value (in 0.01%)
597110-08)
9 Reserved –

September 2015 7.8 Electronic handwheel 2157


Number of Function Value
the function
10 Limit value for jog increment 0.0001..50 mm or
–1: Cancel limitation
–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 –
(from software for operating mode group 0..
version
597110-08)
23 Lock handwheel operation –
(from software for operating mode group 0..
version
597110-08)
24 Handwheel operation –
(from software conforms to machine
version operating mode for operating
597110-08) mode group 0..
25 Lock configured encoder –
(from software handwheel of axis 0..
version
597110-08)
26 Release configured encoder –
(from software handwheel of axis 0..
version
597110-08)

2158 HEIDENHAIN Technical Manual TNC 640


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 status information>
PS B/W/D/K <Value to be written>
CM 9036
PL B/W/D/K <Error code>
0: Status written
1: Incorrect status code
2: Transferred value is out of range
3: Input disabled
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 configura-
tion)

September 2015 7.8 Electronic handwheel 2159


Module 9035 Read NC status information
The module reads status information from the NC. The status information to
be read is transferred by 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 several
999: Virtual tool axis
>=0: Number of 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 or 0: Slow
HR 510 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

Call:
PS B/W/D/K <Number of the desired status information>
CM 9035
PL B/W/D/K <Status information>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information is invalid
ErrorCode 20 Call not in a submit/spawn job
58 No NC channel or multi-channel system configu-
red

2160 HEIDENHAIN Technical Manual TNC 640


7.8.5 HR 410 portable handwheel
 In MP_type, select 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 selec-
tion are to be mapped to the PLC inputs.
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

Evaluation of the keys via the Evaluation of the keys via the PLC:
NC: MP_initValues [0] = 1
MP_initValues [0] = 0

September 2015 7.8 Electronic handwheel 2161


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
(cf. iTNC 530: MP7641, bit5)
Available from NCK software version: 597110-08.
Format: Menu choice
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, parameter optional
Access: LEVEL3
Reaction: RUN

2162 HEIDENHAIN Technical Manual TNC 640


7.8.6 HR 510 portable handwheel
 In MP_type, select HR 510.
 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 510 in NC mode, whether the keys for axis selec-
tion are to be mapped to the PLC inputs.
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 510 handwheel:


 MP_initValues [0]:
• 0: Evaluation of the keys by NC, including LEDs, except for three
function keys
• 1: Evaluation of all keys by the PLC
 Entry in MP_initValues [1 to 7]: Reserved

Evaluation of the keys via Evaluation of the keys via


the NC: the PLC:
MP_initValues [0] = 0 MP_initValues [0] = 1

September 2015 7.8 Electronic handwheel 2163


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 510 (keys for
low feed rate, medium feed rate, and high feed rate).

MP_plcInputs
Evaluation of the handwheel keys
(cf. iTNC 530: MP7641, bit5)
Available from NCK software version: 597110-08.
Format: Menu choice
Options: The parameter specifies the state in which the axis keys on the
handwheel are mapped to PLC inputs.
Handwheel HR 510 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, parameter optional
Access: LEVEL3
Reaction: RUN

2164 HEIDENHAIN Technical Manual TNC 640


7.8.7 HR 420 portable handwheel

Settings  Set MP_type = HR 420


 In MP_rasterPerRevol define whether you are using an HR 420 with or wit-
hout 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:
 If MP_plcInputs is set to "Always", the keys of the HR 420 or HR 5xx (PLC
operands I160 to I168) are reported to the PLC even if the HR is not active.
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.
 Use MP_plcStartStop 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 and MP_plcCtrlKey you can define whether the
"Teach In" and CTRL keys are to be evaluated automatically by the NC
("FALSE") or 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.
Operation of the soft keys is only permitted if you enter the value "never" in
MP_lockPlcSoftkeys.
Danger

The value "never" may only be entered in MP_lockPlcSoftkeys if the


vertical soft keys (PLC soft keys) do not have any functions that could pose
danger to the operator (e.g. starting an axis movement or a spindle
movement).

September 2015 7.8 Electronic handwheel 2165


All keys are evaluated by the NC. Certain keys are mapped to PLC operands.

F1 F2 F3 F4 F5

X Y Z IV V

↑ Handwhee ↓
l 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)

2166 HEIDENHAIN Technical Manual TNC 640


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. 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, See "Override devices"
on page 2182. 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
(cf. iTNC 530: MP7641, bit5)
Available from NCK software version: 597110-06.
Format: Menu choice
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, parameter optional
Access: LEVEL3
Reaction: RUN

September 2015 7.8 Electronic handwheel 2167


MP_plcPlusMinus
Evaluation of the "+" and "–" keys 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.
(cf. iTNC 530: MP7641, bit2)
Available from NCK software version: 597110-06.
Format: Menu choice
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)
(cf. iTNC 530: MP7641, bit3)
Available from NCK software version: 597110-06.
Format: Menu choice
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 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

2168 HEIDENHAIN Technical Manual TNC 640


MP_plcTeachIn
TEACH IN key evaluated through the PLC (only for handwheels
with display)
(cf. iTNC 530: MP7641, bit7)
Available from NCK software version: 597110-06.
Format: Menu choice
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 through the PLC (only for handwheels with
display)
(cf. iTNC 530: MP7641, bit8)
Available from NCK software version: 597110-06.
Format: Menu choice
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 if handwheel is active (only
for handwheels with display)
(cf. iTNC 530: MP7641, bit9)
Available from NCK software version: 597110-06.
Format: Menu choice
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 You will find information about the freely definable soft-key menu for the
definition for HR 420, HR 5xx under "Soft-key project file for HR 420, HR 5xx" on page 2073.
HR 420, HR 5xx

September 2015 7.8 Electronic handwheel 2169


7.8.8 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

2170 HEIDENHAIN Technical Manual TNC 640


Settings  In MP_rasterPerRevol define whether you are using an HR 5x0 with or wit-
hout 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 2165.
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)

September 2015 7.8 Electronic handwheel 2171


7.8.9 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.

2172 HEIDENHAIN Technical Manual TNC 640


HR 550 wireless The HR 550FS wireless handwheel must always be used together with the
handwheel 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.

September 2015 7.8 Electronic handwheel 2173


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.

2174 HEIDENHAIN Technical Manual TNC 640


Switching the To switch the HR 550FS off or on, press the CTRL key and the medium soft
HR 550 FS 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. After you have pressed the MOD key, this
soft key is displayed in the second soft key row in the Programming and
Editing mode of operation if the value "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.

September 2015 7.8 Electronic handwheel 2175


Settings  Set MP_type = HR550
 In MP_rasterPerRevol define whether you are using an HR 5x0 with or wit-
hout 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 2165.
 If required, the optional MP_allowCharger enables use of an additional char-
ging station.
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 n.
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)

2176 HEIDENHAIN Technical Manual TNC 640


With MP_allowCharger = TRUE, the message Place handwheel in charging
station on the wireless handwheel HR 550FS is not displayed if the
handwheel reports power supply over any HRA 551FS. This makes it possible
to assemble several HRA 551FS on one machine, whereby only one of these
functions as the actual wireless transmitter / receiver to the HR 550FS. These
HRA 551FS used as pure charging stations can be connected to any X23
connector of the MB or X29 of the MC via the standard connection cable (e.g.
ID 749368-xx, ID 749369-xx, ID 296466-x). These HRA 551FS must not be
entered into the MP configuration for handwheels. Only the HRA 551FS used
as the wireless transmitter/receiver to the HR 550FS is configured with the
MP configuration for handwheels.
The display HR in charging tray in the handwheel configuration dialog refers
with MP_allowCharger = TRUE that both power supply and serial connection
from the HRA 551FS to the HR 550FS exist.

September 2015 7.8 Electronic handwheel 2177


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.

2178 HEIDENHAIN Technical Manual TNC 640


7.8.10 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]: 0 (is not evaluated)
• 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]: 0 (is not evaluated)
• MP_initValues [2] = 0
 Not all inputs on the HRA 110 must be assigned. However, you must block
open inputs with a dummy plug (ID 244198-02). Unblocked inputs cause an
error message. To configure the open input you can set any unused axis
from the selection list of MP_selectAxes.

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 handw-
heels connected to the HRA 110. The values in CfgAxisHandwheel over-
write these global values.

September 2015 7.8 Electronic handwheel 2179


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..7]: Reserved
Note

Switch position 1 on the selection switch (ID 270908-xx) corresponds to the


left stop.

2180 HEIDENHAIN Technical Manual TNC 640


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

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

September 2015 7.8 Electronic handwheel 2181


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:
 Add a data block for each override device under
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: The PLC program sets the value as API signal from the spindle
or the NC channel. If no value is transferred by the PLC
program, the PLC tries to read the override
source from the IOCP file.

2182 HEIDENHAIN Technical Manual TNC 640


 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: Menu choice
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 an 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

September 2015 7.9 Override 2183


MP_device
Device (machine operating panel or handwheel)
Available from NCK software version: 597110-06.
Format: Menu choice
Options: MOP1 to MOP4
1st to 4th MB machine operating panel
HR1
Active handwheel
Default: No value, parameter optional
Access: LEVEL3
Reaction: NOTHING

MP_mode
Evaluation of override values
Available from NCK software version: 597110-01.
Format: Menu choice
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

2184 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.9 Override 2185


7.9.2 Override functions

Settings in the configuration editor MP number


System
PLC
CfgPlcOverrideS
[Key name of spindle]
Minimum 104401
Maximum 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 parame-
ter 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

2186 HEIDENHAIN Technical Manual TNC 640


MP_source
Source for override values
Available from NCK software version: 597110-01.
Format: Menu choice
Options: Key name for override device from CfgPlcOverrideDev
Default: PotentiometerS
Access: LEVEL3
Reaction: NOTHING

Override The potentiometer adjusted with MP_sourceOverride is effective during


potentiometer thread cutting for shaft speed and feed rate.
during thread
cutting

Note

If you are switching 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: Menu choice
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 TNC 640)
During thread cutting, the potentiometer is effective for the
feed rate knob. The potentiometer for the spindle speed
override is not active.
Default: No value, parameter optional
Access: LEVEL1
Reaction: RUN

September 2015 7.9 Override 2187


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 [%]

Feed rate override

Settings in the configuration editor MP number


Channels
ChannelSettings
[Key name of the machining channel]
CfgPlcOverrideF
Minimum 201901
Maximum 201902
source 201903

 In the channel-sensitive parameter object CfgPlcOverrideF, create a para-


meter 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 parame-
ter 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.

2188 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: Menu choice
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.

September 2015 7.9 Override 2189


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 immedia-
tely 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 [%]

Rapid traverse
override
Settings in the configuration editor MP number
Channels
ChannelSettings
[Key name of the machining channel]
CfgPlcOverrideR
Minimum 202001
Maximum 202002
source 202003

 In the channel-sensitive parameter object CfgPlcOverrideR, create a para-


meter set for each machining channel (slide) to which a rapid traverse over-
ride 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

2190 HEIDENHAIN Technical Manual TNC 640


MP_source
Source for override values
Available from NCK software version: 597110-01.
Format: Menu choice
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 imme-
diately 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 [%]

September 2015 7.9 Override 2191


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 max. 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 max. 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.

2192 HEIDENHAIN Technical Manual TNC 640


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

September 2015 7.9 Override 2193


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 interrogate the current state
(See "Operating modes" on page 1900).
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 2094).
Module 9036 Write NC status information
The module modifies status information from the NC. The status information
to be modified is transferred by function number (see also "Module 9036 Write
NC status information" on page 2157).
Call parameter:

Number Function Value


of the
function
10 Jog 0.0001 to 50 mm:
increment Jog increment limitation
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 status information>
PS B/W/D/K <Value to be written>
CM 9036
PL B/W/D/K <Error code>
0: Status written
1: Incorrect status code
2: Transferred value is out of range
3: Input disabled

2194 HEIDENHAIN Technical Manual TNC 640


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 configura-
tion)

Module 9035 Read NC status information


The module reads status information from the NC. The status information to
be read is transferred by function number (see also "Module 9035 Read NC
status information" on page 2160).
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/K <Jog increment>
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 1 Status information is invalid
ErrorCode 20 Call not in a submit/spawn job
58 No NC channel or multi-channel system configu-
red

September 2015 7.10 Incremental jog positioning 2195


7.11 Operating times and system times

7.11.1 Operating time recording

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.

2196 HEIDENHAIN Technical Manual TNC 640


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.

Machine MP_displayPlcTimes
parameters Display PLC operating times
Available from NCK software version: 597110-01.
Format: String
Input: Binary value
Bits 0 to 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 code number
Available from NCK software version: 597110-01.
Format: String
Input: Binary value
Bits 0 to 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 code number
Available from NCK software version: 597110-01.
Format: String
Input: Binary value
bit 0: "Control on" operating time – locked, reset 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).

September 2015 7.11 Operating times and system times 2197


MP_textNumber
Dialog messages for PLC operating times
Available from NCK software version: 597110-01.
Format: Array [0...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

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 correspond to PLC operating times 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 <PLC operating time> parame-
ErrorCode ter

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. The corresponding counter is
stopped for each set bit.
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 <PLC operating time> parame-
ErrorCode ter

2198 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 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/K <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 <Number of operating time>
ErrorCode parameter

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 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 <Number of operating time>
ErrorCode parameter

20 Call not in a submit/spawn job

September 2015 7.11 Operating times and system times 2199


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 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 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 <Number of operating time>
ErrorCode parameter

4 Invalid value for


<Number of alarm marker> parameter
20 Call not in a submit/spawn job

2200 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 menu item Settings
 Select the Date/time menu item
or:
 Open the MOD dialog via the MOD key
 In the Settings and Information window select the entry System settings
 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 zone
Conversion 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 if an NTP server exists in the control network
that sets the time default for the control time

September 2015 7.11 Operating times and system times 2201


7.12 Tool changer
You control the tool changer through PLC outputs.
If the tool changer is to be driven by controlled axes, use PLC axes See "PLC
axes" on page 1107. 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 TOOL.T, the pocket table is TOOL_P.TCH.
Both files are saved in the root directory TNC:\TABLE\.
Definition of the tool 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 2489 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

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,TYPE
 With MP_exclude you can reverse the logic of MP_select from a positive or
negative list.
 If a default view is to be defined for the pocket table as well, repeat the
steps with the key name TCH.DEFAULT for the pocket table.

2202 HEIDENHAIN Technical Manual TNC 640


With Modules 9092, 9093, 9094 and 9096 you can read the tool and 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 release the pocket table with Module 9300 if you want to edit
it with Modules 9305, 9306, 9341 or 9342. After you are finished editing, you
must release the pocket table with this module.
If modules 9305, 9306, 9341 or 9342 are called while a T strobe is pending,
the lock implemented by the PLC run-time system for the lines relevant to the
T strobe is canceled in the pocket table. It is no longer necessary to previously
call Module 9300 (from NC software 597110-09).

Attention

Whenever relocating tools in the pocket table, HEIDENHAIN recommends


protecting the consistency of the table data via Module 9300 for the
duration of the entire relocation process.

In the status display you can press the STATUS TOOL soft key to display the
active tool data.

September 2015 7.12 Tool changer 2203


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 2497.

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/inch] 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/inch] 12 4 FLOAT
L-OFFS Tool offset: Length ±9999.9999 [mm/inch] 12 4 FLOAT
LBREAK Breakage tol.: length 0 – 3.2767 7 4 FLOAT
RBREAK Breakage tol.: radius 0.0 – 0.9999 7 4 FLOAT

2204 HEIDENHAIN Technical Manual TNC 640


Data field Meaning Value range Column Length Data type
width in
bytes
NMAX Maximum 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
ACC ACC active?  0: N (= no) 8 4 UINT
 1: Y (= yes)
AFC-LOAD Reference power for AFC 0 – 99 5 4 UINT
[%]
KINEMATIC Tool-carrier kinematics 20 characters 20 32 STRING

September 2015 7.12 Tool changer 2205


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 turning-tool table by its own
columns, See "Inserting or deleting additional columns in/from an existing
table" on page 2497.:

Data field Meaning Value range Column Length Data


width 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/inch] 12 4 FLOAT
XL Tool length 2 ±9999.9999 [mm/inch] 12 4 FLOAT
YL Tool length 3 ±9999.9999 [mm/inch] 12 4 FLOAT
DZL Oversize in tool ±9999.9999 [mm/inch] 12 4 FLOAT
length 1
DXL Oversize in tool ±9999.9999 [mm/inch] 12 4 FLOAT
length 2
DYL Oversize in tool ±9999.9999 [mm/inch] 12 4 FLOAT
length 3
RS Cutting radius ±9999.9999 [mm/inch] 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
CUTWIDT Width of recessing ±9999.9999 [mm/inch] 12 4 FLOAT
H 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

2206 HEIDENHAIN Technical Manual TNC 640


Elements of the In the basic configuration of the control (factory default setting), the pocket
pocket table table TOOL.TCH contains the following 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 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/inch] 12 4 FLOAT
the PLC
P2 Value for evaluation in ±9999.9999 [mm/inch] 12 4 FLOAT
the PLC
P3 Value for evaluation in ±9999.9999 [mm/inch] 12 4 FLOAT
the PLC
P4 Value for evaluation in ±9999.9999 [mm/inch] 12 4 FLOAT
the PLC
P5 Value for evaluation in ±9999.9999 [mm/inch] 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

September 2015 7.12 Tool changer 2207


PLC modules 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-OF2)
29: Spindle angle during calibration (CAL-ANG)
30: PTYP
31: Maximum shaft speed for this tool
32: Lift-off function
33: OEM (P1)

2208 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: Pocket locked (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 to search from>
CM 9092
PL B/W/D/K <Line number (in case of error –1)>
PL B/W/D/K <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

September 2015 7.12 Tool changer 2209


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

2210 HEIDENHAIN Technical Manual TNC 640


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
PL B/W/D/K <Element value>
PL B/W/D/K <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)
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 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

September 2015 7.12 Tool changer 2211


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=–)
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)

2212 HEIDENHAIN Technical Manual TNC 640


41: Chatter detection active / not active
CM 9350
PL B/W/D/K <Element value>
PL B/W/D/K <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
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...)
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (element value read)
Error 1 Error code in NN_GenApiModuleErrorCode
or in <Error number> see above
NN_GenApiModule 2 Invalid value for <Element number> parame-
ErrorCode ter
7 Line number does not exist
20 Call not in a submit/spawn job
36 No tool table with status M
41 Data type for the element is not supported

September 2015 7.12 Tool changer 2213


Module 9351 Write data to tool table
Module 9351 writes the contents of a line in the tool table with the status M.
The value must be given as an integer value.
It is also possible to change the tool table in the PLC program with Module
9351 without a strobe asynchronously to the NC program. In this case the
programmer is responsible for any interference with the NC program.
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>
–1: Write all indexes of a tool
PS B/W/D/K <Element number>
See Module 9350
PS B/W/D/K <Element value>
CM 9351
PL B/W/D/K <Error number>
0: No error, element value was written
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
6: Element value is out of range
7: Error while writing to the file
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (element value written)
Error 1 Error code in NN_GenApiModuleErrorCode
or in error code see above
NN_GenApiModule 2 Invalid value for <Element number> parame-
ErrorCode ter
7 Line number does not exist
20 Call not in a submit/spawn job
36 No tool table with status M

2214 HEIDENHAIN Technical Manual TNC 640


Module 9094 Write data into a tool and datum table
Prerequisite for table: M status must be set.
You transfer the line number and the element number of the element to be
overwritten.
The value is given as a natural number, shifted by the number of decimal
places that can be entered.
The execution of Module 9094 reinitializes the geometry.
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)>
PS B/W/D/K <Element value>
CM 9094
PL B/W/D/K <Error number>
0: No error. Element was written.
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: Element value is outside the permissible range
7: Error while writing to file
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 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 Invalid value for <Element value> parameter

September 2015 7.12 Tool changer 2215


Module 9096 Delete a line from the tool table
You remove a line from the tool table and cancel any link with a replacement
tool.
The module must be called in a submit job or spawn job.
Call:
PS B/W/D/K <Tool number / pocket number>
PS B/W/D/K <Mode>
Bit 0: Delete entries in pocket table
0: Pocket table remains unchanged
1: Tool number in pocket table is deleted
Bit 1: Tool or pocket number
0: Transferred value = tool number
1: Transferred value = pocket number
CM 9096
Error code:

Marker Value Meaning


NN_GenApiModule 0 Line was deleted
Error 1 Error code in NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid pocket or tool number
ErrorCode 20 The module was not called in the submit/
spawn job
36 File error

2216 HEIDENHAIN Technical Manual TNC 640


Module 9300 Lock and release the pocket table
You can lock the pocket table with Module 9300 for exclusive PLC access, if
you want to edit it with PLC Modules 9305, 9306, 9341 or 9342.
After you are finished editing, you must release the pocket table with this
module.
If modules 9305, 9306, 9341 or 9342 are called while a T strobe is pending,
the lock implemented by the PLC run-time system for the lines relevant to the
T strobe is canceled in the pocket table. It is no longer necessary to previously
call Module 9300 (from NC software 597110-09).
Whenever relocating tools in the pocket table, HEIDENHAIN recommends
protecting the consistency of the table data via Module 9300 for the duration
of the entire relocation process.
Constraint:
 The module can only be called in a spawn or submit job.
Call:
PS B/W/D/K <Identifier for the lock/release>
0: Unlock
1: Lock
CM 9300
PL B/W/D/K <Error code>
0: Locked / unlocked
1: Could not be locked
2: Could not be unlocked
3: Parameters for locking are invalid
4: Call was not in a submit/spawn job
Error code:

Marker Value Meaning


NN_GenApiModule 0 Pocket table locked/released
Error 1 See <error code> or
NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid parameter for locking
ErrorCode 6 Table is already locked/is not reserved by
the PLC
20 Call not in a submit/spawn job

September 2015 7.12 Tool changer 2217


Module 9304 Copy OEM values from the pocket table
Module 9304 copies the contents of columns p1 to p5 of the active pocket
table into a memory area of the PLC.
Constraint:
 The module can only be called in a spawn or submit job.
Call:
PS B/W/D/K <Magazine number>
PS B/W/D/K <Pocket number>
PS B/W/D/K <Double-word address>
CM 9304
Error code:

Marker Value Meaning


NN_GenApiModule 0 OEM value was copied
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Invalid value for <Pocket number>
ErrorCode parameter
2 Invalid value for
<Magazine number> parameter
4 Invalid value for <Double-word address>
parameter
20 Call not in a submit/spawn job
36 File error in pocket table
41 Read of columns p1 to p5 failed because of
invalid number format

2218 HEIDENHAIN Technical Manual TNC 640


Module 9305 Move tools in the pocket table
Module 9305 moves a tool to another pocket in the pocket table.
Constraints:
 If the module is called while a T strobe is pending, the lock implemented by
the PLC run-time system for the lines relevant for the T strobe is canceled
in the pocket table. It is no longer necessary to previously call Module 9300
(locking and releasing the pocket table).
Whenever relocating tools in the pocket table, HEIDENHAIN recommends
protecting the consistency of the table data via Module 9300 for the duration
of the entire relocation process.
Call:
PS B/W/D/K <Original pocket>
PS B/W/D/K <New pocket>
CM 9305
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (moving successful)
Error 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 2 Invalid pocket number
ErrorCode 6 Magazine management is active
20 Call not in a submit/spawn job
30 No valid tool entered in the original pocket
36 Error while accessing the file

September 2015 7.12 Tool changer 2219


Module 9306 Move tools between magazines
Module 9306 is used to move a tool between the defined magazines, or to
move it beyond the magazine borders.
Constraints:
 If the module is called while a T strobe is pending, the lock implemented by
the PLC run-time system for the lines relevant for the T strobe is canceled
in the pocket table. It is no longer necessary to previously call Module 9300
(locking and releasing the pocket table).
Whenever relocating tools in the pocket table, HEIDENHAIN recommends
protecting the consistency of the table data via Module 9300 for the duration
of the entire relocation process.
Call:
PS B/W/D/K <Magazine origin>
PS B/W/D/K <Pocket origin>
PS B/W/D/K <Magazine target>
PS B/W/D/K <Pocket target>
CM 9306
Error code:

Marker Value Meaning


NN_GenApiModule 0 No error (pocket exchange successful)
Error (M4203) 1 Error. See NN_GenApiModuleErrorCode
NN_GenApiModule 1 Pocket number invalid
ErrorCode (W1022) 2 Magazine number invalid
6 Magazine management is active
20 Call not in a submit/spawn job
30 Programmed pocket is not occupied
36 Error while accessing the file

2220 HEIDENHAIN Technical Manual TNC 640


Special tools In the pocket table:
 In the column ST you define tools as special tools.
For oversized special tools:
 Leave a pocket free in the tool magazine on both sides of the pocket (see
illustration).
 In the column L you lock pockets that are to remain empty.

P5 P6 P7 P8 P9 P10

In the column F (fixed pocket), you can define individual tools which are to be
returned to their original pockets, although variable pocket coding was
selected.

Tool life,
replacement tool
Settings in the configuration editor MP number
System
ToolSettings
CfgToolBehaviour
M101BlockTolerance 202206

You can enter two tool life values (TIME1 and TIME2) and one replacement tool
(RT) for each tool in the tool table.
For the TOOL CALL:
 CUR_TIME (current tool age) > TIME1: The NC sets the marker
NN_ChnToolLifeExpired.
You decide in the PLC what should happen when NN_ChnToolLifeExpired is
set (e.g. display a PLC error message).
Use Module 9355 to request the tool life of the tool used in an NC channel.
Module 9356 can be used to modify the information about the lifetime of a tool
used in an NC channel. If a tool is explicitly marked as worn, it is locked by an
entry in the TL column of the tool table, and is no longer inserted. If the
function M101 is active, the NC inserts an automatic tool change to a
replacement tool.
With M101, activate the automatic insertion of the replacement tool after
expiration of the tool life (TIME2). With M102, deactivate the insertion. The tool
is not changed immediately after expiration of the tool life, but rather it varies
depending on the processor load.

September 2015 7.12 Tool changer 2221


When M101 is active, the TNC 640 limits the look-ahead in NC blocks to a
traverse time of 1 minute. After this time has expired, the TNC 640 determines
the next possible time point for the tool change.

Note

Please also note the detailed information on the automatic tool-change


function when it exceeds the tool service life (M101) in the TNC 640 User's
Manual for Conversational Programming.

With MP_M101BlockTolerance you specify the number of NC blocks by


which the function M101 can be delayed in addition to the delay caused by
look-ahead. The resulting time period by which the tool change is delayed
depends on the content of the NC blocks (e.g. feed rate, path).
MP_M101BlockTolerance goes into effect when the machine operator has
not defined the syntax element BT when calling the function M101. If
MP_M101BlockTolerance is not set and BT is not defined, the value 1
become effective by default.
The larger the value is in MP_M101BlockTolerance, the more efficient the
execution of the NC program will be and the less effect any run-time delay
through M101 will have. Please note that this will delay the automatic tool
change.
The value for MP_M101BlockTolerance or for the syntax element BT when
calling M101 should be chosen so that the tool-change time point is delayed
by approx. 10 seconds—for example according to the following rule of thumb:
Syntax element BT during call of M101 or MP_M101BlockTolerance = 10 /
[mean traverse time of NC blocks in seconds]
The result must be rounded up or (if >100) set to the maximum value of 100.

MP_M101BlockTolerance
Delay of the tool change time point with M101
Format: Number
Input: 1 to 100 [NC blocks]
When M101 is active, the look-ahead is limited to a traverse
time of approx. 1 minute.
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.
Default: No value, parameter optional (= 1)
Access: LEVEL1
Reaction: RESET

Note

In standard NC programs (NC blocks with RR, RL or R0), the same radius
must be defined for the replacement tool as for the original tool.

No radius compensation is given in NC blocks with surface-normal vectors.


One delta value for tool length and radius (DR, DL) can be entered for each tool
in the tool table. These delta values are taken into account by the control.

2222 HEIDENHAIN Technical Manual TNC 640


If the radius of the replacement tool differs from the original tool, you must
define this in the DR column. The delta value must always be negative. If you
enter a positive delta value, the error message Tool radius too large
appears.
You can suppress this error message with the M function M107, and
reactivate it with M108.

PLC Operand / Description Type

NN_ChnToolLifeExpired M
Tool life 1 expired

Note

The status of NN_ChnToolLifeExpired is reset by the PLC runtime system


after the end of an NC program.

The current tool age is calculated in the Program Run, Single Block and
Program Run, Full Sequence operating modes if the following conditions are
fulfilled.
 Spindle ON
 No F MAX
 F enable
 Control in operation (*)
After program interruption with the INTERNAL STOP soft key, M02, M30 or END
PGM, the tool age counter is stopped.
The tool age counter does not run in the Manual Operation and Electronic
Handwheel operating modes.
The user can reset the current tool age by entering zero.

September 2015 7.12 Tool changer 2223


Module 9355 Query tool life
Use Module 9355 to request information about the tool life of the tool used in
an NC channel.
Constraints:
 During execution of a machining program, the system only updates the
information about the tool life approximately every 30 seconds.
 If the tool life is not being monitored, the module returns the value 0 for all
modes.
Call:
PS B/W/D/K <Channel number>
Number of the NC channel – pass 0 for systems with only
one NC channel
PS B/W/D/K <Mode>
This applies to modes 1 to 5: Tool life in seconds
0: Request the status
1: Request the current tool life (CUR_TIME)
2: Request the maximum tool life (TIME1)
3: Request the critical tool life (TIME2)
4: Request the tool life remaining until the maximumtool
life
5: Request the tool life remaining until the critical tool life
CM 9355
PL D <Result>
For mode 0:
0: Neither maximum nor critical tool life reached
1: Maximum tool life exceeded
2: Critical tool life exceeded
3: Maximum and critical tool life exceeded
4: Tool explicitly marked as worn
5: Tool explicitly marked as worn and maximum tool life
exceeded
6: Tool explic

You might also like