Technical Manual
Technical Manual
Technical Manual
TNC 360
259 90 up to version 06
260 02 up to version 17
280 49 up to version 17
April 1996 208 793 21 · 3.3 · 4/96 · S · Printed in Germany · Subject to change without notice
(208 793 E1)
Preface
This Technical Manual is intended for all manufacturers and distributors of machine tools. It
contains all the necessary information for the assembly, electrical installation, start-up and PLC
programming for the HEIDENHAIN contouring controls TNC 360.
Whenever HEIDENHAIN improves the hardware or software in these controls you will receive a free
delivery of updated information. Please arrange and insert this updated information in your manual
without delay. This will ensure that your manual always remains at the current revision level.
You can use extracts from this manual for your machine documentation. An enlargement of the
manual format (17 cm x 24 cm) by a factor of 1.225 will produce pages in A4 format.
No manual can be perfect. Like all living things it must grow and change. Among other things, it
lives from your impulses and suggestions for improvement. Please help us by giving us your ideas.
Update Information 1
Introduction 2
Mounting and Electrical Installation 3
Machine Integration 4
Machine Parameters
5
Markers and Words
6
PLC Programming
7
Data interfaces
8
Original Equipment Manufacturer’s (OEM) Cycles 9
Positioning Module 10
Appendix 11
Update Information No. 8
In mid February 1996 software version 17 was released for the NC software types 260 02 and 280
49, and for the newly introduced software types 260 060 (for 1 MB EPROMs) and 280 610 (for 2 MB
EPROMs). The new software types were introduced for the Polish conversational language.
With MP7640 = 6 you can activate the functions for the HR410 handwheel.
MP7645.0 determines whether the keys on the handwheel are assigned to the NC or the PLC.
MP7645.0 = 0 MP7645.0 = 1
NC key assignment PLC key assignment
O96 O97
X IV I160 I161
Handwheel O98 O99
Y V control panel I162 I163
ACTUAL
O100 O103
Z POSITION
CAPTURE I164 I167
LOW FEED MEDIUM HIGH FEED
RATE FEED RATE RATE
O104 O105 O106
I168 I169 I170
– + I171 I172
O109 O110 O111 O109 O110 O111
I173 I174 I175 I173 I174 I175
With the exception of the A, B and C function All keys are assigned to the PLC. Handwheel
keys, all keys are assigned to the NC. axis and handwheel interpolation are set by
MP7670.x determines the interpolation factor module 9036. With W766 you can change the
for low, medium and high speeds. MP7671.x feed rate by pressing the axis direction keys.
determines the low, medium and high speed
values. The speed is given as a percentage factor
of the manual feed rate (MP1020.x).
A dummy plug (Id.-Nr. 271 958 03) is available for an EMERGENCY STOP.
There are connecting terminals on the adapter for the contacts from the emergency stop button
and the permissive buttons (maximum load 1.2 A)
Connector layout:
VL ID number 281 429.. KA ID number 296 466.. VB ID number 296 467 05 HR 410
ID number
296 469 01
Housing Shield Housing Housing Shield Housing Housing Shield Housing Housing Shield
6 6 WH/BK 6 6
7 7 YL/BK 7 7
5 5 WH/RD 5 5
4 4 WH/BL 4 4
2 2 WH/GN 2 2
3 3 WH/YL 3 3
1 1 WH/BR 1 1
WH/BR 3 Contacts 1 + 2
WH/BL 1 Contact 1
YL/BK 3 Contact 2
WH/BK 4 Contact 2
Zustimmtaste
Permissive 1 1
button Zustimmtaste
Permissive 2 2
button NOT - AUSSTOP
EMERGENCY
Kontakt22
Contact
1 2
Kontakt11
Contact
1 2
Cable adapter
Kabeladapter
4
Kontakt
Contact 22
2 Contact 11 X2
Kontakt X2
1 Contact 11
Kontakt
3 Contact 22
Kontakt
3
Kontakt 1+2
Contact 1+2
2 Contact 22 X1
X1
Kontakt
1 Contact 1
Kontakt 1
• When machine parameters are being downloaded via the V.24 interface, comments beginning
with the characters ";" or "*" can also be downloaded, either before or after the machine
parameter value.
• Machine parameter MP5020, bit 9 decides whether the control sends the EOT character after
receiving the ETX character.
• The error message "ERROR IN TRANSFERRED VALUE“ is displayed after a timeout is exceeded
during transfer via the V.24 interface.
The new edition of the Technical Manual for TNC 360 incorporates the data from Update Information
issues No. 1 to 6 in the appropriate chapters and sections. The description of TNC 355 has been
deleted since this unit is no longer in our product program.
We will continue to send new information on the hardware and software of the TNC 360. Please file
the Update Information issues here.
The PL 410 B provides the same number of switching inputs/output as on the PL 410.
The connector layout is compatible with the PL 410. The dimensions have changed slightly
near the connections X15 to X22.
In contrast to the PL 410, the PL 410 B will be available in two versions. The following version
can be connected to the TNC 360:
64 PLC inputs
31 PLC outputs
1 output “Control is operational“
The logic unit must be connected to the PL 410 B with a new connecting cable.
For NC software types 260 02 and 280 49, software version 13 was released in mid-June1994,
software version 14 at the end of June, and software version 15 at the beginning of July.
The input range for machine parameter MP1350 (type of reference mark approach) was
expanded. An input value of 3 selects encoders with distance-coded reference marks, and
thedirection of traverse reverses when the trip dog for the reference end position is crossed.
Data transfer in blockwise mode (ACK/NAK protocol) could be interrupted if the control
characters STX or ETB were transmitted incorrectly. Since the TNC did not know the cause of
the interruption, it sends NAK (after a delay in which no further data are transferred) if a block
was not completely recognized due to a faulty STX or ETB.
If ACK is not received within a certain time, the error message TRANSFERRED DATA
INCORRECT N is generated.
If bit 3 in machine parameter MP7641 is set, the electronic handwheel is selected in each
operating mode (initially before REF traversing) to be able to interrogate the inputs of the
handwheel keys (except axis keys) in the PLC. The axis keys on the handwheel and the
handwheel impulses do not become active until handwheel mode is selected. After an error the
handwheel is not selected again until the handwheel key is pressed.
If the operating voltage of the control is outside the limit values, the blinking error message
PROCESSOR CHECK ERROR M is displayed.
The input range of machine parameter MP4220 has been expanded to 0 ... 65535.
The memory for the executable PLC program has been increased from 28K bytes to 32K bytes.
The value for the analog voltage of the analog input at connector X8 is transferred to word
W392.
The meaning of machine parameter MP7225 (automatic block generation with the capture
actual position key or with PLC marker M2829) has been changed as follows:
MP7225 = 1 : Block generation with the capture actual position key
MP7225 = 2 : Block generation with PLC marker M2829
MP7225 = 0 : No block generation
The resolution of the feed rate display depends on the programmed feed rate:
Feed rate ≤ 31 999 mm/min (previously 29 999 mm/min): display step 2 mm/min
Feed rate > 31 999 mm/min (previously 29 999 mm/min): display step 20 mm/min
### If, in an OEM cycle that was run from the EPROM, the feed rate was defined via Q parameter,
a greatly excessive feed rate was ouput.
In late February 1994, software version 12 was released for the NC software 260 02 and 280 49.
Note:
In software version 11, the deceleration ramp is too flat when the feed rate is changed at constant
contour transitions during operation with feed precontrol. This error was corrected in software
version 12.
Software version 11 for software types 260 02 and 280 49 was released at the end of January 1994.
Software version 10 was not released for general distribution.
• Machine parameter 7411 defines whether during execution of the TOUCH-PROBE block the
current compensation values for probe length and radius should be taken from the central tool
file or from the calibration process.
MP7411 = 1 : Probe length and radius values from the tool file
MP7411 = 0 : Probe length and radius values from the calibration process
MP 7411 is also effective for tool length compensation in the digitizing cycles. This machine
parameter was already available in version 08, but it was not documented.
• Machine parameter MP7225 was introduced for automatic generation of NC blocks in the
PROGRAMMING AND EDITING mode. With the "actual position capture" key (teach-in) it is now
possible to generate a positioning block in plain language dialog (not in ISO mode) with a
maximum of 3 axes and without feed rate, radius compensation or M-functions. This positioning
block is inserted below the currently addressed block in the selected NC part program. The
current actual position values become the nominal position values. The axis is selected in the
dialog "AXIS SELECTION =" in the MOD operating mode. Here up to 3 out of 4 axes can be
selected by pressing the corresponding axis keys.
• If the machine parameters are erased, the RS-232-C/V.24 interface is now preset to FE mode.
• PLC inputs I160 to I175 (HR 332 handwheel) now generate signal edges. The positive edge is
assigned to markers M1660 to M1675, the negative flank to markers M1860 to M1875.
• If machine parameter MP7641, Bit 2 = 1, the interpolation factor for the handwheel can be set
both from the keyboard as well as from PLC module 9036. If Bit 2 = 0, the machine parameter
functions as before (input either from the keyboard or from PLC module 9036).
• The NC saves the code number entered in the MOD mode in Doubleword D276.
• Machine parameter MP810 defines the modulo value for reducing the position values of the
auxiliary axes. Machine parameter MP7470 has no effect on auxiliary axes. Rotary axes as NC
axes are always reduced to the range 0° to 359.999°. Machine parameter MP810 was already
available in version 08, but it was not documented.
Call :
PS B/W/D/K <Axis> (0..3 for X/Y/Z/4)
PS B/W/D/K <Override value> (0..10 000)
CM 9124
PL B/W/D <Error code>
0: Override was set
1: Invalid axis was entered
2: Axis is not defined as auxiliary axis
3: Override value is invalid
Error status after call: M3171 = 0 : Override was set
= 1 : Error condition see above
If more than one of the PLC modules 9120/9121/9123 for controlling the movement of auxiliary
axes is called within one PLC scan, only the last called PLC module is executed. The module
9124 can be called in addition to the above modules within one PLC scan, but it will always
become effective after the other module.
• In PLC module 9036 (transferring PLC status information to the NC) the interpolation factor can
be set for all axes by transferring the value 4 or 5.
• The PLC can inhibit the reference pulse for specific axes through Word W608 (bit-
coded,....4zyx).
Bit = 1 : Reference pulse is not evaluated
Bit = 0 : The next reference pulse is evaluated
• By setting marker M2615 the reference mark of the spindle is evaluated again. The marker is
reset by the NC.
• Marker 2510 fixes the spindle potentiometer setting at 100%. Marker M2511 has the same
effect on the feed rate potentiometer.
• CC blocks in OEM cycles are effective only locally and are not transferred into the calling
program.
In earl September 1993 the software version 09 was released for the software types 260 02 and
280 49.
• If marker M2612 (Suppress position exchange in the tool table) is set before a T strobe is set
(M2046), the position numbers are not exchanged. The PLC acknowledges the T strobe without
having exchanged in the tool magazine and resets the PLC marker M2612. The new tool
number is shown inverted and the associated tool data (length and radius) are activated. The
tool number is shown inverted in the status display until the tool has physically been changed. If
the control is switched off and on in this condition, the last exchanged tool becomes active
again.
• During execution of cycle 13 (spindle orientation) the NC sets the new marker M2408. This
marker can be evaluated by the PLC for the spindle orientation and should afterwards be reset
by the PLC.
1 Software
In July 1993 the following software was released:
The software numbers 280 49x 01 to 07 were not delivered. The new software version became
necessary because new logic units can also accommodate 2M byte EPROMs (see below in Section
2 "Hardware").
• The PLC can limit the maximum feed rate through the doubleword D596. In order to ensure
compatibility to previous PLC programs the doubleword D596 is preset with the value
300 000 mm/min after control switch-on or after interruption of the PLC run.
The doubleword D596 has no effect with the new cycles "Tapping" (Cycle 2) and "Rigid Tapping"
(Cycle 17).
• In the newly introduced machine parameter MP60, axes can be defined as auxiliary axes.
These axes cannot be moved by an NC program. They are controlled exclusively by the PLC.
All auxiliary axes work independently of each other. Auxiliary axes always move in trailing
mode. The following modules are available for the PLC to control the axes:
Module 9120: Positioning of auxiliary axes
Module 9121: Stopping the auxiliary axes
Module 9122: Status inquiry of auxiliary axes
Module 9123: Traversing the reference point of an auxiliary axes
• Spindle orientation can be suppressed at the beginning of Cycle 17 "Rigid Tapping" with
machine parameter MP7160. At the beginning of the cycle, the spindle voltage is decelerated
with the ramp from MP3410.1 to the value 0 volts.
In this case it is not possible to cut into the same thread several times!
• Up to 20 NC "tool def" blocks can be read-in during blockwise transfer without central tool
memory, whereby the tool def block must be read-in before the associated "tool call". When a
"PGM call" NC block is read-in or when a user cycle is called, the NC blocks with "tool def" are
considered up to the above mentioned limit and provided that the proper order is followed. A
violation of these preconditions releases the error message "TOO MANY TOOLS".
• By setting the static PLC marker M2612 the PLC can now prevent the exchange of pocket
numbers in the central tool memory during a P output.
• Function FN19 was introduced, with which two numerical or Q parameter values with an
accuracy of 1/1000 (i.e., three places after the decimal point) are transferred into the PLC
doublewords D280 and D284. A value of 2.5, for example, is filed in the doublewords as 2500.
The unit of measure of the calling NC program is set in marker M2150 (millimeter=0/inch=1).
During transfer the NC sets the strobe marker M2149. The transfer must be acknowledged by
the PLC with the marker M2611.
• Marker M2614 was introduced. Setting this marker blocks the output of PLC functions
(M/S/T/Q output) by the NC. The marker is set and reset by the PLC; it is read by the NC.
• Marker M2827 was introduced. It is set by the PLC and causes the following behavior in case
of an external EMERGENCY STOP and erasable positioning error:
Machining is not aborted ("control in operation" symbol off, strobe signal reset). Instead,
machining is merely interrupted as in an NC STOP (control-in-operation symbol blinks). This
permits machining to be resumed with NC START after the error has been corrected. This
marker functions only for the output of M/S/T/Q strobes.
• Now a maximum of 32 Q parameters can be transferred for user cycles. To do this, the 'DLG-
DEF' or 'DLG-CALL' blocks must be programmed several times in the user cycle, whereby in
the third DLG block only the first five entries can be evaluated.
• The incremental jog positioning can be activated or deactivated (dialog "JOG-INCREMENT: ...")
in the 'ELECTRONIC HANDWHEEL' operating mode by pressing the 'ELECTRONIC
HANDWHEEL' key, provided that marker M2498 is set.
• In the 'PROGRAMMING AND EDITING' operating mode the electronic handwheel can be used
to move the axes, provided that in machine parameter MP7641 bit 1 = 1. The interpolation
factor (regardless of handwheel model) and the handwheel axis (for HR130) can be change
only in the 'ELECTRONIC HANDWHEEL' operating mode. A handwheel axis, once chosen,
remains in effect even when the operating mode is changed.
Simultaneous operation of the handwheel interface and the RS-232-C interface at differing
baud rates (38 400 and 19 200 baud) results in the error message "BAUD RATE NOT
POSSIBLE".
• Module 9150
During an active M/S/T output the PLC can use module 9150 to define an NC block, which is
then executed after the M/S/T strobe is acknowledged, before the control continues the NC
program. An NC block can also be defined if no program is being run. The block is then
executed immediately.
Call:
PS B/W/D/K <Instruction code>
PS B/W/D/K <Address of the parameter block in the B/W/D range>
CM 9150
PL B/W/D <Error code>
The positioning of an axis is started by presetting a target position (in the reference system), a
feed rate and a flag register. The axis is positioned without regard to other processes in the
control. There is no contour interpolation with other axes.
Conditions:
The given axis must be activated via MP10 and configured as an auxiliary axis via MP60.
The values for rapid traverse, analog voltage for rapid traverse, acceleration, etc., must be
properly set in the machine parameters.
For axes with automatic reduction (modulo value in MP810.x) the axis is always moved in the
shortest direction to the target position, unless the target position is entered as an incremental
value.
There is no checking for violations of the limit switch ranges!
The axis must be stationary. If the axis is already moving, the positioning must be terminated
beforehand with module 9121.
If the axis was in the reference point traversing mode, this state is canceled. The positioning
always builds on the momentary counter contents.
If the modules 9120, 9121 and 9122 are called several times during a PLC scan, only the last
instruction is executed.
If a "positioning error" status was set in this axis it is erased.
Potential errors:
A non-existent axis was transferred.
An axis was transferred that was not identified as an auxiliary axis in MP10 and MP60.
The axis is already moving.
Call:
A positioning started beforehand with modules 9120 or 9123 can be canceled at any time with
module 9121.
Conditions:
The given axis must be activated via MP10 and configured in MP60 as an auxiliary axis.
If modules 9120, 9121 and 9122 are called several times for the same axis during a PLC-scan,
only the last instruction will be executed.
Potential errors:
A non-existent axis was transferred.
An axis was transferred that was not configured in MP10 and MP60 as an auxiliary axis.
The given axis is already stationary.
Call:
For a certain axis a bit-coded status word is transferred that contains information on the
momentary operating state of this axis.
Conditions:
Status changes causes by commands that the PLC sends to control the auxiliary axes
(modules 9120, 9121, 9123) are not recognized until the next PLC scan.
After switch-on, bit 1 (axis over reference point) is erased.
It is possible to position the axis without traversing the reference point first.
Call:
The module starts positioning in a preset direction, which continues until a reference point is
found or the positioning is canceled with module 9121.
Conditions:
The given axis must be activated via MP10 and configured as an auxiliary axis via MP60.
The values for rapid traverse, analog voltage for rapid traverse, acceleration, etc., must be set
in the machine parameters.
There is no checking for violations of the limit switch ranges!
The axis must be stationary. If the axis is already moving, the positioning must be canceled
beforehand with module 9121.
The feed rate override is not included in the calculation.
The state "reference point not yet traversed" is set for the axis.
A reference point that already exists in this axis is erased, but not the numerical value of the
axis. This is not reinitialized until the reference point is found.
If modules 9120, 9121 and 9122 are called several times during a PLC scan, only the last
instruction is executed.
If a "positioning error" status was set in this axis it is erased.
The positioning is stopped as soon as the reference point is reached. Since the axis must
decelerate before it can stop, it comes to rest behind the reference point in the direction of
motion.
Call:
PS B/W/D/K<Axis> (0 to 3 for X/Y/Z/4)
PS B/W/D/K<Feed rate> (mm/min)
PS B/W/D/K<Flag register> Bit 0 = 1: negative traverse direction
= 0: positive traverse direction
CM9123
PL B/W/D <Error code>
0: Positioning was started
1: A non-existent axis was transferred
2: The axis is not configured as an auxiliary axis
3: The axis is already moving
2 Hardware
The part numbers of the LE 360C logic units that can accommodate 2M byte EPROMs are:
The 2-M byte EPROMs occupy only the sockets IC-P1 and IC-P2. IC-P3 and IC-P4 remain vacant.
The jumper located next to IC-P1 should then be inserted in the setting 2M!
You will receive Update Information issues on the TNC 360/TNC 335 hardware and software
whenever developments warrant. This information will then be included in Supplementary Issues
that you can integrate into the appropriate chapters of the Technical Manual.
3 Software 2-6
3.1 NC Software 2-6
3.1.1 Software and hardware versions 2-7
3.1.2 Software option 2-8
3.2 PLC Software 2-8
3.3 EPROM sockets 2-9
The HEIDENHAIN TNC 360 contouring control is designed for use with drilling and milling machines.
The HEIDENHAIN TNCs consist of several units. The principle subassembly is the logic unit. The
logic unit is joined to the other units and the TNC accessories by connecting cables.
••• •••
Common
•••
Touch probe NC PLC PLC inputs
data area
Electronic handwheel
•••
PLC outputs
Data interfaces
The logic unit contains the electronics for both the NC and the PLC sections of the control.
The common data area contains the machine parameters and the PLC markers and words. The
machine parameters define the hardware-configuration of the machine (ranges of travel,
acceleration, number of axes etc.). The PLC markers and words are used for the exchange of
information between the NC and the PLC.
Cycle times Block processing time: 40 ms (for 3D straight lines without radius com-
pensation and with 100% PLC utilization)
Control loop cycle time: 6 ms
PLC cycle time: 24 ms
Position feedback Incremental HEIDENHAIN linear and angular encoders, preferably with
distance-coded reference marks, or incremental HEIDENHAIN rotary
encoders
Integrated PLC • Programming in the form of a list of instructions, max. 4000 PLC
commands
• Entry by HEIDENHAIN keyboard or data interface
After switching on the control, the NC and PLC software numbers are displayed on the screen. The
software number can also be directly requested with the aid of the MOD function.
3.1 NC Software
The 8-digit NC software number identifies the type of software, the dialogue language (language of
the country) and the software version.
260 02 0 15
Software-Typ
Software type
Landessprache
National language
00 == German
deutsch
1 = tschechisch
1 = Czech
2 = französisch
2 = French
3 = italienisch
34 == Italian
spanisch
45 == Spanish
portugiesisch
66 == Swedish
schwedisch
77 == Danish
dänisch
88 == Finnish
finnisch
99 == Dutch
niederländisch
Software-Version
Software version
In addition to the above-listed languages, the TNC can always display English, which may be
selected via the machine parameter MP7230.
259 90x 02 to 05 02 to 05 02 to 05 06 -
260 02x (1-MB - - from 07 from 07 from 07
EPROM)
280 49x (2-MB - - - from 08 from 08
EPROM)
Only the software types 260 02 and 280 49 will continue to be developed.
Software Releases
HEIDENHAIN releases new versions of NC software in irregular intervals.
The “Digitizing with TS 120“ software option can be retrofitted. The kit is available under Id. Nr.
265 310 01.
IC-S [SW-Modul]
IC-P3
IC-P1
IC-P5 [PLC-EPROM]
IC-P4
IC-P2
If the 2-MB EPROMs are used, only the sockets IC-P1 and IC-P2 are needed. IC-P3 and IC-P4
remain vacant. The jumper located next to IC-P1 must then be set to position 2M.
5 Encoders 3-19
5.1 Linear encoders 3-19
5.2 Angular encoders 3-19
5.3 Encoder inputs for sinusoidal signals (7 to 16 mApp) 3-20
5.3.1 Connector assignments 3-20
5.3.2 Connecting cable 3-20
5.4 Encoder inputs for square-wave signals 3-21
5.4.1 Connector assignments 3-21
5.4.2 Connecting cable 3-21
14 Dimensions 3-58
14.1 LE 360 C 3-58
14.2 Keyboard units 3-59
14.2.1 TE 355 A 3-59
14.2.2 TE 355 B 3-60
14.3 Visual display units 3-61
14.3.1 BE 212 3-61
14.3.2 BF 110 3-62
The TNC 360 is not subject to export restrictions. An export version is not necessary.
Logic unit
LE 360 C
Id.-Nr. 270 641 .. (for connecting the BE 212)
Id.-Nr. 270 642 .. (for connecting the BF 110)
TNC keyboard
TNC 360: TE 355 A (Id.-Nr. 255 015 01) TE 355 B (Id.-Nr. 255 016 01)
BE 212 (Id.-Nr. 242 370 01) BF 110 (Id.-Nr. 267 209 01)
Id.-Nr. 258 991 79 Same as Id.-Nr. 258 991 98, but with software module since 1991
Id.-Nr. 264 085 99 New PLC- and graphics board since 7/91
Id.-Nr. 264 085 79 Like Id.-Nr. 264 085 99, but with software module since 7/91
Noise voltages are mainly produced and transmitted by capacitive and inductive coupling. Electrical
noise can be picked up by the inputs and outputs to the equipment, and the cabling.
LE
Obstructive
elements
LE
Heat generating
elements
2.3 Humidity
Permissible humidity: < 75 % in continuous operation,
< 95 % for not more than 30 days p.a. (randomly distributed).
In tropical areas it is recommended that the TNC is not switched off, so that condensation is avoided
on the circuit boards. The heat generation prevents condensation and has no further disadvantages.
– Mechanical accessibility
– Permissible environmental conditions
– Electrical noise immunity
– The electrical regulations in effect in your country
>577
>110
Minimum clearance 80 80
for servicing!
recommended:= 40 40
approx. 250 mm
°C °C
100
Air
* outlet *
30
Maintain clearance °C
for screwdriver
*
160
Connecting cables
must not hinder °C °C
swivel movement * *
100
Air
of the control
30
inlet
218.5
132.5
PL
°C
5
* 32 Illustration of
R max. swivel range.
The minimum angle of
swivel for exchange
of subassembly should
be at least 90°.
40
145
270
40°
40
The VDU must be installed with a minimum clearance of 25 mm to the housing. It is recommended
especially, that a large area is left free above the unit for heat removal.
When mounting the VDU it must be remembered that this unit is very sensitive to magnetic pick-up.
The picture position and geometry can be disturbed by stray magnetic fields. Alternating fields cause
periodic movement or distortion of the picture.
For this reason, keep a minimum distance of 0.5 m between the VDU casing and the source of any
disturbance (e.g. permanent magnets, motors, transformers etc.)
B = Signal ground
4.1 Overview
The supply voltages must meet the following specifications:
1
) Voltage surges up to 36 V - - - permissible for t< 100 ms.
2
) The BF 110 has its own line power connection, which also powers the internal ventilation.
4
) No longer included in product program
If the operating voltage of the control (5V on the processor board) is outside the limit values a
blinking error message "PROCESSOR CHECK ERROR M" is displayed.
The PLC section (PLC inputs and outputs) of the LE and PL is run from the 24 V machine control voltage
supply, generated according to VDE 0160.
Superimposed ac components, such as those caused by a three-phase bridge rectifier without smoothing,
are permissible up to a ripple factor of 5% (see DIN 40110/10.75, Section 1.2). This means an absolute
upper voltage limit of 32.6 V and an absolute lower voltage limit of 18.5 V.
U
32.6 V
31 V
20.4 V
18.5 V
Terminal Assignment
X13 +24 Vdc switched off by EMERGENCY STOP
X12 0V
X3 Pin 12 + 24 Vdc not switched off by EMERGENCY STOP
If the ”EXCHANGE BUFFER BATTERY” message appears, the batteries must be exchanged.
The 3 batteries may be found behind a screw cap in the power supply section of the logic unit.
As well as the batteries, the logic unit contains an additional energy store, mounted on the
processor board, for buffering the memory contents.
This means that the mains can be switched off when replacing the batteries. The energy
store will ensure that the memory is retained while the batteries are exchanged.
The BE 212 visual display unit is powered through the LE (connector X9).
BF 110
X1 power supply
The control controls the actual position with a measuring step of 0.001 mm or 0.001°. Encoders with
a graduation period of 0.001 mm or 0.001° to 1 mm or 1° may be used.
It does not matter whether the encoder or encoder has one or several reference marks.
However, HEIDENHAIN recommends the use of encoders with distance-coded reference marks,
since the traversing distance when homing on the reference marks is thereby reduced to a
minimum. See chapter "Machine Integration."
For linear measurement with the aid of a rotary encoder and a ballscrew you could use, for example,
an ROD 450.
In order to meet accuracy requirements, HEIDENHAIN recommends line counts of at least 18 000.
The interface complies with the recommendations in VDE 0160, 5. 88 for separation from
line power.
Measuring
system LE
max. 30 m
With standard extension cable (Id.-Nr. 262 006 ..)
With armoured extension cable (Id.-Nr. 262 016 ..)
A connecting cable with power supply lines Ø 1 mm2 PUR [3 (2x0.14) + (2x1.0) mm2],
Id.-Nr. 244 955 01 can have a maximum length of 60 m.
The interface complies with the recommendations in VDE 0160, 5. 88 for separation from
line power.
In order to be able to connect an encoder to the square-wave signal input of the logic unit, the
sinusoidal signal from the encoder must be converted to a square-wave signal. This conversion is
performed by the interpolation and digitizing electronics (EXE). The interpolation and digitizing
electronics is either integrated into the encoder or is an independent unit.
If the interpolation and digitizing electronics does not have its own power supply, it can be supplied
from the logic unit. In order to ensure a correct supply voltage, the total length of the connecting
cable between the interpolation and digitizing electronics and the logic unit must be limited (see the
following diagram).
Extension cable X6
Verlängerungskabel LE
ROD 426.xxx8
Id.-Nr. 262 011..
1024lines
1024 Striche
max. 20 m
Winkelmeßsysteme:
Angle encoders:
X6
ROD 271 C Extension cable
Verlängerungskabel LE
RON 275 C Id.-Nr. 262 011..
max. 20 m
or:
oder:
Extension cable
Verlängerungskabel Connection cable
Verbindungskabel
ROD 250 C X6
RON 255 C EXE LE
ROD 700 C 602 E
RON 705 C Id.-Nr. 262 006.. Id.-Nr. 262 004..
5fach
5-fold
max. 30 m max. 10 m
bzw.
or:
Extension cable
Verlängerungskabel Verbindungskabel
Connection cable
ROD 250 C X6
RON 255 C EXE LE
ROD 700 C 801
RON 705 C Id.-Nr. 262 006.. Id.-Nr. 233 764..
5fach
5-fold
max. 30 m max. 50 m
If necessary, linear encoders can also be connected to the LE via interpolation and digitizing
electronics.
BROWN •
1 1 Nominal value output 1
2 2 Analog input
YELLOW
3 3 Nominal value output 2
RED/BLUE
4 4 do not use
PINK
5 5 Nominal value output 3
G R AY / P I N K
6 6 do not use
RED
7 7 Nominal value output 4
VIOLET
8 8 Nominal value output S axis
WHITE
9 9 0V Nominal value output 1
10 10 Analog input
GREEN
11 11 0V Nominal value output 2
12 12 do not use
G R AY
13 13 0V Nominal value output 3
BLUE
14 14 0V Nominal value output 4
BLACK
15 15 0V Nominal value output S axis
The interface complies with the recommendations in VDE 0160, 5. 88 for separation from
line power.
The connecting cable to the nominal value outputs may not have more than one intermediate
terminal clamp. The clamp must be made in an earthed connection box. This is necessary when the
cable must branch to physically separate servo inputs. It is only possible to earth the screening of
the servo leads in this way. If required, suitable connection boxes are available from HEIDENHAIN
with the Id.-Nr. 251 249 01.
Connection box
Suggested solution for connecting and wiring the screening in the connection box:
• Leads
Leads are
are provided
provided
with end sleeves.
with en sleeves.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
X Y Z IV S
SERVO
If the manufacturers want to use their own cable, HEIDENHAIN offers a 15-pin D-sub connector
with solderable leads (Id.-Nr. 243 971 ZY).
The interface complies with the recommendations in VDE 0160, 5. 88 for separation from
line power.
BE 212 LE
max. 25 m
BF 110 LE
max. 25 m
For start-up and adjustment of the 3D touch probe systems see Chapter "Machine Integration".
8.2.1 TS 120
The touch probe system TS 120 is connected directly to the logic unit via a cable adapter.
See also Section "Mounting dimensions".
• 1 1
2 2
PK
3 3 Standby
WH
• • 4 4
1 1 5 5 +15V ±10% (U P)
BN BN/GN
2 2 6 6 + 5V ± 5% (U P)
GY
TS
GY
3 3 •
WH/GN
7 7 Battery warning
120 4 4 8 8 0V (UN)
GN GN
5 5 9 9 Trigger signal
YL YL
6 6 10 10 Trigger signal
11 11
12 12
13 13
14 14
15 15
3m max. 7 m max. 30 m
SE 510
WH/BN
•
• WH • • GY • • 1 1 Internal screen (0V)
0V 1 1 1 7 2 2
BN YL APE GY
UP 2 2 2 5 3 3 Standby
3 3 BN RD 3 510 3 YL 4 4 Start
GY WH BN
Flash signal 4 4 4 2 5 5 15V ±10% (U P)
5 5 GN 5 6 6 6
GN BL BL
IR-signal 6 6 6 1 7 7 Battery warning
Internal 7 7 7 4 WH 8 8 0V (UN)
WH/ WH/
screen (0V) BK BK 9 9
GN 10 10 Trigger signal
11 11
12 12
13 13
14 14
15 15
The signals may be inverted by changing the switch positions S1 to S4 in the APE 510.
See the operating instructions for the TS 511.
Please install the transmitter/receiver unit SE 510 either insulated from, or electrically connected to
the machine, as it must take up a definite potential, also under vibration. The earthing screw of
the APE 510 must be joined to the machine signal ground by a potential compensating lead
(≥ ∅ 6 mm²).
The connection to the peripheral unit is made via a cable adapter which is attached to either the
operating console or the control cabinet. See also the section "Mounting dimensions". For
connection to the peripheral unit, HEIDENHAIN offers a standard connecting cable
(Id.-Nr. 274 545 01) , length 3 m.
X25 V.24/RS-232-C
D-sub connection (female 24-pin)
V.24-Adapter Block
3m max. 17 m
Peripheral
X25 Data interface RS-232-C/V.24
unit
Id.-Nr. 274 545 01 Id.-Nr. 239 758 01 Id.-Nr. 239 760..
• WH/BN WH/BN
• • • • WH/BN WH/BN
•
GND 1 1 • GN •
1 1 • 1 1 • YL • 1 1 GND Chassis
TXD 2 2 2 2 2 2 2 2 RXD Receive data
YL GN
RXD 3 3 3 3 3 3 3 3 TXD Transmit data
GY PK
RTS 4 4 4 4 4 4 4 4 CTS Clear to send
PK GY
CTS 5 5 5 5 5 5 5 5 RTS Request to send
BL BN
DSR 6 6 • RD • 6 6 6 6
RD
6 6 DTR Data terminal ready
GND 7 7 7 7 7 7 7 7 GND Signal ground
8 8 8 8 8 8 8 8
9 9 9 9 9 9 9 9
10 10 10 10 10 10 10 10
11 11 11 11 11 11 11 11
12 12 12 12 12 12 12 12
13 13 13 13 13 13 13 13
14 14 14 14 14 14 14 14
15 15 15 15 15 15 15 15
16 16 16 16 16 16 16 16
17 17 17 17 17 17 17 17
18 18 18 18 18 18 18 18
19 19 19 19 19 19 19 19
BN BL
DTR 20 20 20 20 20 20 20 20 DSR Data set ready
21 21 21 21 21 21 21 21
22 22 22 22 22 22 22 22
23 23 23 23 23 23 23 23
24 24 24 24 24 24 24 24
25 25 25 25 25 25 25 25
The interface complies with the recommendations in VDE 0160, 5. 88 for separation from
line power.
The HR 330 is connected to the logic unit by means of the cable adapter Id.-Nr. 249 889 ..
See also Section "Mounting dimensions".
The HEIDENHAIN extension cable Id.-Nr. 249 814 .. may be used to increase the connection
distance.
HR Adapter LE Electronic
HR 330 X11 handwheel
Id.-Nr. 251 534 .. Id.-Nr. 249 889 .. Id.-Nr. 249 814 ..
BLUE
EMERGENCY OFF 2
BLUE
max. 24V 1 • • •
1 1 1 1
WHITE WHITE
2 2 2 2 0V
BLUE
1 1 3 3 3 3
BLUE BROWN BROWN
HR 330 2 2 4 4 4 4 +12V ± 0.6V(U V)
GREEN
3 3 5 5 5 5
YELLOW YELLOW YELLOW
4 4 6 6 6 6 DTR
BROWN
5 5 7 7 7 7
WHITE GREEN GREEN
6 6 8 8 8 8 RXD
• • • 9 9 9 9
max. 50 m
The adapter includes a cable with a 9-pin connector for the logic unit, and two terminals for
connecting the 24 V of the EMERGENCY STOP control circuit (max. load 1.2 A).
See also section "Mounting dimensions".
It may be attached directly to the logic unit, or via an extension cable (Id.-Nr. 249 814 ..).
The HR 130 (Id.-Nr. 254 040 ..) is available in several versions (standard cable length 1 m):
– Small knob; axial cable exit: version 01
– Small knob; radial cable exit: version 02
– Large knob; axial cable exit: version 03
– Large knob; radial cable exit: version 04
– Ergonomic knob; radial cable exit: version 05
HR 130 LE Electronic
X11 handwheel
Id.-Nr. 254 040 .. Id.-Nr. 249 814 ..
• • • •
1 1 1 1
WHITE WHITE
2 2 2 2 0V
HR 130 3 3 3 3
BROWN BROWN
4 4 4 4 +12V ±0.6V (U V)
5 5 5 5
YELLOW YELLOW
6 6 6 6 DTR
7 7 7 7
GREEN GREEN
8 8 8 8 RXD
9 9 9 9
max. 50 m
The HR 332 is connected to a cable adapter on the panel through a connecting cable of 5 m length.
The connecting cable is available with or without metal armor tubing. The maximum cable length
from the HR to the LE is 50 m.
max. 50 m
The adapter has a cable with 9-pin connector for the logic unit, two connecting terminals for the 24 V
of the EMERGENCY OFF circuit of the control (max. load 1.2 A) and 3 connecting terminals for the
permission switch circuit. The permission keys are make-contacts (24 V/1.2 A).
10 Handwheel input
The first two handwheels are permanently assigned to the X and Y axes. The third handwheel can
be assigned to the X, Y, Z or IV axes either through an optional step switch or via machine
parameter. (See Section "Handwheel" in Chapter "Machine Integration").
X31 24 V
X1 S2 Achswahl (Option)
AXIS SELECTION (OPTIONAL)
S1 Unterteilungsfaktorwahl (Option)
X2
INTERPOLATION FACTOR (OPTIONAL)
X3 X23 LE X11
max. 20 m max. 50 m
Another step switch (optional) is available for selecting the interpolation factor of the handwheels.
The interpolation factor of the switch must be evaluated in the PLC and is displayed on the TNC
screen, but it cannot be changed via TNC keyboard. If the handwheels are mounted without the step
switch, however, the interpolation factor is selected for each axis via TNC keyboard.
Pin layout
Handwheel inputs X1, X2, X3
Pin layout
The 24 V power supply of the PLC must not be connected to the handwheel adapter, since this
would cancel the electrical isolation of the PLC inputs and outputs. The handwheel adapter must be
supplied by the 24V supply of the NC (low voltage electrical separation according to VDE 0160,
5.88).
55 PLC inputs and 31 PLC outputs can be connected directly to the logic unit. One PLC I/O board
(model PL 410 B or PL 410), with 64 PLC inputs and 31 PLC outputs, can be connected to the logic
unit.
PLC outputs
Permissible load: resistive load, inductive load only with a quenching diode parallel to the inductance.
No more that half of the outputs may be switched on at simultaneously.
It is not permissible to short-circuit several outputs from the logic unit simultaneously.
A single short circuit does not cause an overload.
The length of cable between the logic unit and the element to be switched is limited to 25 m.
HEIDENHAIN recommends building a transfer unit with a terminal strip into the switch cabinet.
This transfer unit can be connected to the logic unit with the HEIDENHAIN connecting cable Id.-Nr.
244 017 ..
max. 25 m
max. 25 m
If the connector is to be assembled in the field, a 37-pin solderable connector is available from
HEIDENHAIN (Id.-Nr. 243 937 ZY).
Connecting cable
X10
LE
PL 400
X26
Id.-Nr. 250 481..
max. 20 m
X1 X2
Pin Number Assignment Pin Number Assignment
PL 400 PL 400
1 O32 1 O43
2 O33 2 O44
3 O34 3 O45
4 O35 4 O46
5 O36 5 O47
6 O37 6 O48
7 O38 7 O49
8 O39 8 O50
9 O40 9 O51
10 O41 10 O52
11 O42 11 O53
12 Do not use 12 Do not use
X3 X4
Pin Number Assignment Pin Number Assignment
PL 400 PL 400
1 O54 1 I126
2 O55 2 I74
3 O562) 3 I73
4 O572) 4 I72
5 O58 5 I71
6 O592) 6 I70
7 O602) 7 I69
8 O612) 8 I68
9 O622) 9 I67
10 Control is operational 10 I66
11 Do not use 11 I65
12 +24 V cannot be switched 12 I64
off via ext. EMERGENCY
OFF1)
1) +24 V must always be connected, even if the outputs are not used.
2) Outputs cannot be switched off via EMERGENCY STOP
X7 X8
Pin Number Assignment Pin Number Assignment
PL 400 PL 400
1 I110 1 I122
2 I109 2 I121
3 I108 3 I120
4 I107 4 I119
5 I106 5 I118
6 I105 6 I117
7 I104 7 I116
8 I103 8 I115
9 I102 9 I114
10 I101 10 I113
11 I100 11 I112
12 I99 12 I111
X9
Pin Number Assignment
PL 400
1 Do not use
2 Do not use
3 Do not use
4 I125
5 I124
6 I123
The connections to the PLC inputs/outputs must be made with leads with a conductor
cross-section ≥ ∅ 0.14 mm² Cu. The maximum permissible lead length is 20 m.
In its interface to the LE and its load capacity of inputs and outputs it is identical to the PL 400.
The analog inputs (X15 to X22) of the PL 410 cannot be evaluated in the LE 360 C! The DIL switch
on the PCB of the PL 410 must therefore be set to OFF (as is stated on the housing). The PLC
outputs are powered in groups and are therefore switched off via EMERGENCY STOP in groups.
Connecting cable
X1
PL 410B LE
PL 410
Id.-Nr. 263 662 ..
max. 20 m
PLC inputs
Pin layout
X3 X4
Pin Number Assignment Pin Number Assignment
1 I64 1 I80
2 I65 2 I81
3 I66 3 I82
4 I67 4 I83
5 I68 5 I84
6 I69 6 I85
7 I70 7 I86
8 I71 8 I87
9 I72 9 I88
10 I73 10 I89
11 I74 11 I90
12 I75 12 I91
13 I76 13 I92
14 I77 14 I93
15 I78 15 I94
16 I79 16 I95
X5 X6
Pin Number Assignment Pin Number Assignment
1 I96 1 I112
2 I97 2 I113
3 I98 3 I114
4 I99 4 I115
5 I100 5 I116
6 I101 6 I117
7 I102 7 I118
8 I103 8 I119
9 I104 9 I120
10 I105 10 I121
11 I106 11 I122
12 I107 12 I123
13 I108 13 I124
14 I109 14 I125
15 I110 15 I126
16 I111 16 I127
X9 0V
X10 +24V PL supply and "Control is ready" (cannot be
switched of via EMERGENCY STOP)
X11 +24 V supply O32 - O39
X12 +24 V supply O40 - O47
X13 +24 V supply O48 - O55
X14 +24 V supply O56 - O62
Pin Layout
X7 X8
max. 25 m
If the machine control panel does not have a 37-pin D-subminiature connector, the HEIDENHAIN
connecting cable Id.-Nr. 244 005 .. may be used.
max. 25 m
For the assignments of the multi-core conductors see Section "PLC inputs/outputs".
If for any reason the manufacturers of the machine have to produce their own cable, a 37-pin
connector is available from HEIDENHAIN (Id.-Nr. 243 937 ZY).
TE 355 LE
max. 25 m
14.1 LE 360 C
14 Dimensions
560
84 476+5 22"
3.3" 10 18.8"+.02" 456+2
0
.4" 100.5 18"+.08" 311.5 411.5
8
.29±.012"
3.95" 12.26" 16.2"
7.3±0.3
.31"
132.5±0,2 140.5±0.2
.51"
13
1.77"
5.2"±.08" 5.53"±.08"
TNC 360
45
.78"
15
.6"
20
Ø
5
DI
"
R12.8
36
R 32
8
A
.32
"
R 40
10.5"±.008"
134
5.3"
R 1.5
267±0,2
8"
9.25"±.008"
280±o.2
10.73"
272.5
6.34"
160
9.25"±.008"
235±0,2
12.93"±.02"
Befestigungsmöglichkeit PL 400
326±0.5
12.9"
(Befestigungsschrauben M3x5)
328
MOUNTING POSSIBILITY PL 400
Ø (FIXING SCREWS M3x5)
DI 10,
A 3
.4
"
R 50
14 Dimensions
R 2.4"
.28"
Betriebserde M6
7
Schutzerde M5 SYSTEM EARTH M6
36 80±0.2 210±0.2 340±0.2
PROTECTION EARTH M5 83.5
1.42"
0 3.15"±.008" 8.26"±.008" 13.39"±.008" 3.3"
10 392
145
5.7"
4" 15.43"
9
.35"
12.5
.5"
10.5
.41"
25 427
1" 16.8"
8/95
14.2 Keyboard units
14.2.1 TE 355 A
281
.236"±.008"
.236"±.008" 10.591"±.008"
5.5
.217"
10.787"
274
10.315"
262
55 112
0
2.165" 4.409"
.98"
.157"
.079"
25
10
.98"
.039"
25
DIA.394"
23.5 234+2
0.925" 9.212"+.079"
.708"
18
8.740"+.079"
222+2
8.819"+.020"
224+0.5
X2
R60
R2.36
Massenanschluß M5
GROUND CONNECTION M5 Frontplattenausschnitt
236+0.5 FRONT PANEL OPENING
9.291"+.020"
.236"±.008"
350
6±0.2
6±0.2 13.78" 338±0.2
.236"±.008" 13.307"±.008"
.217"
5.5
3.80"
96.5
7.598"±.008"
193±0.2
2.62"
66.5
8.07"
205
51
2.01"
1.16+.19"
31+5
.157"
1.97"+.20"
4
50+5
.98"
.079"
25
.40"
2
1
Ø10
DIA .394"
338±0.2
.335"±.016"
13.307"±.008"
8.5±0.4
248+1 75±0.4
9.76"+.040" 2.95"±.016"
.040"
1
752"±.020"
191±0.5
7.598"±.008"
193±0.2
7.38"+.04"
X2
187.5+1
X1
R60
R2.36
"
19 300±0.5
.748" 11.81"±.020"
14.3.1 BE 212
350 Z
6±0.2 13.78"
.236"±.008" 338±0.2 Freiraum für Belüftung 94
13.307"±.008" FREESPACE FOR AIR VENTILATION 3.20"
5.5
.236"
6
.217"
1.18"
30
.236"±.008"
MIN. .47"
min. 12
6±0.2
MAX. 9.53"
10.315"±.008"
max. 242
262±0.2
7.72"
196
MAX. 6.30"
max. 160
9.61"±.020"
244±0.5
10.79"
274
1.18"
30
5 328+0.5
MIN. .79"
min. 20
.197" 12.91"+.020" 322.5 max. 303 26
12.70" MAX. 11.93" 1.02"
40
1.58"
DIA .307"+.008"
max. 300
1
MAX. 11.80"
Ø7.8
.040"
Z 2–0.5
.08"–.02" 5
.197"
DIA .394"
Ø10
11.02"
280
Dichtung 3 dick
im eingebauten Zustand 2 dick
GASKET .118" THICK
INCORPORATED CONDITION .079" THICK
20 20
.79" .79"
max. 326
MAX. 12.83"
1.87"
47.5
14.3.2 BF 110
0,5 Montagefläche
.236"±.008"
TNC 360
5.5
6±0.2
11,5–0.5
.45"–.02"
.22"
.32"+.04"
Ø10
8+1
.79"±.04"
20±1
M5 Dichtung 3 dick
GASKET .12" THICK
7.598"±.008"
193±0.2
6.7"+.04"
170+1
6.5"±.04"
165±1
8.07"
205
14 Dimensions
Frontplattenausschnitt
FRONT PANEL OPENING
6.5–0.5 256+1
.26"–.02" 10.03"+.04"
R40 Ø8
DIA Masseanschluß M5
R 1.6" .32"
GROUND CONNECTION M5
14±1 253±1
.55"±.04" 9.96"±.04"
8/95
14.4 Input/Output units
14.4.1 PL 410 B
282 8
11.1" .315"
23.5 235±0.2
.93" 9.252±.008"
18±0.5 52.5
.7±.02" 2.07"
PL-Eingänge
.35"
ø9.3
DIA.37"
8.268±.008"
210±0.2
8.98"
228
33+2 PL-Ausgänge
1.3"+.08" PL OUTPUTS
Masseanschluß M5
GROUND CONNECTION M5
282
11.1"
23.5 235±0.2
.93" 9.252±.008"
18±0.5 52.5
.7±.02" 2.07"
PL-Eingänge
.35"
ø9.3
DIA.37"
8.268±.008"
210±0.2
8.98"
228
33+2 PL-Ausgänge
1.3"+.08" PL OUTPUTS
Masseanschluß M5
GROUND CONNECTION M5
2.42"
2.30"
61.5
58.5
1.48"
37.5
14.5 31
.57" 1.22"
360+1
14.2"+.04"
M4 20.5
.8"
.2"
5
3.11"
79
9.252"±.008"
2.64"
67
9.65"+.04"
235±0.2
8.86"+.04"
245+1
225+1
14.5 363+1
.57" 14.3"+.04"
391+1
15.4"+.04"
ø4.5
DIA.177"
10 • 80±0.2 210±0.2 340±0.2
.4" 3.15".008" 8.268".008" 13.386".008"
0
14.5.1 HR 130
Ø0.2 Befestigungsgewinde M3 x 5
DIA .008" FIXING HOLE M3 x .197"
36–1.5 3x
DIA .3937–.0004" 1.417–.06"
DIA .3937–.0008"
14
.551"
Ø10–0.01
Ø10–0.02
DIA 2.283"
3 x 120°
120°
Ø58
48
12.5 1.890"
DIA 1.4173–.0010"
DIA 1.4173–.0025"
.492"
.630"
16
Ø36 f8
30°
Ø4.4
DIA .173“
19.5+1
.768+.04"
10
.394"
0.2 A
.008" A
0.1 A M3 Ø0.3 C
.004" A 36–1.5
SW 5.5 DIA .012" C
1.417–.06"
HEX FLATS
DIA .3937–.0004"
DIA .3937–.0008"
C 14
.551"
Ø10–0.01
Ø10–0.02
A
DIA 2.283"
3 x 120°
120°
Ø58
48
12.5 1.890"
DIA 1.4173–.0010"
DIA 1.4173–.0025"
.492"
.630"
16
B
Ø36 f8
30°
Ø6
DIA .236“
19.5+1
Ø0.2 B
DIA .008" B .768+.04"
10
DIA 1.102“
.394"
Ø28
52
2.047“
Dimensions
2.28 – .04"
58 – 1
HR 150
2.08"
53
.04 ± .02"
1 ± 0.5
248
9.76"
1.8 – .04"
45 – 1
DIA .24"
Ø6
X
.55"
4.567 ± .008"
4.567 ± .008"
14
8.15 + .08"
116 ± 0.2
116 ± 0.2
207 + 2
9
.35"
230 ± 0.2
9.055 ± .008"
X
Datenausgang HRA
DATA INTERFACE HRA
S1 S2 X31 24V
X23 + –
Masseanschluß M5
GROUND CONNECTION M5
18
.709"
SW 5.5
M3
M3
3x
max. 10
7 6
MAX .394" .276" .236"
1
.0394" HR ...
DIA 2.402"
Ø10
Ø61
DIA .394"
SW 14
18
.709" (18)
(.709")
Frontplatte (2)
FRONT PANEL (.079")
12
.472"
SW 5.5
M3
M3
3x
7 6
.276" .236"
max. 15.5
MAX .610"
HR ...
SW 1.5
27
1.063" (12)
48 (.472") 90
1.89" 3.543"
12
.472"
SW 5.5
17.7
M3
M3
.697"
3x
10
.394" 7 6
.276" .236"
4
.158"
HR ...
SW 2
(12)
(.472")
6 70
.236" 2.756"
22
.866"
Ø10 H7
Frontplatte (2) DIA .3937 +.0006"
FRONT PANEL (.079")
DIA.315"
.118"
ø8
DIA2.165"
1.575"
ø55
40
DIA1.858".012"
ø47.2±0.3
max. 7 52
MAX.276" 2.047"
M5 38 14 54 23
1.469" .551" 2.126" .906"
1.26"x.59"
2.165"
32x15
55
DIA1.417"
ø36
4
.158"
Mounting when housing thickness S≤4 Mounting when housing thickness S>4
23
.906"
1.732"
1.339"
1.457"
1.732"
.787"
44
34
37
44
20
5.5 S M4 S
.217"
7 78±0.2
.275" 3.071".008" M4
1.5"
38
92 31.5
3.62" 1.24"
.35" 2.36"+.04" 5
10.5
.41"
.2"
Operating panel
Machine Encoders Triggering C X25
1 2 3 4 6 touch probe Adapter
V.24
Optoc.
LE 360
X1 X2 X3 X4 X6 X12 X11
Handwheel
+5V
Insulated X9
LE - Power supply 0V C Display
Unit
VDE 0551
X23 8 x24 Matrix 2
1
+24V +24V SI Keyboard 4mm
Unit
X31 1 stab. supply
0V 0V 0V voltages X27 8 x 0,1A
2 24 Inputs Machine
Power supply Op. Panel
Unit PL 410B
Optoc. Terminal box
X8 Analog Measuring voltage
X23 1 input
2 1,2,3,4
(Spindel) 0V
Optoc.
X1 X26 1-Axis
X14 Spindel 2-Axis
3-Axis
X13 SI C 4-Axis
SI
(Spindle)
Selectable X12 L C
C C Motor control
connection X11 with nominal value
X10 B 0V difference input
X24/2
X24/1
X24/3
X21 X21 X21 X21 X22
V
V
Test point 1 Spindle
X9 X2
(Fault voltg. 0V/ Test point 2
Emergency stop housing) (Fault voltg.with grounded nominal Motor control
controlled value input)
without nominal
value difference
Emergency Stop
+24V- +24V- 0V 0V input
X8 X7 X7 X8 X8 X3-X6
32 Inputs
PLC - Power supply
Emergency Stop
8 x 1,2A
8 x 1,2A
7 x 1,2A
16x0,1A
8x0,1A
0,1A
If it must be grounded,
basic insulation ensure that the line is short and noise immune.
3 +24V A grounded nominal input
results in anearth circuit.
Therefore ensure that the 0V
and ground line are short and noise immune
0V
2
6mm
2
2 6mm
6mm 2
6mm
2 B 2
6mm 6mm
1
0
*)
2 2
6mm 6mm
TNC 360 C 267 209 01 or 242 370 01 255 015 01 255 016 01 263 371 12
VB VB VB VB Accessories
Encoders 250 477 .. 242 874 .. 263 954 .. 289 111 ..
KA 50m
296 466 .. VB
60m 296 467 .. HR 410
VL 296 469 01
VL VL 281 429 ..
VL 244 504 .. 263 955 ..
254 640 .. HR 130
254 040 ..
VL
262 006 ..
max. 20 m HR 150
VB HRA 110
270 909 .. 261 097 01 HR 150
Cable assembly
HR 150
257 061 ..
max. 20 m
50m Step switch
4 inputs 270 908 ..
VB
239 760 ..
LE 360 C
1 input
TS 120
VB
265 348 ..
262 004 ..
VB VB
25m
244 005 .. Machine 274 539 ..
operating
panel TS 220
294 242 ..
15-pin male connector 37-pin male connector
243 971 ZY 243 937 ZY
EA 550
VL 262 904 01
262 011 .. VB VB
Connection box 290 109 .. 244 005 ..
251 249 01
30m TS 630
293 714 ..
20m VB VB
20m 290 110 .. 263 954 ..
Nominal value PLC I/ 0 25m
VB output
262 009 ..
4 Spindle 4-79
4.1 Analog output of the spindle speed 4-80
4.1.1 Direction of spindle rotation 4-80
4.1.2 Gear range 4-81
4.1.3 Spindle-override 4-84
4.1.4 Gear change 4-85
4.2 BCD-coded output of spindle speed 4-91
4.3 Spindle-orientation 4-93
4.4 Tapping 4-99
4.4.1 Tapping with floating tap holder for analog spindle-speed output 4-99
4.4.2 Tapping with floating tap holder and coded spindle-speed output 4-102
4.4.3 Rigid tapping 4-103
7 M Functions 4-137
7.1 Program halt on M functions 4-140
7.2 Program halt on M06 4-140
7.3 M function M89 4-140
The machine parameter MP10 can be set to determine which axes should be operational on the
machine. If necessary, MP10 can be used to select all the axes functions (control, display, pass over
reference marks etc.).
1.1 Encoders
Linear measurement
For linear measurement systems with sinusoidal output signals the signal period is the same as
the graduation period:
Up to 3 decimal places can be entered in MP330.x. If traverse is 60 m/min, the signal period must
not be less than 20 µm, because then the frequency would fall below the lower limit of 300 kHz.
The signal at the square-wave input (Spindle input X6) undergoes a control-internal 4-fold evaluation.
Machine parameter MP 340 was introduced to permit including an external signal interpolation via
EXE, or IBV. This information is needed in order to determine the absolute position with scales
featuring distance-coded reference marks. In machine parameter MP340 must defined whether the
ballscrew encoder has 2048 or 4096 lines.
Angular measurement: The signal period for angular measuring system is calculated as follows:
If the angular measurement is made by gearing up or down this must be taken into account when
calculating the signal period.
MP210 defines the counting direction for the measuring system signals. The counting direction
depends on the mounting orientation of the measuring systems.
Machine parameter MP1040 determines the polarity of the nominal value voltage during the positive
direction of traverse.
MP1040 Polarity of the nominal value voltage for the positive direction of traverse
Input range: 0 to 15
Bit 0 X axis +0 = positive
+1 = negative
Bit 1 Y axis +0 = positive
+2 = negative
Bit 2 Z axis +0 = positive
+4 = negative
Bit 3 4th axis +0 = positive
+8 = negative
The NC uses markers to tell the PLC in which direction the axes are to travel.
0 = positive
1 = negative
Error message
The absolute position of distance-coded reference marks C
The amplitude of the measuring system signals A
The edge separation of the measuring system signals B
For sinusoidal signals the LE monitors the amplitude of the measuring system signals, for square-
wave signals the LE evaluates the fault detection signal (UaS) of the external electronics (EXE or
IBV).
The directions of traverse may be simply determined by using the "right-hand rule."
+Z
+Y
+X
If the machine moves the workpiece, then the direction of movement and the direction of the axis
are opposite to one another. The positive relative directions of movement are then designated +X',
+Y' etc.
+X
+X´
The fourth axis can be used either as an axis of rotation or alternatively as an extra linear axis.
While the three principal axes have the standard designations X, Y and Z, the designations of the
fourth axis can be selected by a machine parameter.
A rotational axis is designated by the letter A, B or C. The correlation with the principle axes and
determination of the direction of rotation is standardized in ISO 841.
+Z
+Y
+C
+B
+X
+A
+Z
+W +Y
+V
+X
+U
0=A
1=B
2=C
3=U
4=V
5=W
1.2.1 Assignment
The measuring system inputs X1 to X4 and X6 and the analog outputs, Output 1 to Output S (on the
connector X8) can be assigned to the individual axes. The assignment is determined by the machine
parameters MP110 and MP120.
The assignment of measuring system input X6 and the nominal value output S to one of the four
axes is only possible when the Spindle Orientation function is not utilized.
MP110.0 X axis
MP110.1 Y axis
MP110.2 Z axis
MP110.3 4th axis
Entry: 0 = output 1
1 = output 2
2 = output 3
3 = output 4
5 = output S
MP120.0 X axis
MP120.1 Y axis
MP120.2 Z axis
MP120.3 4th axis
The input values for the software limit switches are referenced to the machine datum. The
momentary software limit switch range is selected by the markers (M2817, M2816) and activated
by the strobe marker M2824.
The MOD function "Axis limit" can be used to enter an additional limitation for each traverse range.
In the setting for one traverse range, the software limit switches that are entered via MOD function
as well as the datum are effective for all traverse ranges that are selected through the PLC.
Traverse ranges 1 to 3:
Entry:
Linear axis: – 30 000.000 to + 30 000.000 [mm]
Rotary axis: – 30 000.000 to + 30 000.000 [°]
(Values referenced to the machine datum)
The markers M2816 and M2817 are used to define the traverse range.
The change-over to the selected traverse range must be activated by the strobe marker M2824 by
the PLC. This strobe marker is reset by the NC after the change-over has been carried out.
In the "Manual" and "Electronic handwheel" modes of operation this is done immediately, in all other
modes of operation it is usually done with the next M/S/T strobe. The range must be switched
during an M/S/T strobes.
Example:
M2045
M2482
M2824
In the Manual and Electronic Handwheel modes, the range can be switched immediately.
Set Reset
If one of the software limit switches is reached, the error message "LIMIT SWITCH ..." appears and
the appropriate marker (M2624 to M2631) is set.
Example:
PLC program example of changing the traverse ranges. The PLC input I10 is used as a condition for
change.
I10
M2816
M2817
M2824
M555
M556
Example:
If the stored path limit for an axis is exceeded, the NC sets a marker (M2012 to M2015) to "1."
After carrying out the lubrication the PLC must reset the accumulated traverse distance (M2548 to
M2551).
MP4060.0 X axis
MP4060.1 Y axis
MP4060.2 Z axis
MP4060.3 4th axis
Set Reset
In the machine parameter MP4060.0 the traverse distance after which the X axis should be
lubricated is entered. The duration of the lubrication is defined by the timer T0 (MP4110.0).
The PLC output O24 is to be set for the duration of the X-axis lubrication. In our example the
lubrication is activated as soon as the marker M2012 is set. If , for some reason, the lubrication
should only be activated when the axis is at rest, then this must be taken into account in the PLC
program.
M2012
M2548
T0
T48
024
– backlash compensation,
– compensation of reversal errors in circular motion,
– linear axis-error compensation,
– nonlinear axis-error compensation,
– compensation of thermal expansion.
Either the linear or the nonlinear axis-error compensation can be activated. The other types of
compensation can always be activated in parallel.
Depending on the design, the movement of the rotary encoder may be advanced or retarded relative
to the table. The professional jargon describes this as positive or negative backlash.
Positive backlash: rotary encoder advanced relative to the table (traverse movement of the table is
too short).
Negative backlash: rotary encoder retarded relative to the table (traverse movement of the table is
too long).
For every change in direction of traverse, the TNC adds the value from machine parameter MP710
to value from the encoder signals.
Commercially available devices such as the HEIDENHAIN Double Ball Bar system (DBB) can
diagnose these errors and determine the size and duration of their peaks.
µm
12
9
6
MP711
3
0
3 Spitzenweite
6 Peak width
9
12
91° 92° 93° 94° 95° 96° 97° 98° 99°
The TNC can then compensate for these errors. The size of the reversal error which is to be
compensated is entered in machine parameter MP711, and the portion of the peaks to be
compensated per closed loop cycle time is entered in MP712.
The diagram from the DBB system shows the size and duration of a reversal peak.
MP711.0 X axis
MP711.1 Y axis
MP711.2 Z axis
MP711.3 4th axis
MP712.0 X axis
MP712.1 Y axis
MP712.2 Z axis
MP712.3 4th axis
Error
[mm]
0.02
0.01
0
-0.01 Ref. mark 500 1000 Measuring system
[mm]
-0.02
MP720.0 X axis
MP720.1 Y axis
MP720.2 Z axis
MP720.3 4th axis
For example, the leadscrew pitch error for the Z axis (Z=F(Z)) or the sag as a function of the Y axis
(Z=F(Y)) could be determined.
In the HEIDENHAIN contouring control an axis can only be corrected as a function of one error-
related axis. So in our example either the leadscrew pitch or the sag can be compensated. For each
of the four axes one table of corrections with 64 correction values per table can be entered. The
following definitions must be fixed for this purpose:
When determining the error curve with the aid of a comparator measuring instrument the above
definitions must be already taken into account, whereby it is important to note that the error curve is
continued in positive direction starting at the datum.
Error in Y
[mm]
0.1
0.08
Datum
0.06
Machine
0.04
datum Z
–976.8928 –950.6784 –924.464 –898.2496
0.02 0 [mm]
–990 –963.7856 –937.5712 –911.3568
The errors which have thus been determined can be entered in the form of a table directly into the
HEIDENHAIN contouring control. However, the axis-error compensation is only effective when it is
enabled for a specific axis by the machine parameter MP730.
Before entering the correction table the code number 105 296 must be entered. After the code
number has been entered the control will initially show the correction table for the X axis:
X = F(X)
DATUM POINT +0
SETUP 1
0 X+0 X+0
1 X+0.001 X+0
2 X+0.002 X+0
.
.
.
16.384 mm
= 0.256 mm
64
Only the compensation points of the error curve should be entered. The control will automatically
make a linear interpolation between the compensation points. In the example above the correction
table is thus:
Y = F(Z)
DATUM POINT –990
SETUP 14
0 Z–990 Y+0
1 Z–973.616 Y–0.06
2 Z–957.232 Y–0.09
3 Z–940.848
4 Z–924.464
5 Z–908.08 Y–0.12
6 Z–891.696 Y–0.12
7 Z–875.312 Y–0.1
8 Z–858.928 Y–0.09
.
.
.
No entry is necessary in lines 3 and 4 (press the NO ENT key), because there is no visible kink. The
individual lines of the correction table are selected either by the arrow keys or with the GOTO key.
Press the END key to leave the correction table.
In a correction table for a rotary axis, the entered distance between correction points must be large
enough that the 64 correction points will cover a complete revolution of 360°. An angular separation
of at least 5.625° (216) is therefore necessary. For an axis of rotation, correction values will only be
recognized for entries from 0 to 360°.
Input and output of the correction table via the data interface
After entering the code number 105296 the correction table can be entered or read out via the data
interface.
As usual, the data transfer is initiated with the EXT key. The correction table receives the file name
extension ".S".
The words W576 to W582 were introduced for thermal expansion compensation As soon as these
words receive a value, the "follow-up tracking" becomes active.
"Follow-up tracking" means that the actual position value changes 1 µm/sec until it has changed by
the full value from the words W576 to W582. This does not change the value in the actual position
display.
The actual thermal expansion can be measured, for example, with a TESTOTERM unit. The values
are transmitted to the PLC through the PLC inputs, further processed in the PLC program and finally
transmitted to the words W576 to W582. The actual value display does not change.
Program description
The 13 TESTOTERM-BCD outputs are transmitted at the TNC control through the PLC inputs I128
to I140 and converted to a binary data format. Then the binary value is multiplied by a correction
factor (linear thermal behavior) and sent to the Z axis. The correction factor is located in MP4210.44.
Main program
L M0
ON M0
S M1 M1 is always set
Subprogram
LBL 133
L- W248 Final register TESTOTERM binary
= W248 Final register TESTOTERM binary
W= M1220 Control register
EM
The feed for positioning the individual axes is stored in W560 to W566.
The transfer of the positions and of the feed to the PLC is carried out, for example, by
machine parameters (MP4210.X, MP4220.X). All four axes can be traversed simultaneously
[simultaneous activation of all the strobe markers (M2704 to M2706)]. The PLC positioning can be
interrupted by resetting the strobe marker (M2704 to M2706).
The strobe markers M2704 to M2707 may be set only if an M/S/T strobe is present. The M/S/T
acknowledgment must not occur until the PLC positioning has been completed, i.e. markers M2704
to M2707 have been reset.
Example:
M2045
M2482
M2704
In the Manual mode of operation the strobe markers M2704 to M2707 cannot be set if an axis
direction key is depressed.
The Doublewords D528 to D540 have a multiple usage. They have the following meaning for the
PLC positioning:
Address Function
– The positions which are given are referenced to the machine datum (MP960.x).
– Software limit switches are not considered.
– Tool corrections are not calculated.
– The path compensation must be terminated before a PLC positioning.
– PLC positioning is not displayed in the test graphics.
A PLC positioning in the Z axis is to be initiated with the M function M70. The target position is
stored in the machine parameter MP4210.2. The feed for the PLC positioning is defined in machine
parameter MP4220.2
.
.
.
67 L M0
68 ON M0
69 S M2496 ;Decoded M code output (M1900 to M1999)
70 S M2719 ;Word processing (incompatible with TNC 155/355)
71 L M1970 ;M function M70?
72 A M2045 ;Change signal M function?
73 AN M4 ;Edge marker
74 CMT 110 ;Load position and feed
75 S M2706 ;Activate PLC positioning Z axis
76 S M4 ;Edge marker
77 L M1970 ;M function M70?
78 A M2045 ;Change signal M function?
79 AN M2706 ;PLC positioning Z axis done
80 S M2482 ;Acknowledgment M function done
81 LN M2045 ;No M function?
82 R M2482 ;Acknowledgment reset
83 R M4 ;Edge marker reset
.
.
.
1210 EM ;Main program end
1211 LBL 110 ;Load Z position and feed rate
1212 L D776 ;Load target position from MP4210.2
1213 = D536 ;Target position PLC positioning Z axis
1214 L W964 ;Load feed from MP4220.2
1215 = W564;Feed PLC positioning Z axis
1216 EM
M1970
M2045
M4
M2706
M2482
The controlled axes can also be assigned individually to the PLC. On a machine with three NC axes,
for example, the 4th axis could be used independently from the three NC axes to position the
toolchanger. Machine parameter MP60 defines which axis is to be controlled by the PLC.
The positioning of the PLC axes is commanded through a special module in the PLC program:
Module 9120: Starts the positioning of a PLC axis
Module 9121: Stops the positioning of a PLC axis
Module 9122: Polls the status of a PLC axis
Module 9123: Traverses the reference marks in a PLC axis
For a description of each module, see the chapter "PLC Programming."
If a PLC axis has been edited in the NC program, the error message "WRONG AXIS
PROGRAMMED" appears during program run. PLC axes can be moved with the machine axis
direction keys. PLC axes always move in servo-lag mode. Several PLC axes can be started at once.
These axes cannot, however, be interpolated with each other. In MP810 a modulo value can be
entered for the counting mode of the axes. An input value of 0 means that the display value is not
reduced.
MP810.0 Axis X
MP810.1 Axis Y
MP810.2 Axis Z
MP810.3 4th axis
The HEIDENHAIN linear encoders are therefore equipped with one or several reference marks.
When a reference mark is traversed, it generates a signal that identifies the particular position as a
reference point. By traversing the reference marks after a power interruption, the assignment of
positional values to axis positions (and, at the same time, the fixed machine references) that were
most recently determined by datum point setting are re-established.
Workpiece
datum 10 20 30 40
0 +X
Workpiece
Machine table
Measuring system
Since it is inconvenient to restore the reference points if large traverses are required to do so,
HEIDENHAIN recommends the use of encoders with distance-coded reference marks. On these
measuring systems the absolute position value is available after crossing two reference marks.
Scale with distance-coded reference marks
The graduation consists of an incremental grating and a parallel track for the reference marks. The
absolute position of each reference mark is encoded by varying the distance between adjacent
reference marks according to a mathematical algorithm.
– pressing the external START key. The axis sequence is determined by machine parameter
MP1340.x (automatic passing of the reference marks),
– pressing the external axis direction keys. The sequence is determined by the operator.
For distance-coded measuring systems the machine datum is the Zero Reference mark. In linear
measurement systems the Zero Reference mark is the first reference mark after the start of the
measuring length; in angular measurement systems the Zero Reference mark is marked.
The direction of traverse and the velocity on passing the reference marks is defined by machine
parameters (MP1320, MP1330.x).
The functional sequence for passing the reference marks can be fixed specifically for each axis by
machine parameters (MP1350.x).
The operating condition "PASS OVER REFERENCE MARKS" is sent to the PLC by the NC (W272).
In order to avoid exceeding the traverse range when passing over the reference marks a trip dog
(reference end position) is necessary. This trip dog must be fixed at the end of the traverse range by
the manufacturer of the machine. The trigger signal from the trip dog is connected to an available
PLC input. In the PLC program this PLC input is combined with the markers for "Reference end
position" (M2556 to M2559).
Reference marks
Trip dog
Closed "Reference end
Open position"
Trip dog
No "Reference end Yes
position"
closed?
Machine traverse
in direction from
MP1320
Machine traverses in
inverted direction from
Trip dog MP1320
"Reference end position" is Yes
closed before consecutive
reference marks are
passed over
No
Machine moves to
No software limit switch
Machine stops
Reference marks
Trip dog
Closed "Reference end position"
Open
Is the machine
Yes
outside the software
limit switch range?
Machine moves to
No software limit switch range
Machine stops
If during automatic pass-over the trip dog is not closed until it is in the "Reference end position"
range, the contouring control will ignore the signal. It is therefore necessary that there be at least
two reference marks in the range of the "Reference end position."
Reference marks
Machine traverse
in direction from
MP1320.x
Machine traverses in
inverted direction from
Trip dog MP1320.x
"Reference end position" is Yes
closed before reference mark
is passed over
No
Machine moves to
No software limit switch
Machine stops
For linear measurement using a rotary encoder a reference pulse is produced on each revolution of
the encoder. It must be ensured that, after switching on the machine, always the same reference
pulse is evaluated. This can also be achieved by using the trip dog "Reference end position."
Measuring length
Reference pulse
Is the
machine outside Yes
the software limit
switch range?
Machine moves to
No software limit switch
Machine stops
MP1330.0 X axis
MP1330.1 Y axis
MP1330.2 Z axis
MP1330.3 4th axis
MP1331.0 X axis
MP1331.1 Y axis
MP1331.2 Z axis
MP1331.3 4th axis
MP1350.0 X axis
MP1550.1 Y axis
MP1350.2 Z axis
MP1350.3 4th axis
Further parameters for the NC axes can be found under "Machine axes."
The control of the spindle (S axis) is described in section "Spindle."
The motor speed control and the current control (both in the drive amplifier) are integrated into the
servo position control (CNC control). The servo controlled system consists of the motor and machine
slide.
Linear/
Nom. Servo Position Nom. Speed Nom. Current
Drive Tacho angle
pos. lag controller rpm controller cur. regulator
encoder
position
position
current
Actual
Actual
Actual
Actual
Actual
rpm
rpm
The machine adjustment must always be carried out for both methods of control.
In the operating modes "Manual operation" and "Electronic handwheel" the operation is always with
servo lag, regardless of machine parameter MP1390.
In the operating modes "Positioning with manual entry", "Program run, single block" and "Program
run, full sequence" machine parameter MP1390 must be appropriately entered for lag operation.
The advantage of operation with servo lag lies in the "softer" control, which is especially suitable for
machining 3D contours, since corners and radii are smoothed out, depending on the Kv factor
(position loop gain factor) and the machining feed rate.
Depending on how far these "contour errors" can be tolerated, the machine operator or manufacturer
must decide and choose either operation with servo lag or with feed forward control.
Operation with servo lag is depicted in a simplified form in the following block diagram for the X axis.
It shows a part of the cascade control mentioned previously.
All machine parameters which influence the control characteristic are shown here.
Servo
➂ ➄ amplifier
ax
XS
v ·s
- -
k
sax
=
v
vx Actl
➀ ➁ ➅
X Actl
v U
a·t
s=s0+v·∆t
v=
t t
➀ The control calculates a nominal velocity value every 6 ms from the feed programmed in the NC
program and the final position (X- , Y-, Z-, 4th axis) , allowing for the acceleration which has been
stored (MP1060). The stored acceleration is valid for the rising as well as the falling slope. If
several axes are traversed simultaneously, then the smallest value for acceleration is effective.
➁ Every 6 ms a nominal path value is calculated from the velocity nominal value.
s = so + v ·∆t s = nominal path value
so = previous nominal path value
v = nominal velocity value
∆t = cycle time 6 ms
➂ The nominal path value is resolved into the individual axis components, depending on which
axes have been programmed.
➃ The axis-dependent nominal path value is compared with the actual value of the positions and
the lag sa is calculated.
➄ The lag is multiplied by the kv factor MP1810 and passed on to the drive amplifier as a nominal
velocity value (analog voltage).
vx= kv · sax vx = nominal velocity value for X axis
➅ If the axes are stopped, the integral factor MP1080 is effective as well. It causes an offset
adjustment (see section "Offset adjustment").
If a very high kv factor is chosen, the lag is very small. However, this can lead to an overshoot when
running into a new position. If the kv factor is too small the new position will be reached too slowly.
The optimal kv factor must be determined by experiment (see the section "Commissioning and start-
up procedure"). The following diagram shows the response for various kv factors.
U [V] MP1810
kv correct
kv too large
kv too small
MP1060 MP1810
t [s]
The acceleration can be programmed by the machine parameter MP1060. It determines the slope of
the ramp on the rising and falling edges.
For axes which are mutually interpolated the kv factor must be the same, in order to avoid contour
distortion!
MP1060 Acceleration
Input value 0.001 to 3.0 [m/s2]
The Kv factor MP1810 is, in general, determined by the rapid traverse (MP1010) of the machine and
the lag, using the following formula:
m/min
kv = Ve
sa kv = Position loop gain [ ]
mm
m
ve = Rapid traverse [ ]
min
sa = Servo lag [mm]
or
sa = Ve
kv [mm]
8 kv = 1
6
kv = 0.5
4
2 4 6 8 10 12 sa [mm]
The rapid traverse value stored in machine parameter MP1010 can be reduced by the PLC.
The rapid traverse (maximum traversing speed) must be adjusted by the desired analog voltage (e.g.
9 V) on the servo amplifier (see section "Commissioning and start-up procedure"). For each axis-
specific rapid traverse there is an analog voltage which is stored in the machine parameter MP1050.
U[V]
10
8
kv = 1, Rapid traverse 10 m/min
6
2 4 6 8 10 12 sa [mm]
A special feed rate for manual operation (Manual feed) is stored in machine parameter MP1020. In
general, it is significantly lower than the rapid traverse. Unlike the rapid traverse, this has no effect
on the servo behavior.
Address Function
D596 Rapid traverse from PLC
Servo accuracy:
The internal servo accuracy of the control is always 1 µm. The control has, however, a display step
of 5 µm or 1 µm, selectable by machine parameter MP7290. The rounding up or down is only in the
display (see section "Display and operation").
Normally a servo accuracy of 1 µm is sufficient, i.e. the control must be able to generate at least one
voltage step per 1 µm positional deviation.
If ∆U is divided by the smallest voltage step which can be produced (0.6 mV), the result is the
number of voltage steps which are produced per 1 µm positional deviation.
n = ∆U [mV]/0.6 [mV]
Example:
5 000 [µm]
sa = = 2 500 [µm]
2
9 000 [mV]
∆U = = 3.6 [mV/µm]
2 500 [µm]
3.6 [mV/µm]
n= = 6 steps/µm positional deviation
0.6 [mV]
For machines with high rapid traverse rates it is usually not possible to raise the k v factor enough to
give an optimal loop characteristic over the entire range of positioning speeds (stop, machining feed
rates, rapid traverse). In such cases one can introduce a kink point, which gives the following
advantages:
– a high kv at lower positioning speeds, i.e. a larger voltage step per µm of positional deviation
– a low kv at higher positioning speeds (above the machining rates).
The position of the kink point is determined by machine parameter MP1830. In the upper range the
kv factor is multiplied by the factor from MP1820.
U [V]
MP1810 · MP1820
MP1830
MP1810 (= kv)
sa
The kink point must lie above the range of machining feeds!
Under these conditions, the lag can be calculated as follows:
sa = Ve
kv
·
[ MP1830 [%] + 100 [%] – MP1830 [%]
100 [%] MP1820 · 100 [%]
]
MP1820 Multiplication factor for the Kv factor
Input value 0.001 to 1
The lag is very small with this method. Operation with feed forward control has the advantage that
contours can be followed very accurately at a high speed.
Normally, work will be carried out using feed forward control.
In the operating modes "Positioning with manual data input", "Program run, single block" and
"Program run, full sequence" this method of servo control can be selected with the machine
parameter MP1390.
Operation with feed forward control for the X axis can be shown in a simplified form in the following
block diagram.
All machine parameters which influence the servo characteristic are shown here.
Acceleration: MP1060
Transient response: MP1530
Position approach speed: MP1520
➁
vY
v kv factor for
speed pre-control
a·t
MP1520
MP1510
v=
MP1530 t
Servo
vX amplifier
➂ ➀
sax vx + vx Noml+
X Noml+ +
ax
sX
v ·s
- + -
k
sax
=
+
v
vx Actl
X Actl
s=s0+v·∆t
U
sY
➃ t
➁ The feed forward control value, which is adjusted to the dynamic characteristics of the
machine by machine parameters, makes it possible to control the loop with a lag distance
which is nearly "0".
➂ Deviations in the actual positional value are compensated as described under "Operation
with lag." The servo follows the pre-compensated curve.
The Kv factor for the feed forward control then comes into play.
➃ If the axes are stopped, the integral factor will also be effective:
it results in an offset correction.
The feed forward control value is adjusted to the dynamics of the machine by three machine
parameters.
Pre-control
U [V]
MP1530
Entry value correct
Entry value too large
9 Entry value too small
MP1060 MP1520
t [ms]
The machine parameter MP1060 determines the acceleration (= slope of the pre-controlled speed
curve).
The machine parameter MP1530 determines the transient response. The larger the value which is
entered, the more the system will tend to oscillate.
MP1520 determines the run-in behavior into the nominal position. The larger the value which is
entered, the more the system will tend to oscillate.
The fine control of the pre-controlled speed set-value is influenced by the Kv factor for feed forward
control MP1510.
t [ms]
If the Kv factor is too large, the system will oscillate about the pre-controlled speed set value.
The size of the Kv factor is normally the same as the Kv factor for operation with servo lag
Depending on the dynamic characteristics of the machine it may also be higher (see section
"Commissioning and start-up procedure").
The automatic cyclical offset adjustment and the adjustment via integral factor must not be active
simultaneously!
On pressing the "ENT" key the offset values, which are displayed on the VDU, are automatically
compensated, the control puts out an appropriate compensating voltage. Compensation only takes
place if the offset voltage is > 0.6 mV.
To switch off the automatic offset adjustment, enter the code number and press the "NO ENT" key.
The offset values are stored in the control and are non-volatile.
After a control is exchanged, the offset adjustment must be re-activated via code number.
The machine parameter MP1220 can be used to program a time interval, after which an offset
adjustment will be performed cyclically.
An automatic adjustment will be carried out, when the predetermined time has elapsed and the
following conditions are fulfilled:
For each adjustment cycle there will be a 1 mV correction if the offset voltage is larger than 1 mV. If
the offset voltage is smaller than 1 mV then compensation will be in steps of 0.6 mV.
0 = no automatic adjustment
According to the size of the factor the offset voltage will be reduced quickly or slowly.
Even a small amount of play in the drives can lead to instability in the control loop. An integral factor
of 0 is entered in this case.
1 2 3 t [s]
As well as the normal acceleration (MP1060) there is also a machine parameter for radial
acceleration (MP1070).
The machine parameter limits the feed for circular movements according to the following formula:
It is recommended that a value should be entered which is between the half of and the same as that
in MP1060 (Acceleration). If the programmed feed is lower than that above, then the programmed
feed will be used. MP1070 is effective for operation with lag and with feed forward control.
MP7460
This machine parameter is effective for operation with feed forward control as well as for operation
with lag. The permissible size of the angle depends on the drives in the machine.
Axis standstill
α = Change of axis movement direction
α sa = Servo lag
sa
sa
without M90
with M90
If, for some reason, monitoring is not wanted at all, the following markers must be set in the PLC
program:
Set Reset
The monitoring functions can also be switched off conditionally. In the machine parameter MP4130
a PLC input is defined, which is interrogated with a 6 ms cycle time. The condition for activating this
input is stored in MP4131. This function must be activated from the PLC by setting Bit 0 in Word
W522.
Set Reset
"Positioning error"
will appear and the machine stops. The error message can be canceled by the "CE" key.
appears.
This error can only be canceled by switching off the control. An input value of approx. 1 to 1.4 times
lag for rapid traverse is realistic. MP1720 is larger than MP1710.
"Positioning error"
will appear, which can be canceled with the "CE" key. If the limit of parameter MP1420 is exceeded,
the flashing error message
appears. This error can only be canceled by switching off the control.
If clamped axes cause the error message "Positioning error", a residual voltage can remain at the
nominal value output, since the machine axes can no longer be traversed. MP1150 can be used to
program a time after which the residual voltage becomes zero. After this period a nominal/actual
value transfer is carried out. If the error message is canceled by "CE" before the time has elapsed,
the nominal/actual value transfer is carried out and the residual voltage is switched off. This machine
parameter functions in operation with lag as well as with feed forward control.
MP1150 Delay time before switching off the residual voltage on error message
"Positioning error"
Input value: 0 to 65.535 [s]
is displayed.
During movement monitoring, the actual path traveled is compared with a nominal path calculated
by the NC at short intervals (several servo cycles). If, during this period, the actual path traveled
differs from the calculated path, the flashing error message
is displayed.
In machine parameter MP1140 a voltage can be stored, below which the movement monitoring is
out of action.
As soon as position deviation is greater than the value which is stored in MP1110, the flashing error
message
is displayed. The message also appears if, on running-in to a position, an overshoot occurs which is
larger than the value in MP1110 or the axis moves in the opposite direction on beginning a
positioning movement.
If the value which is entered is too small, the run-in time and therefore the time between one
program block and the next will be lengthened.
If the axes have reached the positioning window after a movement, the markers M2008 to M2011
and M2017 are set (see section "Axis in position").
Further parameters for the NC axes may be found in the section "machine axes."
The PLC functions which are described in the following sections are only effective for controlled
axes.
The axis-enable markers can be reset by the NC if the control loop is opened by the PLC, see
section "Open control loop").
Set Reset
The feed rate enable must be specified for all axes by M2451 and complement marker M2467. If the
feed rate enable is removed, the analog voltage is output as 0 V and the axes immediately stop
moving. The letter "F" is then highlighted in the status display.
Set Reset
The markers will be reset by the NC only if the axes leave the positioning window when being
traversed in manual operation or automatic operation. This is also valid when passing over the
reference marks. In the "Electronic handwheel" mode of operation the markers M2008 to M2011 are
reset.
The markers also inform the PLC when an axis should be moved. A positioning block resets the
corresponding in-position marker. This makes it possible to unclamp the axis and close the control
loop.
For contours which can be machined with constant feed rate the "Axis in position" markers are not
set.
Note: The markers are only set in the operating modes "Positioning with manual entry", "Single block"
and "Full sequence."
Set Reset
P3 .
.
.
L X80 Y20 RL
L X0 RL
P2 L X80 RL
.
P1 P0 .
.
P0 P1 P2 P3
M2008
M2009
M2128
M2129
As soon as the "Axis in position" marker is reset, the control loop must re-closed so that the axes
can be moved again.
Set Reset
Actual value transfer is possible only in the "Manual" and Electronic handwheel" modes of operation.
Set Reset
The spindle speed (S output) can be either an analog voltage output or a BCD-coded output. The
spindle speed is programmed in rpm in the NC program.
The machine parameter MP3010 determines whether the spindle speed is a BCD-coded output or
an analog output, and whether the spindle orientation should be active.
Tapping cycles are available for tapping with and without floating tap holder.
6 =As for Input value 3, but with controlled spindle for orientation
7 =As for Input value 4, but with controlled spindle for orientation
8 =As for Input value 5, but with controlled spindle for orientation
Set Reset
M2485 Status display and output of the analog voltage PLC PLC
for M03
M2486 Status display and output of the analog voltage PLC PLC
for M04
If not all gear ranges are required, then the remaining machine parameters are set to zero.
Machine parameter MP3515 can be used to define a maximum achievable spindle speed for each
gear range which cannot be exceeded by S-override.
MP3120 can determine whether zero spindle speed is permitted, in spite of a minimum producable
analog output voltage.
If an S-analog voltage output 0 V is produced, marker M2005 will be set. This is also the case when
the potential has been turned down to zero with the override potentiometer.
The ramp slope for the S-analog voltage on output of M03, M04 is stored in MP3410.0.
If the spindle voltage is on a rising or falling ramp, marker M2004 will be set. This also happens
when the spindle voltage is altered with the override potentiometer, the voltage changes very
quickly, and the ramp of MP3410.0 cannot be followed.
Set Reset
M2004 S-analog voltage not on ramp NC NC
M2005 S-analog voltage = 0 V NC NC
M2020 Actual spindle speed below minimum rpm from NC NC
MP3240.1
The % factor which is adjusted by spindle override is kept in Word W492 and W764. However,
W764 can be changed by the PLC. As soon as a different value is entered here it will be adopted by
the NC. In this way the % factor can be influenced by the PLC .
If W764 is not changed by the PLC, the normal override function remains active.
MP7620 bit 3 determines whether the override is effective in 1% steps or according to a nonlinear
characteristic curve. In the nonlinear curve, the lower range changes in 0.01% steps, and in the
range over 2.5% the step is 0.75%.
The range of override values in W492 and W764 lies between 1 and 150 in 1% steps for the linear
curve, and between 0 and 15 000 for the nonlinear curve.
U [V]
MP3240.0
=9V
MP3210.1
=8V
MP3210.0
=6V
MP3240.1
=1V
I II
After setting the gear code, the marker M2043 is set by the NC as a strobe signal.
The spindle speed which is programmed in the NC program as TOOL CALL S is stored in
Doubleword D356 and D756 in 1/1000 [rpm] by the NC. If a different spindle speed (from the spindle
speed fixed by the NC) is to be activated by the PLC, the speed must be entered by the PLC in
D756, this can then be activated by marker M2814 .
Check that the spindle speed selected by the PLC is within the spindle speed limits of the selected
gear range.
The PLC program must transfer the gear code to the machine. The NC waits for the
acknowledgment signal "Gear change completed" (M2480) before continuing the program . As soon
as marker M2480 is set by the PLC the NC resets the strobe signal M2043. The marker M2480 may
only be set in one PLC cycle.
Set Reset
M2104 1st bit gear code for S analog (lsb) PLC PLC
M2105 2nd bit gear code for S analog PLC PLC
M2106 3rd bit gear code for S analog (msb) PLC PLC
An alternating S-analog voltage can be produced for changing gear. For this purpose the marker
M2490 and the marker M2491 must be alternately set and reset by the PLC. This may be achieved
by interrogating a particular timer in the PLC program. The markers M2490 and M2491 are reset to
stop the spindle. The output voltage is defined by MP3240.2.
Set Reset
The direction of spindle rotation after the gear change is determined by the PLC program with the
markers M2485 to M2487 (see "Direction of spindle rotation").
Machine parameter MP3030 can be used to determine whether an axis halt should occur on a TOOL
CALL with only a spindle speed output.
MP3030 Axis halt on TOOL CALL with only a spindle speed output.
1 = No axis halt on TOOL CALL
0 = Axis halt on TOOL CALL
If a non-permissible spindle speed is programmed, the marker M2092 will be set by the NC, and
simultaneously the error message appears:
Set Reset
A spindle speed is entered in the TOOL CALL block with a maximum of four figures in rpm, if
necessary, rounded off by the NC to the nearest standard value. Spindle speeds of 0 to 9 000 are
possible. The spindle speed which has been entered is put out by the control as S Code according to
DIN 66025, as shown in the list of S Codes. With MP3020 the minimum and maximum spindle
speeds and the desired spindle-speed steps can be defined.
Example:
The minimum spindle speed is to be 1 rpm (S code 20), the maximum spindle speed is to be
1000 rpm (S code 80). Only every second spindle speed should be programmable. This gives an
input value of 20802 for MP3020. An input value of 991 would mean no limit.
The S code is stored in the PLC in Word W258. The minimum spindle speed from MP3020 is stored
in Word W1008.
Set Reset
Spindle-orientation sequence
In normal operation the spindle is not in the position control loop. If the miscellaneous function M19
is activated, marker M2712 (Strobe - spindle orientation) must be set by the PLC program and the
spindle must be switched off. The spindle is driven down the ramp from MP3410.1 to the spindle
speed from MP3520.1. An orientation does not begin until marker M2499 has been reset. When
this spindle speed has been reached, the spindle is under the control of the position control loop and
oriented to the set position of D592, along the ramp of MP3410.1.
During a spindle orientation from a stop position the shortest path is followed, provided the start
position of the spindle is in the positioning window (MP3430). If the start position is outside the
positioning window, then the positioning is carried out according to markers M2656 and M03 or
M04.
If the spindle does not have to remain in the position control loop after reaching the set position,
then the marker M2499 must be set. The spindle is only freed when this marker has been set by the
PLC . If M2499 is set continuously the control loop will be opened immediately after every
orientation, when the positioning window has been reached.
Set Reset
S
[rpm]
Prog. rpm
MP3410.1
MP3410.1
MP3520.1
0 t
M19 Target M function
(M2712 = 1) position (opening the
(M05) control loop
Distance M2499 = 1)
to target position
Orientation from standstill:
S
[rpm]
Prog. rpm
MP3410.0
Stand-
still
MP3520.1 MP3410.1
0 t
M05 M19 Target M function
M2712 = 1 position (opening the
control loop
M2499 = 1)
The orientation can be performed to an accuracy of 0.1 degree. This value results from the line count
of the rotary encoder which is incorporated (ROD 426.xx8 with 1024 lines) and the quadruple
evaluation in the TNC. A positioning window is defined by MP3420. If the spindle is within the
positioning window after orientation, marker M2007 will be set.
In order to be able to correct for any misalignment on assembly of the rotary encoder the machine
parameter MP3430 was introduced. The deviation between the nominal and actual position of the
reference mark which is entered here is taken into account during orientation.
The reference mark is instantly evaluated by the NC when the spindle is turned on for the first time.
360 degrees
=
1024 lines · quadruple-evaluation
MP3430 Reference mark deviation from the desired position (Spindle preset)
Input value: 0 to 360 [degrees]
Set Reset
In order to control the orientation process precisely, a kv factor can be entered individually for each
gear range via MP3440.
A spindle orientation can also be performed by an initiator. For this, marker M2501 must be set by
the PLC. This marker activates a spindle rotation with a spindle speed defined by machine parameter
MP3520.0 and a direction of rotation according to marker M2656. If the marker M2501 is reset by
the PLC (e.g.. via initiator), then the spindle will stop. The positional value will be displayed in the
status window. "Jog mode" for the spindle can be achieved in this way.
Set Reset
Program description:
Using the M Function M19 to activate a spindle orientation to the value which is determined by the
spindle-orientation cycle.
Using the M Function M20 to activate a spindle orientation to the value which is stored in
MP4210.47.
;Main program
LN M1 ;Generate logic ONE
S M1 ;Buffer marker which is continuously ONE
. . .
. . .
. . .
LN M2045 ;M strobe inactive
R M12 ;Spindle-orientation cycle active
R M2482 ;Acknowledgment of M code
The tapping cycle is defined in the NC program and can be called with CYCL CALL (M03). Tapping is
adjusted to the dynamic behavior of the machine by machine parameters.
MP7120.2
30 ms Dwell time from
(due to CYCL DEF 2.3
software)
S
MP3410.2
0 MP3410.2
MP3410.0
MP3410.0
M03
M05
MP7120.0
M04
Acknow-
ledgement
of M code
M2048
Cycle End of
start cycle
After switching on the spindle with M03 and successful acknowledgment (marker M2482) the set
spindle speed should have been reached when the feed commences. Upon switch-on, the spindle
follows the ramp from MP3410.0, on switching off it follows the ramp from MP3410.2. The M
functions that are output by the NC must be acknowledged.
However, if the feed ramp is flatter than the spindle ramp, then the spindle follows the flatter feed
ramp. Switch-off can be delayed by MP7120.2.
Example:
If spindle speed s = 1000 [rpm] = 1.8 [V], the thread ramp is 0.05 [V/ms], and the feed ramp is
steeper than 0.05 [V/ms] then:
1.8 [V]: 0.05 [V/ms] = 36 ms
The spindle is decelerated 36 ms before reaching the total hole depth. The spindle deceleration can
be delayed by the spindle slow-down time.
The restarting of the Spindle with M04 can be delayed by MP7120.0. The ramp follows MP3410.2
again. The restarting of the feed can be delayed with the dwell time which is programmed in the
cycle. The dwell times permit an optimal adjustment of the floating tap holder.
The switch-off of the spindle is again performed by the NC with M05. The switch-off ramp follows
MP3410.0. After this, the spindle is switched on again with M03.
The feed override can only be effective within limits when tapping, otherwise the floating tap holder
may be damaged. MP7110 was introduced for this limit.
Set Reset
0
MP7120.1
M03
M05
MP7120.0
M04
Acknow-
ledgement
of M code
M2048
Cycle End of
start cycle
Since, when using the spindle speed output in code, the spindle- and feed ramps cannot be
synchronized by the NC, a machine parameter MP7120.1 was introduced to enable the spindle to be
switched off early. M05 is automatically output by the NC and must be acknowledged.
The machine parameter MP7120.0 (dwell time for change of direction of rotation) and the
programmable dwell time are just as effective as for analog spindle-speed output.
MP7120.1 Advanced switch time of spindle for "tapping" cycle (only active with BCD output
of spindle rpm)
Input value: 0 to 65.535 [s]
0
Positionierfenster
Positioning window
erreicht (MP7150)
reached (MP7150)
Ramp
Rampefrom
aus orientierter
Oriented Halt
stop
S MP3410.3
0
orientierter
Oriented stopHalt
M05
Acknowledge-
Rückmeldung
ment of
M-Funktion
M function
M2095
Zyklusstart
Cycle Zyklus
End of cycle
Start Ende
M2499
A spindle overshoot when accelerating and running into position must be avoided at all costs.
MP7140
Greater
Smaller Greater
MP7130
Smaller
If a malfunction is recognized in the control, the TNC switches the "control is ready" output off, a
flashing error message appears on the VDU screen and the PLC program is stopped. This error
message can not be canceled. After removing the fault, the switch-on routine must be gone through
again.
If the input "control is ready" is switched off by an event outside the control, the error message
is displayed and the NC sets the marker M2190 and M2191. This error message can only be
canceled after the control voltage is switched on again.
The external EMERGENCY STOP is evaluated by the control as an external stop. If the external
EMERGENCY STOP is triggered during an axis movement, the moving axis is stopped in a controlled
manner. If the drive amplifiers are blocked by the external EMERGENCY STOP, the nominal-value
output may exceed the position monitoring fixed by the machine parameter. In this case, the error
message "Positioning error" or "Gross positioning error" will be displayed.
Marker M2827 makes it possible to suppress the external EMERGENCY STOP. If marker M2827 is
set, an external EMERGENCY STOP is not sent to the NC, instead all control loops are opened and
the nominal values are immediately set to 0 V.
Set Reset
This diagram represents a proposal for circuitry. The machine tool builder is responsible for
complying with applicable safety regulations.
Logic unit
After control voltage is switched on, the switch is opened
by each microprocessor for a short time.
+ -
k1
Control 24 V
voltage PLC
on K1
X21/34
X22/4
1 2 3 4 5 6 7 8 9
VDU display
9. The control switches off the output "control is ready" Flashing error-
(X21/34) after recognizing a fault. message
With MP950.x you can define an additional machine-referenced position. If you wish to reference to
this position in a positioning block, you must program it in with M92. MP950.x defines the distance
from this machine-referenced position to the machine datum.
M91 and M92 are active only in the blocks in which they are programmed.
RM
RM RM
MP950.0 X axis
MP950.1 Y axis
MP950.2 Z axis
MP950.3 4th axis
The 3-plane display mode can be produced according to either European or American convention.
Example:
X Z
Z X
No rotation Rotation by +90°
Bit 0 Changeover of
3-plane display + 0 = European convention
+ 1 = American convention
Bit 1 Rotation of the coordinate system
in the machining plane by + 90° + 0 = no rotation
+ 2 = coordinate system rotated by +90°
The most recently selected axis is displayed inversely. The PLC is informed (by a marker) which axis
has an inverse display. This information can be evaluated, for example, in connection with hand-
control equipment.
Machine parameter MP7285 can be used to select whether, in the positional display, the tool axis
takes account of the tool length or not.
MP7285 Calculation of the tool length in the position display of the tool axis
Input value: 0 or 1
0 = 0.001 mm or 0.001°
1 = 0.005 mm or 0.005°
2 = 0.010 mm or 0.010°
3 = 0.050 mm or 0.050°
4 = 0.100 mm or 0.100°
– Display from +0 to +359.999°: After a full turn the display value jumps back to 0°. In this
operating mode it is not possible to set software limit switches.
During absolute programmed movements of rotary axes (including PLC positioning) the table now
takes the shortest path to the target position, provided that Bit 1 of MP 7470 is set. For
incrementally programmed movements, however, the table moves according to the sign of the
programmed value.
– Display from –30 000° to +30 000°: In this operating mode software limit switches may be
entered. Absolute positional values from – 30 000° to + 30 000° can be programmed (166
revolutions).
With the feed rate potentiometer the feed rate can be changed to 0% to 150% of the programmed
feed rate.
The override values are shown in the PLC in word W766 and W494. If the PLC program overwrites a
value in W766, it will become active regardless of the potentiometer setting. W766 must be
overwritten in every PLC scan, since otherwise the normal feed rate would become effective again.
The value range is 0 to 150 in 1% increments, for nonlinear curves it is 0 to 15 000, corresponding to
0 to 150%.
To adjust the override values for auxiliary axes (PLC axes) see PLC module 9124.
With the Doubleword D596 the PLC can limit the maximum possible feed rate by entering a feed
rate value. The new feed rate becomes effective immediately.
In order to ensure compatibility with previous PLC programs, the Doubleword D596 is give the
default value 300 000 mm/min when the control is switched on or after an interruption of the PLC
scan, so that the maximum feed rate from the machine parameter becomes effective. With
"Tapping" (Cycle 2) and "Rigid tapping" (Cycle 17), the Doubleword D596 has no effect.
In the manual operating modes the axis feed rate is displayed, not the contour feed rate. There is a
choice of two display modes:
– The axis-specific feed rate from machine parameter MP1020.X is only displayed after pressing
an axis-direction key. If two axis-direction keys are pressed simultaneously no feed rate will be
shown.
– Even when none of the axis-direction keys is operated one feed rate will be displayed, which
can also be adjusted by the feed potentiometer. The smallest feed rate from MP 1020.X is valid
for all axes. The axis feed rate will also be shown if several axis-direction keys are pressed
simultaneously.
0 = Display of the axis feed rate only when an axis-direction key is pressed
axis-specific feed from MP1020.x)
1 = Display of the axis feed rate before operating an axis-direction key
(smallest value from MP1020.x for all axes)
M2485 Status display and sign of S analog for M03 PLC PLC
M2486 Status display and sign of S analog for M04
M2487 Status display for M05 and spindle stop
Control on
This timer starts with the first PLC run after the control reset.
Program run
This timer measures the duration of program run (see User's Manual TNC 360).
Spindle
The spindle operating time starts when the Markers M2485/M2486 are set and stops when they are
reset.
Set Reset
With machine parameter MP7274 the display of the current gear range can be selected through the
bit.
Bit 1 determines whether information necessary for spindle power display is measured directly
through the analog input at connector X8 (0 to 4.999 V) or through the PLC Word W600.
In machine parameter MP7275 the reference value of the spindle power is enter at 100%. This
results from the maximum value to be acquired and the maximum percentage factor to be shown.
A voltage of 0 to 4.999 volts is acquired via analog input. The spindle power should be displayed
between 0 and 150 %.
The information needed to display the spindle power is acquired through the 8 PLC inputs I100 to
I107. Values between 0 and 127 can be acquired. You wish to display the spindle power between 0
and 150 %. The reference value at 100% results as follows:
127
x 100 = 84.66
150
PLC Program:
.
.
.
LW I100 ;Read in the status of the PLC inputs I100 to I107.
A K+255 ;Evaluate only the lower 8 bits (PLC inputs)
= W600 ;and transfer for the spindle power display.
The PLC marker M2829 can also generate a block. The marker is reset by the NC.
Set Reset
M2829 NC block generation PLC NC
The text display for PLC Trace (PCTR) was placed up next to * for “Control in operation“ if the actual
value display is small.
Stepover
Stepover = (MP7430) x cutter radius
– Whether a channel should first be milled around the contour and the pocket cleared out afterwards,
or the pocket cleared out first, and then a channel milled round the contour.
– Under which conditions programmed pockets should be merged. The choice is between:
merging programmed pockets when the programmed contours overlap, or when the tool center
paths intersect.
– Whether the channel milling should be performed in one operation for all stepovers, or whether
for each peck depth channel milling and clearing out should be performed alternately.
Bit 0 Direction for channel milling +0= Anti-clockwise channel milling of the pocket
contours, clockwise for islands
+1= Clockwise channel milling of the pocket
contours, anti-clockwise for islands
Bit 1 Sequence for clearing +0= First channel milling, then clear out pocket
and channel milling +2= First clear out pocket , then channel milling
Bit 2 Merge programmed +0= Contours merged only if the tool center paths
contours intersect
+4= Contours merged if the programmed contours
overlap
Bit 3 Clearing out and channel +0= Clearing out and channel milling performed in
milling to pocket one operation for all depths
depth, or for each +8= For each peck, first perform channel milling,
infeed depth and then clearing out (depending on Bit 1)
before next peck
This selection can be made either through the MOD functions (see User's Manual for the TNC 360)
or the corresponding file types are disabled directly. If the ISO programming is activated via MOD
functions, marker M2060 is set.
Set Reset
M2060 ISO programming is selected NC NC
The dialog is taken from the PLC error file (input 0 to 99) or from the dialog file (100 to 199).
If the basic language English has been selected, then marker M2041 is set by the NC.
0 = Decimal comma
1 = Decimal point
The information "End of program" can be evaluated by the PLC. This is necessary when operating,
for instance, with a pallet changer.
Set Reset
M2061 END PGM, M02 or M30 has been executed NC NC
The value which is to be transferred is stored in Doubleword D528. The Q parameter which is to be
overwritten is defined in Word W516. The transfer is initiated by the strobe marker M2713.
The Doubleword D528 has a multiple usage. See also sections "PLC positioning" and "Datum shift."
Set Reset
M2713 Activate the transfer of the value from D528 to the PLC NC
Q Parameter defined in W516
The execution of the M function must be signaled to the NC by setting the markers M2482. The
next NC block is only processed when the signal is acknowledged and the marker M2045 (strobe
signal for M function) is reset by the NC. The M functions M00 to M99 can also be decoded and
transferred to the markers M1900 to M1999. This function is activated by the marker M2496. The
decoded output is retained for reasons of compatibility. However, HEIDENHAIN recommends M
code evaluation using Word W260.
Set Reset
Set Reset
100 LN M1
101 S M1 ;Generate one
.
.
199 L M2045 ;Strobe signal for M function
200 RN M2482 ;Reset acknowledgment of M function
201 CMT 77 ;Evaluation of M function
.
.
901 EM
902 LBL 77
903 CASE W260 ;M code?
904 CM0
905 CM1
906 CM2
907 CM3
.
.
930 ENDC
931 EM
.
.
1170 LBL 3 ;M function M03
1171 L M1
1172 S M2485 ;Status display M03, algebraic sign S analog
1173 R M2486 ;Reset M04
1174 R M2487 ;Reset M05
1175 S O10 ;Spindle ON
1176 L I10 ;Input for acknowledgment of M function?
1177 EM
M2045
M2485
O10
I10
M2482
For some applications this can be disadvantageous (e.g. laser cutting machines). In such applications
the program should be executed continuously and not wait for the acknowledgment of the M
function. This function can be selected by machine parameter MP7440, Bit 2. If this function is
selected then PLC positioning, datum correction, spindle orientation or limit switch range change are
all not permitted during the output of the M function.
This function must not be used for milling machines and boring machines.
If M89 is not defined as a modal Cycle call by machine parameters, then M89 will be transferred
to the PLC as a normal M function at the beginning of the block.
The key code from the TNC keyboard is directly evaluated by the NC. PLC inputs and outputs for the
machine control panel are available on connector X27 . These PLC inputs and outputs must be
evaluated by the PLC and the appropriate information passed to the NC.
All keys on the TNC keyboard can be inhibited by the PLC with M2855 to M2923. If an inhibited key
is pressed, the NC sets the marker M2182 and stores the corresponding key code in Word W274.
The PLC must reset the marker M2182 after evaluating this information.
The keys on the TNC keyboard can also be simulated by the PLC. To achieve, this the appropriate
key code is entered in Word W516 and activated by the strobe marker M2813. After execution of
the key code the NC resets the strobe marker M2813. For a key simulation the operating mode can
be taken from W272.
Set Reset
S R
M2855 PGM
NR
inhibit 59 PLC PLC
RND
M2857 inhibit 61 PLC PLC
CC
M2858 inhibit 62 PLC PLC
C
M2859 inhibit 63 PLC PLC
PGM
M2865 CALL
inhibit 69 PLC PLC
CR
M2867 inhibit 71 PLC PLC
M2874 TOUCH
PROBE inhibit 78 PLC PLC
TOOL
M2880 DEF
inhibit 84 PLC PLC
TOOL
M2881 CALL
inhibit 85 PLC PLC
CYCL
M2887 DEF
inhibit 91 PLC PLC
CYCL
M2888 CALL
inhibit 92 PLC PLC
LBL
M2889 SET
inhibit 93 PLC PLC
LBL
M2890 CALL
inhibit 94 PLC PLC
M2891 NO
ENT
inhibit 95 PLC PLC
CL
M2894 PGM
inhibit 98 PLC PLC
DEL
M2895 inhibit 99 PLC PLC
GOTO
M2898 inhibit 102 PLC PLC
END
M2915 inhibit 119 PLC PLC
M2917 BLK
FORM
inhibit 121 PLC PLC
Example:
If the "Position transfer" key is pressed in the operating mode "Positioning with manual entry" , a
linear NC block with all three principal coordinates (X, Y, Z) is to be generated.
24 PLC inputs (I 128 to I 151) and 8 PLC outputs (O 0 to O 7) are available on the female connector
X27 for the evaluation of the keys on the machine control panel. The evaluation of the signals from
the machine control panel must be performed in the PLC program. The appropriate markers will be
set thereby. For safety reasons a complement marker must be reset when some functions are
activated. This is especially so for keys with several contacts. If the complement marker is not
properly set or reset, the flashing error message "Error in PLC program" will appear. The displayed
code identifies the marker where the error has occurred.
An axis direction key which has been operated can be stored by marker M2450 (Complement
marker M2466) . This means that the axis will be traversed until NC STOP occurs. This memory
function must be activated by machine parameter MP7680 Bit 0.
+ 0 = Not stored
+ 1 = Stored
Example:
NC start key with two contacts I 128 and I 129
axis-direction key X+ with one contact I 130
.
71 L I128 ;First contact NC start key
72 = M2448 ;NC start
73 LN I129 ;Second contact NC start key
74 = M2464 ;Complement – NC start
.
100 L I130 ;Axis-direction key X+
101 = M2456 ;Manual traverse X+
102 LN I130
103 = M2472 ;Complement - manual traverse X+
.
The chapter "Mounting and electrical installation" contains instructions for connecting the touch
probes.
The touch probe can be controlled either with the probing cycles in the "Manual" and "Electronic
Handwheel" modes or by the "Touch Probe" function in the NC program (see TNC 360 User's
Manual). The touch probe is interfaced to the measuring conditions using machine parameters
MP6120 to MP6150.
F1
F2 Setup clearance
(MP6140)
Max. measuring range
(MP6130)
The probing sequence must be enabled by the PLC with marker M2503. This marker is set by the
NC after a probing cycle starts and the NC waits until the PLC resets marker M2503 before
executing the probing function.
A number of conditions are transferred to the PLC with markers M2022 to M2072. This information
can be processed further in the PLC program. The probing function is controlled entirely from the
NC.
In all modes when the stylus is deflected and marker M2502 is set, the controller stops the
machine. (This only applies for TS 120!). If M2502 is not set, the controller only detects stylus
deflection if the probing function has started. This is why HEIDENHAIN recommend setting marker
M2502 as soon as the touch probe is in the spindle.
The machine parameter MP7411 determines whether, during execution of the TOUCH PROBE block
the current compensation data for touch probe length and radius is taken from the tool file or from
the probe calibration process. MP7411 is also effective for the tool length compensation in the
digitizing cycles.
Example:
Enable of probing function in the PLC.
.
.
.
489 LN I9 ;I9 = 0 => TS not in holder
490 = M2502 ;stop if stylus deflected
491 ;
492 L M2503
493 AN I9
494 R M2503 ;acknowledge probing cycle
495 ;
496 ;
497 ;safety function
498 ;M03/M04 deactivate if TS not in holder
499 ;
500 L M2485 ;M03 activated?
501 O M2486 ;M04 activated?
502 AN I9 ;touch probe not in holder
503 S M2487 ;display M05
504 R M2485 ;deactivate M03
505 R M2486 ;deactivate M04
506 R M922 ;clear buffered marker M03
507 R M923 ;clear buffered marker M04
508 R M2488 ;NC stop
Technical Requirements
- "Digitizing with TS 120" is possible with TNC 360 using software types 259 90x03 (TNC 360) and
260 02x 04 (TNC 360 C) See also Chapter "Introduction", Section "Software".
- Installing the software module "Digitizing with the TS 120". The ID number of the logic unit
indicates whether the software module is already installed (see Chapter "Introduction", Sections
"EPROM locations", and in Chapter "Mounting and electrical installation", Section "Hardware
components"). If the module is already installed, the software number of the option will appear
beneath the NC and PLC software number, when the system is switched on or when the MOD
key is pressed.
- Interfaced touch probe TS 120.
- The machine must be optimized for "Servo lag operation".
Machine parameter MP6210 is the value for the oscillations executed by the touch probe as it scans
the form. It is governed by the dynamic response of the machine. The dynamic response is in turn
determined by the Kv factor (servo lag operation). The greater the Kv factor, the greater the number
of oscillations.
Machine parameter MP6210 determines the maximum probing feed rate in conjunction with the
programmed probe point interval, P.P.INT from the scanning cycles "Meander" and "Contour Lines":
This relation gives the formula for calculating the input value of MP6210:
optimized F [mm/min]1)
Oscillations [1/s] =
PP.INT [mm] x 60 [s/min]
1)
The optimized probing feed rate depends on the feed rate in the normal direction (MP6230).
Normal direction
Apart from the oscillation amplitude, the feed rate in the normal direction also determines the
maximum scanning feed rate. If MP6230 is too low, the machine dynamics will be under-utilized and
the scanning feed rate will also be low. If MP6230 is too high the oscillation amplitude will be too
high. In this case the stylus will be seen to lift off from the contour (the stylus "taps" the surface of
the workpiece) and the scanning feed rate no longer increases.
The maximum stylus deflection is defined by machine parameter MP6240. MP6240 will depend on
the length of the stylus used. MP6240 defines the maximum travel by which the stylus retracts on
inside corners. If the touch probe is not "cleared" after the stylus backs out by the travel defined in
MP6240, the touch probe axis (e.g. Z) is retracted in the positive direction. Digitizing continues as
soon as the touch probe is cleared. If the input value is too small, the touch probe system may get
caught up in a repeated attempt to get out of an inside corner.
Machine parameter MP6260 defines an M function that stores technology data such as tool
dimensions, spindle speed, feed rate and certain M functions (e.g. M3, M13). A small program is
generated containing these technology data and the M functions determined by MP6250. If the
program with the digitized data is run in blockwise mode this program is run immediately after the
generated program, the technology data is taken over.
Machine parameter MP6260 determines whether an M90 is added to each NC block (see also
"Constant feed rate in corners with M90" in Section "Servo positioning of the NC axes".
Machine parameter MP6270 defines the output format of the digitized data, i.e. the number of
decimal places to which the coordinates are output.
The "Range" cycle defines the cuboid scanning range and the file where the digitized data are stored.
The "Meander" cycle digitizes a 3-D form meander-wise (line by line) in the pre-defined range.
The "Contour Lines" cycle digitizes a 3-D form level-by-level in contour lines within a pre-defined
range. Level-by-level digitizing is mainly used for forms with steep edges.
FE 401
Further particulars about scanning cycles will be found in the TNC 360 User's Manual.
The scanning sequence responds differently for inside and outside corners. Here the two
parameters PP.INT (maximum probe point interval) and TRAVEL from the "Meander" and "Contour
Lines" scanning cycles operate like a travel limiter. Depending on the values that are entered for
these parameters, either the travel or the probe point interval are limited.
The travel is also responsible for geometrical accuracy at the corners. The smaller the stroke, the
greater the accuracy of corner resolution. If too small a stroke is defined however, it may affect
clearance at acute inside corners (minimum travel = 0.1 mm).
Outside Corners
PP. INT
Contour 1
Travel
2
4
On outside corners, having probed the last point the touch probe moves down the resultant
straight line until it either makes workpiece contact again or hits one of the two limits TRAVEL d or
PP.INT e. In the illustrated example TRAVEL is the limit, and the touch probe returns to the contour
f in the inverse scanning direction. The new scanning direction is defined by the probed points c
and f.
Max. deflection
of stylus MP6240
Contour
5 PP
. IN
6 4 T
3
1 2
el
v
Tra
PP
. IN
T
On inside corners, having probed the last point c the touch probe continues to oscillate in the same
scanning direction but changes direction because it cannot get clear. It then moves down the
resultant straight line until it either gets clear or hits one of the limits TRAVEL e or PP.INT.e
The touch probe moves in inverse scanning direction to get clear. If the programmed probe point
interval PP.INT f is too small for the probe to clear, it travels paraxially in negative direction by up to
the value of MP6240 (maximum stylus deflection). As soon as the touch probe is clear it returns to
the contour g in the inverse travel direction. The new scanning direction is defined by the probed
points c and g. If the touch probe has failed to clear even after it has backed out by the value of
MP6240 h, the touch probe axis (e.g. Z+) is cleared in the positive direction. If the stylus is still
deflected after it reaches the "clearance height" (see "Range" scanning cycle) the scanning sequence
is aborted and an error message is displayed.
- Set up the flat workpiece with vertical face and plane surface in the machining plane (e.g. XY
plane).
- Probe the surface with probing function "Surface = Datum" ("MANUAL" or "EL. HANDWHEEL
MODE") and enter the reference plane as +0 mm.
- The interface must be configured according to the type of desired memory for the digitized data
(FE 401 or PC with "Block Transfer" program). See TNC 360 User's Manual.
- Enter NC program with the scanning cycles "Range" and "Meander" and the scanning direction X
and the probe point interval 1 mm, e.g.
0 BEGIN PGM 1 MM
Z
Y
MAX
MIN
Optimize the Z axis by defining the range such that mainly the vertical face is scanned.
Z
Y
MAX
MIN
X
In the
"PROGRAM RUN/FULL SEQUENCE"
mode, select optimization program and operate
the external START KEY.
Machine runs, digitizing starts.
Increment MP6230
(e.g. by 10 mm/min) t[s]
Are oscillations in
no normal direction visible
(stylus tip is seen to lift off
workpiece surface)?
yes
optimised F 1) [mm/min]
MP 6210 [1/s] =
PP.INT 2) [mm] x 60 [s/min]
When the calculated machine parameter MP 6210 is entered the feed override potentiometer is
trimmed to the "attained feed rate".
1)
Maximum possible feed rate noted during optimizing
2)
PP.INT is the programmed maximum probe point interval from the "Meander" scanning
cycle (in the example, PP.INT = 1 mm).
MP7640 determines which handwheel is connected. If a value greater than zero is entered but no
handwheel is connected, the error message "HANDWHEEL?" will appear.
The counting direction for the measuring system signals of the handwheel are entered in machine
parameter MP7650.
Shock and vibration can cause a slight movement of the handwheel and thus lead to an unwanted
traverse movement. In order to avoid this, a threshold sensitivity for the electronic handwheel is
entered in machine parameter MP7660. Setting the Marker M2826 inhibits traverse with the
handwheel, i.e. handwheel pulses are suppressed.
For HR 130, HR 330, and HR 332 one interpolation factor can be selected in the "Handwheel"
operating mode. For HR 150 with HRA 110 up to three can be selected. This interpolation factor
determines the traverse distance per handwheel revolution. In order to ensure that the rapid
traverse rate fixed by the machine parameter MP1010.x is not exceeded, the NC determines the
minimum entry value for the interpolation factor. For the HR 130, HR 330, and HR 332 handwheels,
the NC goes by the smallest value which was entered, i.e. according to the slowest axis.
Machine parameter MP7641 bit 0 defines whether the interpolation factor can be entered through
the TNC keyboard (see User's Manual) or through the PLC module 9036 (see Chapter 7, section
"PLC Modules"). With machine parameter MP7641 bit 2 the interpolation factor for the handwheel
can be defined both from the keyboard and from the PLC module 9036. If bit 2 = 0, the machine
parameters function as before (entry from the keyboard or from PLC module 9036).
If in machine parameter MP7641 bit 3 is set, the PLC can poll the keys (except for the axis keys) in
any mode of operation. This function takes effect before the REF run. The axis keys and the
handwheel pulses do not become effective until handwheel mode is active. After an error the
handwheel is not driven until the handwheel key is pressed.
In the "Programming and editing" mode of operation the axis can be moved by the handwheel if in
machine parameter MP7641 bit 1 = 1. The interpolation factor or the handwheel axis can be
changed only in the "Electronic handwheel" mode, regardless of the handwheel model. Once a
handwheel axis has be selected, it remains active even after a switch of operating modes.
Simultaneous use of the handwheel interface and the RS-232-C interface causes a conflict in baud
rates (38 400 and 19 200 baud) resulting in the error message BAUD RATE NOT POSSIBLE.
For the HR 150 with the HRA 110 handwheel adapter the control sets the interpolation factor
individually for up to three axes.
Interpolation factor Traverse distance per handwheel Effective from rapid traverse rate:
revolution [mm] MP1010.x [mm/min.]
0 20 12 000
1 10 6 000
2 5 3 000
Machine parameter MP7670 can be used to select a higher limit than that calculated by the NC.
MP7640 Handwheel
Input: 0 to 6
10 Electronic handwheel
MP7640 = 3 with evaluation of the +, – and rapid traverse keys in the PLC
MP7645.0 determines whether all 12 keys and their LEDs are accessible via PLC or whether the
axis selection keys and their LEDs are excepted.
0 = All keys except axis selection keys and their LEDs are
accessible via PLC
1 = All 12 keys and LEDs are accessible via PLC
When a key is pressed, the corresponding PLC input is set. When a PLC output is set, the
corresponding LED lights up.
The PLC inputs I160 and I175 generate signal edges. The positive edge is assigned to markers
M1660 to M1675, the negative edge is assigned to markers M1860 to M1875.
If MP7645.0 = 0 the keys X, Y, Z, IV and their If MP7645.0 = 1 all twelve keys are assigned to
LEDs are assigned to the NC. The remaining the PLC inputs I160 to I171 and all LEDs to the
keys are assigned to the PLC inputs I164 to I170. PLC outputs O96 to O107.
the LEDs are assigned to the PLC outputs O100
to O106.
0O96 0O97 0O98
I160 I161 I162
X O100
IV I164 0O99 O100 O101
I163 I164 I165
Y O102
V I166 O102 O103 O104
I166 I167 I168
Z O103 O104
I167 I168 O105 O106 O107
I169 I170 I171
O101 O105 O106
I165 I169 I170
X IV
Y V
;Main program
LBL 1
PS K+9 Interrogate the selected handwheel axis with 9035
CM 9035
PL B0
L K+0 Erase the 8 Markers for "manual"
B= M2456 traverse of the axes X to IV
L K$FF Set the 8 complement markers
B= M2472
A MO Erase the PLC outputs
ON MO O100 to O106.
R O100 All LEDs except the
R O101 LED of the selected
R O102 axis are switched off.
R O103
R O104
R O105
R O106
LBL 10 X axis
LN M2457 If X– is not active
A I170 and the + key is pressed,
S M2456 the axis moves in X+
R M2472 direction.
S O105 LED on the + key lights up.
MP7641 determines whether the interpolation factor can be entered directly through the TNC
keyboard or through the PLC module 9036 (see also Chapter 7, Section "PLC Modules").
If the switch for the selection of the interpolation factor is used, the inputs I160 to I167 are to be
evaluated in binary values before using the PLC Modules 9036. The third handwheel can be
assigned to any axis. MP7645.2 determines whether the axis for the third handwheel is selected
through the axis selection key (see MP7645.0) or via the machine parameter MP7645.1.
2: 3 Z axis
4 IV axis
1: X axis
2: Y axis
4: Z axis
8: IV axis
Both switches function with 0V logic. If, for example, the switch S1 is at setting 3, then input I162 is
logically 0 and inputs I160, I161 and I163 to I167 are logically 1.
Step switch S1
In this PLC example the minimum interpolation factor is read and processed with the PLC module
9032 from MP7670.
LBL 101
LBL 102
Example:
Switch setting: 4
Minimum interpolation factor: MP 7670 = 5
In this PLC example are the following events:
Inputs: I160 to I162 and I164 to I167 are logically 1
Input: I163 is logically 0
Byte 1: 11110111
Byte 2: 00001000
Byte 3: 3
Byte 4: 5
Byte 5: 8
In the above example, the switch S2 is configured as follows:
Switch setting Interpolation factor
1 (Left-most setting) 5
2 6
3 7
4 8 Present switch setting
5 9
6 10
7 10
8 (Right-most setting) 10
The function of the TNC 360's analog input for displaying spindle power is described in Section
"Expanded spindle display" (see 6.3.8).
The analog input is located at connector X8 (Pin 2 analog input, Pin 10 0V for analog input).
The incremental jog positioning function is activated through the PLC marker M2498. In the
electrical handwheel mode the dialogue "jog increment" is then displayed to prompt the user to enter
the jog increment.
Incremental jog positioning is normally executed through axis direction keys. In order to cause only a
single movement when the button is pressed, the PLC input signal for the axis direction button must
be evaluated for one edge (e.g. positive edge). See also Chapter "PLC programming", Section "Edge
evaluation of the PLC inputs".
This inhibits the function for manual traverse in the electronic handwheel mode when the axis
direction button is pressed for a long time. Each time the button is pressed, the axis moves only
once and only by the entered jog increment.
In the PLC program the start marker and the corresponding complement marker must be taken into
account. If this in not the case the error message "PLC ERROR xx" appears.
EM
.
.
.
LBL 47 ;HIRTH_4_AXIS
;----CALCULATE LEFT AND RIGHT GRID POINT ---
L D140 ;REFPOS_4TH_AXIS
/ W232 ;GRID_4
PSW
X W232 ;GRID_4
= D152 ;RIGHT_GRID
PLW
+ K1 ;ONE
X W232 ;GRID_4
= D156 ;RIGHT_GRID
;----CALCULATE DIST (DIFFERENCE FROM LEFT AND RIGHT GRID) ---
L D140 ;REFPOS_4_AXIS
- D152 ;RIGHT_GRID
PSW
CM 29 ;GENERATE ABSOLUTE VALUE
PL D160 ;DIF_LEFT
L D140 ;REFPOS_4_AXIS
- D156 ;RIGHT_GRID
PSW
CM 29 ; GENERATE ABSOLUTE VALUE
PL D164 ;DIF_RIGHT
;----COMPARE DISTANCE LEFT > < RIGHT ? ----
L D164 ;LOAD DIF.-RIGHT
< D160 ;LOAD DIF.-LEFT
CMT 49 ;RIGHT GRID IS NEARER
CMF 50 ;RIGHT GRID IS NEARER
;----HIRTH GRID CONTACTED----
L M2 ;MP_EDITOR_ACTIVE
A M2011 ;NP_M2011_4_INPOS
= M597 ;G_HIRTH_4A_INPOS
;----HIRTH-ERROR 4-AXIS----
LN M600 ;MANAL MODE OF OPERATION
AN M2 ;MP_EDITOR_ACTIVE
A M2011 ;NP_M2011_4_INPOS
S M527 ;HIRTH_ERR_4
;----ERASE ERROR WITH NC START----
L I132 ;I_NC_START
R M527 ;HIRTH_ERR_4
;----DISPLAY ERROR----
L M527 ;HIRTH_ERR_4
S M2933 ;PN_ERR_HIRTH_NOTINPOS
;----RELEASE FOR POSITIONING TO THE GRID----
LN M2011 ;NP_M2011_4_INPOS
S M530 ;POSRELEASE_4A
;----MOVE HIRTH-ACHSE TO THE GRID----
L M600 ;MANUAL OPERATING MODE
LBL 49 ;R_4A_GRID
L D164 ;DIF_RIGHT
< W236 ;POS_WINDOW_4
= M2 ;MP_EDITOR_ACTIVE
L D156 ;RIGHT_GRID
= D148 ;PLC_POS
EM
LBL 50 ;L_4A_GRID
L D160 ;DIF_LEFT
< W236 ;POS_WINDOW_4
= M2 ;MP_EDITOR_ACTIVE
L D152 ;RIGHT_GRID
= D148 ;PLC_POS
EM
LBL 51 ;START_4_PLC_POS
L D148 ;PLC_POS
= D540 ;PN_D540_4_PLC_POS
L W966 ;NP_W966_FEED_4_ACHSE
= W566 ;PN_W566_POSFEED_4
LN M2707 ;PN_M2707_START_4_POS
S M2707 ;PN_M2707_START_4_POS
EM
LBL 26 ;INIT_HIRTH
;----READ MP4230 AXIS ACTIVE----
PS K4230 ;MP420
PS K3 ;MP_EDITOR
CM 9032
L M3171 ;NP_M3171_MODULE_ERR
S M2956 ;PN_MODULEERRSUBM
S M2815 ;PN_M2815_PLC_EMERGENCY_STOP
PLW
<> K0 ;ZERO
= M595 ;G_HIRTH_ACTIVE_4
;----READ MP4239 GRID---
PS K4239 ;MP430
PS K3 ;MP_EDITOR
CM 9032
L M3171 ;NP_M3171_MODULE_ERR
S M2956 ;PN_MODULEERRSUBM
S M2815 ;PN_M2815_PLC_NOT_AUS
Each axis (X, Y, Z, 4) is assigned a doubleword (D528 to D540) for the correction value. If a value for
the appropriate axis is entered via the PLC program and strobe marker M2716 is set, then a datum
correction will be active at the next M/S/T strobe. The correction is computed in the actual position
display. The display then indicates the shifted system of coordinates.
Example:
The corrections can be transferred to doublewords, D528 to D540, from different memory areas:
- Enter values in MP4210.0 to MP4210.47 and they will also be in D768 to D956; now copy values
via PLC program into D528 to D540.
If several datum shifts are executed in one axis, the correction values refer to the uncorrected
reference system. In datum compensation with the value 0, previous (axis specific) corrections are
canceled.
L M1921
A M2025 ;M21 activated
A M10 ; Buffered marker for strobe marker 2716
CMT201 ;Deactivate datum correction call
R M10
L M1920
O M1921
A M2045
AN M2716
S M2482 ;Acknowledgment
Tool data are stored in the tool table and tool management (special tool, tool pocket management
etc.) is handled by the NC. The NC supplies the PLC with the information it needs to control the tool
changer via markers and words.
BEGIN TOOL MM
T0 P0 L+0 R+0
T1 P1 L+10 R+20
T2 P2 L+50 R+30
T3 L+0 R+0
T4 SP4 L+100 R+300
T5 L+0 R+0
T6 P6 L+50 R+15
. . . .
. . . .
. . . .
END TOOL MM
The number of tools in the tool table is defined in machine parameter MP7260. If MP7260 contains
a zero value, then the system will run without a tool table (program "0" does not exist). Tool length
and tool radius are programmed in the NC program with TOOL DEF (see User's Manual).
Set Reset
M2594 Inhibit editing of pocket number in the tool table PLC PLC
in the tool table
P5 P6 P7 P8 P9 P10
The number of pockets to be left vacant on both sides of the tool is defined in machine parameter
MP7264. Special tools are identified by an "S" in the tool table. The numbers of the vacant pockets
are not displayed. Variable pocket coding can be limited for special tools. If marker M2601 is set,
then special tools are returned to their original pocket despite the "variable pocket coding" setting.
Set Reset
The TOOL DEF block can be used to pre-position the tool changer. After a tool has been changed,
the next tool is programmed with TOOL DEF. The PLC evaluates the tool and pocket number and
pre-positions the tool changer at the follow-up tool.
.
.
.
TOOL CALL 1 Z S500
TOOL DEF 2
L Z+20 R0 F500 M03
.
.
.
TOOL CALL 2 Z S1000
TOOL DEF 3
.
.
.
The system can be operated with either variable or fixed tool pocket coding.
Machine parameter MP7480 defines whether the tool number or the pocket number is transferred
to the PLC. For variable pocket coding the pocket number must be transferred to the PLC (MP7480
= 3). With fixed pocket coding it is advisable to work with the tool number (MP7480 = 1 or 2).
When executing a TOOL CALL or TOOL DEF block, depending on the setting of MP7480, the NC
transfers either only the tool number or the tool number and the pocket number of the programmed
tool to the Word W262 or W262 and W264, respectively. The strobe marker M2046 (TOOL CALL)
or M2047 (TOOL DEF) is set. The NC does not reset these strobe markers until the PLC sets marker
M2483 (TOOL CALL) or M2484 (TOOL DEF) after processing the tool or pocket number. The
machining program is resumed when strobe markers M2046/M2047 are reset.
If tool number 0 is executed, then NC sets marker M2400 and this is not reset until there is a TOOL
CALL for another tool.
0= No output
1= Tool number output only when tool number changes (W262)
2= Tool number output with every TOOL CALL block (W262)
3= Output of pocket number (W262) and tool number (W264) only when tool
number changes
If the PLC enters the tool number in Word W512, the associated pocket number is stored in W264
through strobe marker M2715. If the PLC enters the tool number in W512 and the pocket number in
W514, the strobe marker M2714 of the T code and P code is transferred to the NC.
0= No output
1= Tool number output only when tool number changes (W262)
2= Tool number output with every TOOL DEF block (W262)
3= Output of pocket number (W262) and tool number (W264) only when tool
number changes
Set Reset
Unlike variable pocket coding, the pocket numbers are displayed in the tool table but are not
changed by the NC.
If marker M2612 (suppress pocket exchange in the tool table ) is set before a T strobe is output
(M2046), the pocket numbers are not exchanged. The PLC only acknowledges the T strobe without
having made an exchange in the tool magazine and resets the PLC marker M2612. The new tool
number is displayed highlighted (inversely) in the status and the associated tool data ( length, radius)
are activated. The inverse display of the tool number in the status display remains until a tool has
The number of tools with a pocket number is defined in machine parameter MP7261. The input
value for MP7261 matches the number of pockets in the tool magazine. This means that more tools
can be defined in the tool table than there is room for in the tool magazine [(MP7260) > (MP7261)]. If
a tool number is programmed and no pocket is defined for it, pocket number 255 (W262) is
transferred on TOOL CALL, and marker M2401 is set.
Only the tool number and the pocket number are transferred when TOOL DEF is programmed. A
TOOL DEF for a manual tool has no relevance in the PLC.
A variety of tool types can be called from the machining program. The following definitions are used
in the examples that follow:
N = Tool for which a pocket number is defined in the tool table. (Normal).
M = Tool for which no pocket number is defined in the tool table. These tools must be changed
by hand. (Manual).
S = Special tool (defined in tool table).
Nine different combinations of toolchange sequence are therefore possible. For many toolchange
sequences, for the tool magazine to be controlled, two pocket numbers (tool numbers) must be
output in succession for one TOOL CALL. This is reported to the PLC by markers M2093 and
M2600. The PLC must evaluate and acknowledge both pocket numbers (tool numbers).
The logic diagrams for the nine different toolchange sequences are shown on the following pages
(activated by TOOL CALL).
The pocket number and tool number of the called tool are transferred.
1
M2046
0
1
M2483
0
1
M2093
0
1
M2600
0
1
M2401
0
1
M2402
0
1
M2403
0
1
M2601
0
With this toolchange two pocket numbers (or tool numbers) must be transferred in succession.
M2093 indicates that another TOOL CALL strobe (M2046) follows.
With M2600 the PLC can determine the sequence in which the pocket numbers are transferred. The
decision will depend on whether a single or double changing arm is in use.
The pocket number of the old tool and tool number 0 are transferred first. Tool number 0 tells the
PLC to clear the spindle. After acknowledging with M2483 the pocket number and tool number of
the new tool are transferred.
1
M2046
0
1
M2483
0
1
M2093
0
1
M2600
0
1
M2401
0
1
M2402
0
1
M2403
0
1
M2601
0
The pocket number and tool number of the new tool are transferred first. After acknowledging with
M2483 the pocket number of the old tool and tool number 0 are transferred. Tool number 0 tells the
PLC to clear the spindle.
0
0
0
0
0
0
0
0
: 3RFNHW1R>1@3RFNHW1R>6@
: 7RRO1R17RRO1R
With this toolchange sequence two pocket numbers (or tool numbers) must be transferred in
succession. M2093 indicates that another TOOL CALL strobe (M2046) follows.
Irrespective of marker M2600, pocket number 255 and tool number 0 are transferred first. Tool
number 0 tells the PLC to clear the spindle. Pocket number 255 means that there is no pocket in the
tool magazine for the called tool. After acknowledging with M2483, the pocket number and tool
number of the new tool (called tool) are transferred.
0
0
0
0
0
0
0
0
: 3RFNHW1R3RFNHW1R>1@
: 7RRO1R7RRO1R>1@
The pocket number 255 tells the PLC that there is no pocket in the tool magazine for the called tool.
0
0
0
0
0
0
0
0
: 3RFNHW1R
: 7RRO1R>QHZ0@
With this toolchange sequence two pocket numbers (or tool numbers) must be transferred in
succession. M2093 indicates that another TOOL CALL strobe (M2046) follows.
Irrespective of marker M2600, the pocket number of the old tool and tool number 0 are transferred
first. Tool number 0 tells the PLC to clear the spindle. After acknowledging with M2483, pocket
number 255 and the tool number of the called tool are transferred. Pocket number 255 tells the PLC
that there is no pocket in the tool magazine for the called tool.
0
0
0
0
0
0
0
0
: 3RFNHW1R>1@3RFNHW1R
: 7RRO1R7RRO1R>0@
With this toolchange sequence two pocket numbers (or tool numbers) must be transferred in
succession. M2093 indicates that another TOOL CALL strobe (M2046) follows.
Irrespective of marker M2600, the pocket number of the old tool and tool number 0 are transferred
first. Tool number 0 tells the PLC to clear the spindle. After acknowledging with M2483, pocket
number 255 and the tool number of the called tool are transferred. Pocket number 255 tells the PLC
that there is no pocket in the tool magazine for the called tool.
0
0
0
0
0
0
0
0
: 3RFNHW1R>6@3RFNHW1R
: 7RRO1R7RRO1R>0@
Marker 2601 can be used to set whether the special tool is to be returned to its original pocket
despite variable pocket coding.
The same logic diagram applies to single and double changing arms (M2600 = 0 and 1) with variable
pocket coding for special tools (M2601 = 0).
0
0
0
0
0
0
0
0
: 3RFNHW1R>QHZ6@
: 7RRO1R>QHZ6@
The pocket number of the old tool and tool number 0 are transferred first. Tool number 0 tells the
PLC to clear the spindle. After acknowledging with M2483, the pocket number and tool number of
the new tool are transferred.
0
0
0
0
0
0
0
0
: 3RFNHW1R>ROG6@3RFNHW1R>QHZ6@
: 7RRO1R7RRO1R>QHZ6@
The pocket number and tool number of the new tool are transferred first. After acknowledging with
M2483, the pocket number of the old tool and tool number 0 are transferred. Tool number 0 tells the
PLC to clear the spindle.
0
0
0
0
0
0
0
0
: 3RFNHW1R>QHZ6@3RFNHW1R>ROG6@
: 7RRO1R>QHZ6@7RRO1R
With this toolchange sequence two pocket numbers (or tool numbers) must be transferred in
succession. M2093 indicates that another TOOL CALL strobe (M2046) follows.
There is a different pocket number transfer sequence depending on M2600 (single/double changing
arm). M2601 is not relevant.
The pocket number of the old tool and tool number 0 are transferred first. Tool number 0 tells the
PLC to clear the spindle. After acknowledging with M2483, the pocket number and tool number of
the new tool are transferred
0
0
0
0
0
0
0
0
: 3RFNHW1R>1@3RFNHW1R>6@
: 7RRO1R7RRO1R>6@
The pocket number and tool number of the new tool are transferred first. After acknowledging with
M2483, the pocket number of the old tool and tool number 0 are transferred. Tool number 0 tells the
PLC to clear the spindle.
0
0
0
0
0
0
0
0
: 3RFNHW1R>6@3RFNHW1R>1@
: 7RRO1R>6@7RRO1R
With this toolchange sequence two pocket numbers (or tool numbers) must be transferred in
succession. M2093 indicates that another TOOL CALL strobe (M2046) follows.
Irrespective of marker M2600 and M2601, pocket number 255 and tool number 0 are transferred
first. Tool number 0 tells the PLC to clear the spindle. Pocket number 255 means that there is no
pocket in the tool magazine for the called tool. After acknowledging with M2483, the pocket number
and tool number of the new tool (called tool) are transferred.
0
0
0
0
0
0
0
0
: 3RFNHW1R3RFNHW1R>6@
: 7RRO1R7RRO1R>6@
SPIREG
The following sequence diagram uses variables for greater clarity. In the PLC program these
variables are replaced by byte addresses.
ISTREG = B10 = Pocket number at the toolchange position of the tool magazine
GRE1 = B11 = Pocket number of tool in changing arm facing tool magazine
GRE2 = B12 = Pocket number of tool in changing arm facing spindle
SPIREG = B13 = Pocket number of tool in spindle
The sequence diagram for this tool changer is subdivided into modules.
Feedback is
TOOL DEF immediate so
feedback that the NC PGM
can continue
No Message:
P < 255 CANNOT
Manual tool PREPARE
MANUAL
Yes TOOL
No
P = SPIREG Tool already in spindle
Yes
No
P = GRE1 Tool already in GRE1
Yes
Load GRE1
No
GRE1 = 0 STANDBY Module
GRE1 empty
Yes
GRE1 assigned
STANDBY BACK
End
Module
No Tool already
P = SPIREG
in spindle
Yes
P = GRE1 No
Tool already in changing arm
Yes
Yes
COMPARE
P-CODE Load ISTREG Load tool from
WITH ISTREG to GRE1 magazine to GRE1
Module
End
Yes
End
The old tool is returned to the tool magazine and the operator is prompted to load a manual tool (not
in tool magazine).
Move GRE2 to
No spindle and Old tool out
GRE1 = 0 load SPIREG
to GRE2
Yes
Prompt user to
load tool and press
No OK key
M2046 = 1
Yes
Strobe set
again OK key No
pressed
Yes
The operator is prompted to unload the spindle manually as there is no pocket for the current tool in
the magazine. The called tool is loaded automatically.
No GRE1
Prompt user to GRE1 = 0 empty
unload tool and
press OK key Yes
Unload GRE1
STANDBY BACK
Module
No
OK key
pressed
Yes STANDBY
Fetch tool to
Module
GRE1
Load zero in
SPIREG
(spindle empty) CHANGE
Module
TOOL CALL
feedback
End
No
M2046 = 1
Yes
TOOL CALL
strobe set again
Move axis to
manual change
position
Prompt user to
unload old and
load new tool
Press OK key
No OK key
pressed
Yes
Load T code to
SPIREG
End
Move GRE2 to
spindle, load Old tool out
SPIREG to
GRE2
Turn changing
arm, load
SPIREG with Turn changing arm
GRE1, set and load new tool
GRE1 to zero,
retract arm
Wait No
M2046 = 1
Yes
TOOL CALL
strobe set
again
No
P = ISTREG
Magazine in position
Yes
COMPARE
P-CODE WITH Position tool magazine
ISTREG
Module
Transfer
P code
to data stack
COMPUTE THE
SHORTEST
PATH IN
M3042
Module
No
P = ISTREG End
Yes
No
M3042 = 1
Yes
Transfer GRE1
to data stack
COMPUTE THE
SHORTEST
PATH IN
M3042
Module
GRE1 = No
ISTREG End
Yes
No
M3042 = 1
Yes
M3042 = 0: reverse
M3042 = 1: forward
Fetch search
pocket from data
stack to NOMREG
Divide number of
mag. pockets by
two and save to
MAGREG
Save absolute
value from
ISTREG-NOMREG
difference to
ABSREG
No
NOMREG >
ISTREG
Yes
No No
ABSREG < NOMREG <
MAGREG ISTREG
Yes Yes
ABSREG > No
MAGREG
Yes
Magazine Magazine
M3042 = 1 forward M3042 = 0 reverse
End
Given step
U [V] function 1 Overshoot
Correct
Umax
Tacho-signal
T t [ms]
Incorrect!
t [ms]
The P component of the subordinate control loop is too high, or the I component too low.
Incorrect!
t [ms]
The P component of the subordinate control loop is too low, or the I component too high.
The maximum acceleration time T can be deduced from the step response.
U [V]
Umax
T t [ms]
vmax
a= vmax = convert velocity at Umax in [m/sec]
T ⋅ 11
.
a = acceleration [sec]
Before connecting the control, the NC and PLC supply voltages and the ground connections should
be tested once more (see Chapter "Mounting and electrical installation ").
Most machine parameters can be pre-defined and entered according to the machine parameter list
and the functional descriptions. The parameters which affect the control loop must be assigned
provisional values (see Section 16.3.6).
In order to avoid lengthy delays on restarting during the commissioning of the control, the memory
test can be suppressed by MP7690 (see Section "Display and operation").
Machine parameter MP4010 (see Section "Display and operation") selects whether the processing
uses a PLC program from EPROM or from RAM.
The PLC program in RAM is used for commissioning purposes. It only makes sense to create an
EPROM when all functions are operating without error. In case of doubt, please contact your
HEIDENHAIN customer service agency
– Test the Function "Control operational" according to Section "EMERGENCY STOP routine".
– Test the EMERGENCY STOP circuit by pressing the EMERGENCY STOP keys and by traversing
past the EMERGENCY STOP limit switches.
START
Line voltage on
Gross
positioning error Yes
(MP1040 or
MP210 incorrect)
?
No
Yes
↓
Positional displays show the distance to the
machine datum .
↓
Move all axes with the aid of the direction keys or
the handwheel in positive and negative direction to
just before the EMERGENCY STOP limit switches. Note the
values in the positional displays and their sign.
↓
Enter the noted values in MP910 or MP920.
↓
Select actual value display with MOD key.
Adjust the kv factor (MP1810) so that the voltage characteristic is as described in Section "Servo
positioning". If a different kv factor is required for rapid traverse to that for the machining feed rate, it
must be optimized separately.
t [s]
➀ Machining feed
MP1810 (kv factor): Reduce entry value until no oscillations are detectable.
U [V]
t [s]
U [V]
t [s]
Yes No
1)
Program the traverse paths for the axis concerned as large as possible.
Optimize kv factor
t [ms]
U [V]
t [ms]
1)
Program the traverse paths for the axis concerned as large as possible.
If the maximum acceleration of the servo loop cannot be determined with the battery supply, the
acceleration can be optimized as follows:
MP1060
Increase "acceleration"
in small steps.
Yes
Enter acceleration from MP1060.0
in MP1060.1 to 1060.4.
Move the Y, Z and IV axes with
the acceleration value found.
Reduce values, if necessary.
1)
Program the traverse paths for the axis concerned as large as possible.
MP1530 correct
MP1530 too large
MP1530 too small
t [ms]
Since MP1530 is effective for all axes, the worst axis determines the entry value. No axis should
show an overshoot.
t [ms]
t [ms]
For all axes, MP1520 influences the slope of the run-in characteristic when close to the nominal
position
U [V]
MP1520 correct
MP1520 too large
MP1520 too small
t [ms]
Since MP1520 is effective for all axes, the worst axis determines the entry value. No axis should
show an overshoot of the nominal position.
If MP1520 is made too small, the approach times to the nominal position will be significantly longer.
So MP1520 must be carefully optimized!
MP1520: Increase entry value until the position is clearly traversed when
approaching. The overshoot can also be observed in the actual value display.
t [ms]
MP1520: Reduce the entry value until the position is no longer traversed.
U [V]
t [ms]
1)
Program the traverse paths for the axis concerned as large as possible.
↓
MP1080 integral factor (for X axis):
raise entry value 1) , until the
Servo positioning becomes noticeably unstable
(observe the actual value display).
↓
MP1080: reduce the entry value in small steps
until the servo positioning is steady again 2).
↓
Repeat adjustment for Y axis, Z, and IV.
Whether or not an integral factor is possible in connection with the automatic offset adjustment with
MP 1220 can only be judged when observing the complete machine.
The optimum solution must be found during the commissioning procedure.
If the drives of the machine permit narrower limits, these may be entered.
All functions for which two or more axes must be interpolated are inhibited with machine parameter
MP7215, while certain other machine parameters are without function.
Set Reset
On machines with common drive is necessary to set the analog voltages for the axis drives to a
common output through machine parameter MP120 (see Section 1.2.1).
X axis MP 120.0 = 0
Y axis MP 120.1 = 0
Z axis MP 120.2 = 0
This means that the analog voltage for the X, Y and Z axis is sent to output 1.
After an axis is positioned, its control loop must be opened through the PLC program and its axis
must be clamped (see Section 3.6.4).
The machine tool builder provides these data in so-called machine parameters. In addition, machine
parameters can be used to activated certain functions, which are possible with HEIDENHAIN
contouring controls, but are required only on certain types of machines (e.g. automatic tool
changing).
If there is more than one input value for a single function (e.g., a separate input for each axis), the
parameter number is provided with indices.
Example:
The indices are assigned to the corresponding axes according to a fixed pattern.
Enter the code number 95148 to access the complete set of machine parameters.
The accesses a limited set of the machine parameters. This set of parameters can be safely
entrusted to access by the control user (see User's Manual) The machine parameters that can be
changed with the code number 123 are indicated in the list below with CN 123.
If the machine parameters have not yet been entered in a HEIDENHAIN contouring control (e.g.,
during commissioning), the TNC presents the list of machine parameters after the memory test.
Now the input values must be entered either by hand on the keyboard or through the data interface.
The data interface is activated by pressing the EXT key. It is preset to RS-232-C format and FE1
mode. This default setting can be changed through the MOD functions (see Chapter "Data
Interface").
A number is entered for each machine parameter. This value can be, for example, the acceleration
in m/s2 of an individual axis, or the analog voltage in volts.
Some machine parameters have multiple functions. The input values for these machine parameters
are calculated according to the function to be activated.
0 20 1
1 21 2
2 22 4
3 23 8
4 24 16
5 25 32
6 26 64
7 27 128
8 28 256
9 29 512
10 210 1 024
11 211 2 048
12 212 4 096
13 213 8 192
14 214 16 384
15 215 32 768
Incorrect entries are indicated with the error message "entry value incorrect."
0=A
1=B
2=C
3=U
4=V
5=W
MP710.0 Backlash compensation 4-21
to Input range: –1.000 to +1.000 [mm]
MP710.3
MP711.0 Size of the reversal peaks in circular motion 4-22
to Input range: –1.000 to 1.000 [mm]
MP711.3
MP712.0 Compensation value per control loop cycle time 4-23
to Input range: 0.000 to 1.000 [mm]
MP712.3
MP720.0 Linear axis-error compensation 4-23
to Input range:
MP720.3 – 1.000 to + 1.000 in [mm/m]
MP730 Non-linear axis-error compensation 4-27
Input range: 0 to 15
MP810.0 Axis X
MP810.1 Axis Y
MP810.2 Axis Z
MP810.3 Axis 4
MP910.0 Traverse range 1: Maximum value 4-15
to Input range:
MP910.3 –99 999.999 to +99 999.999 [mm] or [°]
MP911.0 Traverse range 2: Maximum value 4-15
to Input range:
MP911.3 –99 999.999 to +99 999.999 [mm] or [°]
MP912.0 Traverse range 3: Maximum value 4-16
to Input range:
MP912.3 –99 999.999 to +99 999.999 [mm] or [°]
3.2 Positioning
Machine Function and input Reaction / Page
parameter CN 123
MP1010.0 Rapid traverse 4-56
to Input range: 80 to 300 000 [mm/min]
MP1010.3
MP1020.0 Manual feed 4-56
to Input range: 80 to 300 000 [mm/min]
MP1020.3
MP1030.0 Positioning window 4-72
to Input range: 0.001 to 2 [mm] or [°]
MP1030.3
MP1040 Polarity of the nominal value voltage for the 4-7
positive direction of traverse
Input range: 0 to 15
0 = no automatic adjustment
MP1320 Direction for traversing the reference marks 4-48
Input range: 0 to 15
Input value: 0 to 8
0 = No spindle-speed output
0 = 0 rpm permitted
1 = 0 rpm not permitted
0 = EPROM operation
1 = RAM operation
MP4060.0 Path dependent lubrication 4-18
to Input range: 0 to 65 535
MP4060.4 (units of 65 536 µm)
MP4110.0 Time for timers 7-19
to Input range: 0 to 65 535 [PLC cycles]
MP4110.47
(TNC 360: 20 ms)
MP4120.0 Preset value for counters C0 to C31 7-21
to Input range: 0 to 65 535 [PLC cycles]
MP4120. 31
MP4130 Fast PLC input to suppress the monitoring 4-68
functions
Input value: 0 to 255 [No. of the PLC input]
MP4131 Activation condition for fast PLC input from 4-68
MP4130
Input value: 0 or 1
MP4210.0 Set a number in the PLC (D768 to W 988) 7-17
to Input range:
MP4210.47 –99 999.9999 to +99 999.9999 [mm] or [°]
MP4220.0 Set a number in the PLC in the word range W960 7-17
to to W966
MP4220.3 Input: 0 to 65 535
to
MP4239.0
to
MP4239.31
MP4310.0 Set a number in the PLC, in the Word range W976 7-17
to to W988
MP4310.6 Input range: 0 to 65 535
Bit 6 Bit 7
+0 = 1½ Stop bits 0 0
+64 = 2 Stop bits 1 0
+128 = 1 stop bit 0 1
+192 = 1 stop bit 1 1
Bit 8 RTS in quiescent state low
Bit 9 No EOT after ETX received
MP5030.0 Operating mode EXT: data transmission protocol CN 123 8-28
Input: 0 or 1
0 = TS 120
1 = TS 511
MP6120 Probing feed rate CN 123 4-152
Input range: 80 to 30 000 [mm/min]
MP6130 Maximum measuring range CN 123 4-152
Input range: 0.001 to 99 999.999 [mm]
MP6140 Safety clearance above measuring point CN 123 4-152
Input range: 0.001 to 99 999.999 [mm]
MP6150 Rapid traverse for probe cycle CN 123 4-152
Input range: 80 to 30 000 [mm/min]
(matching MP1520)
MP7140 Transient response of spindle on acceleration 4-104
Input range: 0.001 to 1
(matching MP1530)
MP7150 Positioning window for tool axis 4-104
Input range: 0.001 to 2 [mm]
MP7160 Suppress spindle orientation at the beginning of 4-104
Cycle 17
Input: 0 or 1
0 = Orient the spindle
1 = Suppress spindle orientation
0 = Inhibited
1 = Not inhibited
MP7245.0 Inhibit the HEIDENHAIN cycles 1 to 15 4-126
Input range: 0 to 65 534
MP7245.1 Inhibit the HEIDENHAIN standard cycles 4-127
16 to 30
Input range: 0 to 65 535
MP7250 Difference between Q parameter number for "CALL- 9-5
active" and "DEF-active" block in OEM cycles
Input 0 to 50
MP7251 Number of global Q parameters that can be 9-5
transferred from OEM cycle to the calling program
Input: 0 to 100
0 = Decimal comma
1 = Decimal point
MP7285 Calculation of the tool length for the position CN 123 4-113
display of the tool axis
Input: 0 or 1
0 = 0.001 mm or 0.001°
1 = 0.005 mm or 0.005°
2 = 0.010 mm or 0.01°
3 = 0.050 mm 0r 0.05°
4 = 0.100 mm or 0.1°
MP7300 Cancel status display, Q parameters, and tool data CN 123 4-119
Input: 0 to 7
0 = No output
1 = Output of tool number only when tool number
changes (W262)
2 = Output of tool number with every TOOL CALL
block (W262)
3 = Output of pocket number (W262) and tool
number (W264) only when tool number changes
0 = No output
1 = Tool number output only after tool number
change (W262)
2 = Tool number output with each TOOL DEF
block (W262)
3 = Output of pocket number (W262) and tool
number (W264) only after tool number change
3.13 Hardware
Machine Function and input Reaction Page
parameter / CN 123
MP7620 Feed rate and spindle override CN 123 4-84
Input: 0 to 15 4-116
0 = No handwheel
1 = HR 330
2 = HR 130
3 = HR 330 with evaluation of keys via PLC
4 = HR 332 with evaluation of keys via PLC
5 = Up to three HR 150 via HRA 110
6 = HR 410
If MP 7640 = 5:
Assignment of 3rd handwheel via axis selection
switch
Input value: 0 to 2
0 = not stored
1 = stored
MP7690 Memory test at switch-on 4-135
Input range: 0 to 3
The markers listed in italics have been retained to insure compatibility with the TNC 355. It is
recommended, however, that these functions be activated through the new word functions.
W576 Axis X
W578 Axis Y
W580 Axis Z
W582 Axis 4
D592 Position spindle orientation (Strobe M2712) 4-93
D596 Feed rate from PLC for feed rate limitation 4-116
W600 Value for spindle power display 4-120
W602 PLC text window 4-121
W604 Reserved
W608 Axis specific inhibition of the reference pulse –
D756 Set spindle speed from the PLC; programmed spindle speed 4-86
W764 % factor – spindle override (PLC → NC) 4-84
W766 % factor – feed rate override (PLC → NC) 4-116
D768 Input values from MP4210.0 to MP4210.47 7-15
to
D956
W960 Input values from MP4220.0 to MP4220.4 7-17
to
W968
W976 Input values from MP 4310.0 to MP4310.6 7-17
to
W988
W1008 S code for minimum rpm 4-91
W1010 Number of tool magazine pockets –
1 PLC-functions 7-5
1.1 Select PLC-operation 7-5
1.2 PLC – Main menu 7-6
1.2.1 PLC-program editing 7-6
1.2.2 Erase PLC-program 7-8
1.2.3 Transfer program from EPROM 7-8
1.2.4 Translate PLC program 7-8
1.2.5 Utilization 7-8
1.3 Test functions for the PLC-program 7-9
1.6.1 TRACE-function 7-9
1.3.2 TABLE function 7-10
1.3.3 Transferring the PLC-program 7-10
3 Commands 7-27
3.1 Load and Assign Commands 7-27
3.1.1 LOAD L 7-27
3.1.2 LOAD NOT LN 7-29
3.1.3 LOAD TWO'S-COMPLEMENT L– 7-31
3.1.4 LOAD BYTE LB 7-32
3.1.5 LOAD WORD LW 7-32
3.1.6 LOAD DOUBLEWORD LD 7-32
3.1.7 ASSIGN = 7-34
3.1.8 ASSIGN BYTE B= 7-36
3.1.9 ASSIGN WORD W= 7-36
4 PLC-Modules 7-103
4.1 Module 9000: Copy a marker-block 7-103
4.2 Module 9001: Copy a Word-block 7-103
4.3 Module 9010: Indexed reading of Byte
Module 9011: Indexed reading of Word
Module 9012: Indexed reading of Doubleword 7-104
4.4 Module 9020: Indexed writing of Byte
Module 9021: Indexed writing of Word
Module 9022: Indexed writing of Doubleword 7-105
4.5 Module 9032: Transfer machine parameter values to the PLC 7-106
4.6 Module 9035: Transfer status information to the PLC 7-107
4.7 Module 9036: Transfer PLC status information to the NC 7-108
4.8 Module 9040: Transfer coordinate values to the PLC 7-109
4.9 Data transfer by the PLC 7-109
4.9.1 Module 9100: Assign data interface 7-110
4.9.2 Module 9101: Enable data interface 7-110
The functions TRACE and TABLE, as well as a Syntax check on entering the PLC commands and a
logical test with the Function COMPILE can make it easier to find faults in the PLC program (see
section "Test functions").
5 ms are available for a PLC run. Up to 4000 logic commands, equivalent to 28 KB, can be
processed within this period (executable memory). A new PLC run commences every 24 ms, i.e.
every 24 ms the inputs are read and outputs are set.
↓
Press MOD
key
↓
Enter code number 807 667
↓
ENT key
↓
PLC operation is selected
(Main menu)
Select the required mode with the cursor keys ↑ and ↓ and activate by pressing ENT. To exit the
menu and return to the original NC mode, press the END key again.
After the ENT key is pressed, the editor identifies itself with
"0 EM"
"0" stands for program line 0 and "EM" for End of Module.
With this control it is possible to reassign the functions of TNC operating keys by entering the code
number 807 667. The new key assignments are indicated on a special tactile membrane that is
place over the TNC keyboard. The tactile membrane is included with this Technical Manual.
The PLC editing mode can be exited by pressing the END key.
.Line numbers
.Command from command store (see Section "Commands")
.Operand type
.Operand number
.Comment
The command, operand type, operand number and the comment must be transferred with ENT. The
cursor then jumps to the next positions within the instruction. The instruction is completed after the
comments are entered. If no comment is to be entered, the position is simply concluded the ENT.
Lines that are to contain only a comment should be started with the character ";" instead of a
command. A comment can therefore cover several lines if each line commences with ";". A line
contains a maximum of 26 characters for the comment and may include all numeral, letters and
other characters on the keyboard.
+ [ < X 7 8 9
*
_ / ] = > Y 4 5 6
Z 1 2 3
$
EXT
DEL
MOD ENT $ 0 · +/
GOTO END
$ CE ;
A B C D E
NO
ENT F G H I
T U V W J K L M N
O P Q R S
TE 335 A / TE 355 A
T U V W X 7 8 9
Y 4 5 6
+ [ <
*
_ Z 1 2 3
/ ] = >
$ 0 · +/
END
CE ;
DEL
$
EXT MOD ENT
GOTO
$
A B C D E J K L M N
NO
ENT F G H I O P Q R S
If a PLC program is already in the RAM prior to TNC switch-on, it is automatically translated.
Errors in the program can be found during the translation run (see Section "Program creation", "Error
messages").
1.2.5 Utilization
In the UTILIZATION mode of operation the occupied PLC processing time and the vacant PLC
memory are displayed.
The vacant memory is derived from the total memory and the occupied memory.
The vacant PLC memory is displayed in bytes or in percent of the maximum memory (28 KB).
100 % processing time corresponds to 2.5 ms (from 24 ms PLC cycle time). The maximum possible
processing time is determined by the manufacturer and equals 5 ms. The current processing time
indicates the duration of the last PLC scan. If the current processing time exceeds 5 ms, the blinking
error message
will appear.
Please note that the processing time increases by 20% during active V.24 data transfer, and by 5%
during handwheel operation. A PLC program should therefore be tested during active V.24 and
handwheel operation in order to ensure that it will never exceed maximum processing time.
SELECT I/O/C/T/M
DISPLAY TRACE BUFFER
START TRACE
END TRACE
SELECT I/O/C/T/M
Those inputs (I), outputs (O), counters (C), timers (T) or markers (M) whose logical states are to be
checked can be entered into a table in the SELECT I/O/C/T/M function. A maximum of 16 markers,
timers etc. can be simultaneously verified. Each position is interrogated via dialogue. Erroneous
entries can be deleted by pressing DEL.
The memory for the trace mode (TRACE BUFFER) has space for 1024 individual states per operand,
i.e. 1024 PLC processes are recorded. In order to record the required time duration of the user, a
TRIGGER condition can be entered for each operand:
If the trigger position is verified with the NOENT key, it means that a trigger condition is not
required. 512 states are recorded before and after a trigger event. The trigger event is regarded as
fulfilled only when the conditions for all operands are simultaneously fulfilled with TRIGGER.
Example: M2064 1
M2065 0
M2066 1
I5
Trigger event: M2064 logical "1"
M2065 logical "0"
M2066 logical "1"
The state of I5 has no significance for the trigger event: it is, however, recorded.
If no trigger condition is entered for the operands, the states of the operands are continually
recorded and, after ending the trace mode, the last 1024 states are displayed.
With the DISPLAY TRACE BUFFER function the logic states 0 or 1 of the selected operands are
graphically displayed in a diagram. With simultaneous triggering, the counter is reset to 0 (upper left
in screen). By using the cursor keys ← and →, 512 logic states can be observed before and after the
trigger event.
This can be used to determine, for example, whether a marker, output etc. was set too late or too
early. Taking the PLC processing time of 24 ms into account, a time displacement in ms can be
detected.
START TRACE
With this mode, TRACE is started. Until the trigger event occurs, the display PC TR blinks in the
status field. Then the display goes out.
END TRACE
If the trigger event does not occur, the trace can be aborted with the END TRACE function. In this
case, the last 1024 states of the selected operands are stored.
PLC programs written on a computer can be transferred into the PLC RAM with the RS-232-C
interface. To load a program, select READ IN SELECTED PROGRAM. With the OUTPUT ASCII
function the PLC program can be transferred from the RAM to an external device. It can be
transferred with the cross references of all its operands.
It is also possible to transfer the program in unformatted or binary form by selecting the
corresponding menu items (see Section "Program creation", "EPROM creation").
The PLC program can also be written in ASCII code on a PC and then transferred to the control.
2.1.1 Command
A command is the smallest unit in a PLC program. It consists of the
operation portion and the Operand portion.
A I 28 ;Comment
Operand
The operation describes the function which is to be performed. It explains what is done with the
Operands.
The Operand shows what is to be operated on. It consists of the Operand abbreviation and a
parameter (Address). Register and memory contents can be gated, erased and loaded by using PLC
commands.
Both Bit and Word processing are possible. In Word processing it is possible to address memory
contents with a length of 8 Bits (Byte), 16 Bits (Word) or 32 Bits (Doubleword) (see Section
"Commands").
Only the most important PLC functions should be programmed in the main routine.
Individual PLC functions such as spindle orientation and key simulation are programmed in their own
Modules.
0 L M2719
1 SN M2719 ;Activate the strobes for Word processing
2 L M2497
3 SN M2497 ;Activate the edge evaluation
4 L M2496
5 SN M2496 ;Activate transfer of decoded M codes
;(M1900 to M1999)
. . .
. . .
. . .
20 L M1919 ;M Function M19
21 A M2045 ;Change signal for M function
22 AN M12 ;Spindle orientation already active?
23 CMT 180 ;Spindle orientation
24 LM 2182 ;Disabled key operated?
25 CMT 31 ;Yes, then call key simulation
. . .
. . .
. . .
150 EM ;End Main program
151 LBL 31 ;Key simulation
. . .
. . .
. . .
200 EM
201 LBL 180 ;Spindle orientation
. . .
. . .
. . .
259 EM
. . .
. . .
. . .
Error conditions in the machine should be interrogated in the PLC program and a plain language error
message should be displayed on the VDU screen. See Chapter "Machine integration", Section
"Display and operation" and Chapter "PLC programming", Section "Modules".
In Byte addressing every address from 0 to 1023 is accessible. In Word addressing, every second
address from 0 to 1022 is accessible and in Doubleword addressing every fourth from 0 to 1020.
The address parameter gives the High Byte for a Word Address (W) , or the Highest Byte for a
Doubleword address (D).
Markers M1000 to M2000 and Bytes B0 to B127 are non-volatile, i.e. the contents of this memory
are maintained when the supply voltage is switched off.
The Q parameters Q100 to Q107 transfer numbers from the PLC to the part program. This means
that Q100 to Q107 can be overwritten by the PLC. The numerical value is registered in Doubleword
D528 and the Q parameter numbers 0 to 7 are defined in Word W516. The numbers 0 to 7
correspond to parameters Q100 to Q107. The transfer is activated with the strobe marker M2713.
The Q parameter values are transferred with the next M/S/T strobe.
Address Function
D 528 Doubleword with multiple function, here data for transfer from the
PLC to the NC
W516 Q Parameter No. for numerical transfer from PLC to NC
(0 – 7 = Q100 – Q107)
NC → PLC
Sixty different machine parameters are reserved for data transfer in the PLC. These machine
parameters are kept in the Doublewords D768 to D956 and the Words W960 to W968 and W976 to
W988. For example, PLC positioning, datum shifts, feed rates for PLC positioning or coding for the
release of certain PLC functions can be filed in these machine parameters. These numerical values
are evaluated in the PLC program.
Address Function
D768 Value from MP4210.0
D772 Value from MP4210.1
D776 Value from MP4210.2
D780 Value from MP4210.3
D784 Value from MP4210.4
D788 Value from MP4210.5
MP 4220 Setting a number in the PLC: In the Word range W960 to W968
to MP4220.4 Input range: 80 to 30 000
MP4310.0 Set a number in the PLC: in the Word range W976 to W988
to MP4310.6 Input range: 0 to 65 535
2.4.1 Timers
48 timers are available in the PLC. These 48 timers are controlled by special markers with the
abbreviation symbol T. The time period for the timer is defined in the machine parameter MP4110.X.
The time unit corresponds to the PLC cycle time.
The timers are started by setting the markers T0 to T47 which also sets the timers to the value from
MP4110.X. This activation may only be performed for a single PLC run, as otherwise the timers will
be restarted by every succeeding run.
The markers T48 to T95 (timer running) will remain set for the period defined in the machine
parameters.
Start of Timer 1
Period in MP4110.1 = 9 (PLC cycles)
T1
T49
C1
C49
C97
C0 C48 C96 MP4120.0
C1 C49 C97 MP4120.1
C2 C50 C98 MP4120.2
C3 C51 C99 MP4120.3
C4 C52 C100 MP4120.4
C5 C53 C101 MP4120.5
C6 C54 C102 MP4120.6
C7 C55 C103 MP4120.7
C8 C56 C104 MP4120.8
C9 C57 C105 MP4120.9
C10 C58 C106 MP4120.10
C11 C59 C107 MP4120.11
C12 C60 C108 MP4120.12
C13 C61 C109 MP4120.13
C14 C62 C110 MP4120.14
C15 C63 C111 MP4120.15
C16 C64 C112 MP4120.16
C17 C65 C113 MP4120.17
C18 C66 C114 MP4120.18
C19 C67 C115 MP4120.19
C20 C68 C116 MP4120.20
C21 C69 C117 MP4120.21
C22 C70 C118 MP4120.22
C23 C71 C119 MP4120.23
C24 C72 C120 MP4120.24
C25 C73 C121 MP4120.25
C26 C74 C122 MP4120.26
C27 C75 C123 MP4120.27
C28 C76 C124 MP4120.28
C29 C77 C125 MP4120.29
C30 C78 C126 MP4120.30
C31 C79 C127 MP4120.31
MP4120.x Pre-set value for counters C0 to C31
During the creation and test of the PLC program the control should operate from the RAM area.
HEIDENHAIN recommends that an EPROM is created for the PLC program before delivering the
machine to the customer (see also Chapter "Introduction").
A PC and the MEGA PROMMER Software (Version 2.12.or later) are necessary for programming
the PLC EPROMS.
The PLC files from the RAM area in the control can be transferred to the PC via the data interface
(see Chapter "Data interface").The output is initiated from the control in binary code (see Section
"PLC functions").
Please contact the HEIDENHAIN customer service if you have further questions.
0 No valid command.
1 Operand for jump is not a Label. (Can only happen when reading in via the interface.
For a Jump command a type abbreviation is available for the Operand).
2 Invalid Operand type (the command cannot be combined with this Operand).
4 Operand outside the permissible range (the stated number is too high, or odd address for
Word or Doubleword).
5 No Limiter after command. (Can only happen when reading in via the interface. The comment
after the command was not designated by ";" or "*").
6 Line end not found (Can only happen when reading in via the interface. Comment too long).
Operands: M, I, O, T, C
Operation:
The addressed operand is copied into the Accumulator. A load command is always used at the start
of a logic chain, in order to enable subsequent gating commands. The same function is achieved
when the gating commands A, O, XO are used at the start of a logic chain, however this should
only be used when compatibility with the TNC 355 is required.
Example:
Input I4 and Input I5 is to be gated with AND and the result assigned to Output O2. Thus the logic
state of Input I4 is loaded into the Accumulator to enable subsequent gating commands.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I4 ... x x x x x x 1 x x x x x x x 1
2 A I5 ... x x x x x x 0 x x x x x x x 0
3 = O2 ... x x x x x x 0 x x x x x x x 0
Line 1: The operand contents are loaded into the Logic Accumulator.
Line 2: The contents of the Logic Accumulator and Input I5 are gated with AND.
Line 3: The gating result is assigned to output O2.
Operands: B, W, D, K
Operation:
The addressed Operand (B, W, D) or a Constant (K) is copied into the Word Accumulator. In addition,
the Accumulator is filled, if necessary, according to the sign bit. In contrast to logic execution the
start of a word gating chain must always be with the L command. It is not possible to use a gating
command.
Example:
A Constant and Byte B5 is to be gated with AND and the result assigned to Byte B8.
Bit 31 . . . 15 7 0 7 0
... x x x x x x x x x x x x x x x x x x
1 L K+54 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0
2 A B5 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 00101010
3 = B8 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 00100010
Operands: M, I, O, T, C
Operation:
The complement of the addressed operand is loaded into the Logic Accumulator. A load command is
always used at the start of a logic chain in order to enable subsequent gating commands. The same
function is achieved when the gating commands AN, ON, XON are used at the start of a logic chain,
however this should only be used when compatibility with TNC 355 is required.
Example:
The inverted logic state of Input I4 and Input I5 is to be gated with AND and the result assigned to
Output O2. Thus the inverted logic state of Input I4 is loaded into the Accumulator to enable
subsequent gating commands.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 LN I4 ... x x x x x x 1 x x x x x x x 0
2 A I5 ... x x x x x x 1 x x x x x x x 1
3 = O2 ... x x x x x x 1 x x x x x x x 1
Line 1: The inverted operand contents are loaded into the Logic Accumulator.
Line 2: The contents of the Logic Accumulator and Input I5 are gated with AND.
Line 3: The gating result is assigned to Output O2.
Operands: B, W, D, K
Operation:
The complement of the contents of the addressed Operand (B, W, D) or Constant (K) is loaded into
the Word Accumulator. In addition, the Accumulator is filled, if necessary, according to the sign bit.
In contrast to logic execution a word gating chain must always start with a load command. It is not
possible to use a gating command.
Example:
The complement of Byte B6 and Byte B5 is to be gated with AND and the result assigned to Byte
B8.
Bit 31 . . . 15 7 0 7 0
... x x x x x x x x x x x x x x x x x x
1 LN B6 ... 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 1 10110110
2 A B5 ... 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 00101010
3 = B8 ... 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 00001000
Line 1: The inverted contents of Byte B6 are loaded into the Word Accumulator.
Line 2: The contents of the Word Accumulator and Byte B5 are gated with AND.
Line 3: The gating result is assigned to Byte B8.
Operands: B, W, D, K
Operation:
The contents of the addressed Operand (B, W, D) or a Constant (K) are loaded into the Word
Accumulator as a two's complement. In addition, the Accumulator is filled, if necessary, according to
the sign bit. The two's complement allows negative numbers to be stored. i.e. a number loaded with
the L– command appears in the Accumulator with an inverted sign.
This command may only be used with Word execution.
Example:
The contents of Byte B5 is to be negated, added to Byte B6 and the result assigned to Byte B8.
Bit 31 . . . 15 7 0 7 0
... x x x x x x x x x x x x x x x x x x
To aid understanding of this example, the contents of the Accumulator and operands are shown as
decimal values in parentheses.
Line 1: The contents of Byte B5 are loaded into the Accumulator and the sign of the value is
inverted.
Line 2: The contents of the Word Accumulator and Byte B6 are added.
Line 3: The result is assigned to Byte B8.
Operands: M, I, O, T, C
Operation:
With the command LB, 8 Markers, Inputs, Outputs, Timers or Counters with ascending numbering
are loaded into the Word Accumulator. Each operand occupies 1 bit in the Accumulator. The
designated operand address occupies the LSB in the Accumulator, the designated address + 1 the
LSB + 1 and so on. In this way, the last affected operand occupies the MSB!
If necessary, the Accumulator is filled according to the sign bit.
Operands: M, I, O, T, C
Operation:
With the command LW, 16 Markers, Inputs, Outputs, Timers or Counters with ascending numbering
are loaded into the Word Accumulator. Each operand occupies 1 bit in the Accumulator. The
designated operand address occupies the LSB in the Accumulator, the designated address + 1 the
LSB + 1 and so on. In this way, the last affected operand occupies the MSB!
If necessary, the Accumulator is filled according to the sign bit.
Operands: M, I, O, T, C
Operation:
With the command LD, 32 Markers, Inputs, Outputs, Timers or Counters with ascending numbering
are loaded into the Word Accumulator. Each operand occupies 1 bit in the Accumulator. The
designated operand address occupies the LSB in the Accumulator, the designated address + 1 the
LSB + 1 and so on. In this way, the last affected operand occupies the MSB!
If necessary, the Accumulator is filled according to the sign bit.
Bit 31 . . . 15 7 0 I10 I3
... x x x x x x x x x x x x x x x x x x
1 LB I3 ... 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 01100111
7 0
2 = B8 ... 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 01100111
Line 1: Inputs I3 to I10 are loaded into the Word Accumulator (Bit 0 to Bit 7).
Line 2: The Accumulator Contents are assigned to Byte 8.
The Commands LW and LD are processed in the same way except that 16 or 32 operands are used
accordingly.
Operands: M, I, O, T, C
Operation:
ASSIGN in conjunction with the Logic Operands (M, I, O, T, C) copies the contents of the Logic
Accumulator to the addressed operand. The = command is only used at the end of a logic chain in
order that a gating result is available. The command may be used several times in succession (see
example).
Example:
Input I4 and Input I5 should be gated with AND and the result assigned to Outputs O2 and O5.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I4 ... x x x x x x 1 x x x x x x x 1
2 A I5 ... x x x x x x 0 x x x x x x x 0
3 = O2 ... x x x x x x 0 x x x x x x x 0
4 = O5 ... x x x x x x 0 x x x x x x x 0
Line 1: The operand contents are loaded into the Logic Accumulator.
Line 2: The contents of the Logic Accumulator and Input I5 are gated with AND.
Line 3: The gating result is assigned to Output O2.
Line 4: The gating result is assigned to Output O5.
Operands: B, W, D
Operation:
ASSIGN in conjunction with the Word Operands (B, W, D) copies the contents of the Word
Accumulator to the addressed operand. The = command is only used at the end of a gating chain in
order that a gating result is available. The command can be used several times in succession (see
example).
Example:
A Constant (K) and the contents of Byte B5 should be gated with AND and the result assigned to
Byte B8 and Byte B10.
Bit 31 . . . 15 7 0 7 0
... x x x x x x x x x x x x x x x x x x
1 L K+54 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0
2 A B5 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 00101010
3 = B8 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 00100010
Operands: M, I, O, T, C
Operation:
With the command B=, 8 bits are copied from the Word Accumulator to Markers, Inputs, Outputs,
Timers or Counters with ascending numbering. Each bit corresponds to 1 operand. The LSB in the
Accumulator is copied to the designated operand address, the LSB + 1 to the designated address +
1 and so on. The last affected operand is occupied by the MSB.
Operands: M, I, O, T, C
Operation:
With the command W=, 16 bits are copied from the Word Accumulator to Markers, Inputs,
Outputs, Timers or Counters with ascending numbering. Each bit corresponds to 1 operand. The
LSB in the Accumulator is copied to the designated operand address, the LSB + 1 to the designated
address + 1 and so on. The last affected operand is occupied by the MSB.
Operands: M, I, O, T, C
Operation:
With the command D=, 32 bits are copied from the Word Accumulator to Markers, Inputs, Outputs,
Timers or Counters with ascending numbering. Each bit corresponds to 1 operand. The LSB in the
Accumulator is copied to the designated operand address, the LSB + 1 to the designated address +
1 and so on. The last affected operand is occupied by the MSB.
Bit 31 . . . 15 7 0 15 87 0
... x x x x x x x x x x x x x x x x x x
The Commands B= and D= are processed in the same way except that 8 or 32 bits are used
accordingly.
Operands: M, I, O, T, C
Operation:
The function of the command depends on the contents of the Logic Accumulator. If the Logic
Accumulator = 1, the addressed operand is set to 1, otherwise the operand remains unchanged. An
S command is used at the end of a logic chain so that the gating result may influence the operand.
The command may be used several times in succession (see example).
Example:
Input I4 and input I5 should be gated with OR.
If the gating result is 1, output O2 and marker M500 should be set.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I4 ... x x x x x x 1 x x x x x x x 1
2 O I5 ... x x x x x x 1 x x x x x x x 0
3 S O2 ... x x x x x x 1 x x x x x x x 1
4 S M500 ... x x x x x x 1 x x x x x x x 1
Line 1: The contents of the operand are loaded into the Accumulator.
Line 2: The contents of the Logic Accumulator and Input I5 are gated with OR.
Line 3: The gating result = 1: output O2 is set.
Line 4: The gating result = 1: marker M500 is set.
Operands: M, I, O, T, C
Operation:
The function of the command is dependent on the contents of the Logic Accumulator. If the Logic
Accumulator = 1, the addressed operand is set to 0, otherwise the operand remains unchanged. An
R command is used at the end of a logic chain, in order that a gating result may influence the
operand. The command may be used several times in succession (see example).
Example:
Input I4 and Input I5 should be gated with OR.
If the gating result = 1, Output O2 and Marker M500 should be reset.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I4 ... x x x x x x 1 x x x x x x x 1
2 O I5 ... x x x x x x 1 x x x x x x x 0
3 R O2 ... x x x x x x 1 x x x x x x x 0
4 R M500 ... x x x x x x 1 x x x x x x x 0
Operands: M, I, O, T, C
Operation:
The function of the command is dependent upon the contents of the Logic Accumulator. If the Logic
Accumulator = 0 , then the addressed operand is set to 1, otherwise the operand remains
unchanged. An SN command is used at the end of a logic chain, in order that a gating result may
influence the operand. The command may be used several times in succession (see example).
Example:
Input I4 and Input I5 are to be gated with OR.
If the gating result = 0, Output O2 and Marker M500 are set.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I4 ... x x x x x x 0 x x x x x x x 0
2 O I5 ... x x x x x x 0 x x x x x x x 0
3 SN O2 ... x x x x x x 0 x x x x x x x 1
4 SN M500 ... x x x x x x 0 x x x x x x x 1
Operands: M, I, O, T, C
Operation:
The function of the command is dependent upon the contents of the Logic Accumulator. If the Logic
Accumulator = 0, then the addressed operand is set to 0, otherwise the operand remains
unchanged. An RN command is used at the end of a logic chain, in order that a gating result may
influence the operand. The command may be used several times in succession (see example).
Example:
Input I4 and Input I5 are to be gated with OR.
If the gating result = 0, Output O2 and Marker M500 are reset.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I4 ... x x x x x x 0 x x x x x x x 0
2 O I5 ... x x x x x x 0 x x x x x x x 0
3 RN O2 ... x x x x x x 0 x x x x x x x 0
4 RN M500 ... x x x x x x 0 x x x x x x x 0
Operands: M, I, O, T, C
Operation:
This command functions in different ways according to its position in the program:
a) At the start of a logic chain the command functions as an L command, i.e. the logic state of the
operand is loaded into the Logic Accumulator. This is to ensure compatibility with the TNC 355
control which did not have the special L command. In PLC programs for the TNC 360/TNC 335, a
logic chain should always be started with a load command (see L, LN, L–).
b) Within a logic chain the contents of the Logic Accumulator and the logic state of the operand (M, I,
O, T, C) are gated with AND. The gating result is stored in the Logic Accumulator.
Example:
Input I4 and Input I5 are to be gated with AND and the result assigned to Output O2.
Bit 31 . . . 7 0
... x x x x x x x x x x x x x x
1 L I4 ... x x x x x x 1 x x x x x x x 1
2 A I5 ... x x x x x x 0 x x x x x x x 0
3 = O2 ... x x x x x x 0 x x x x x x x 0
Operands: B, W, D, K
Operation:
The contents of the Word Accumulator and the contents of the operand (B, W, D, K) are gated with
AND. In accordance with the different sizes of operand (B = 8 bit; W = 16 bit; D = K = 32 bit), 8, 16
or 32 bits will be influenced in the Accumulator.
Example:
The contents of Byte B5 and Byte B6 should be gated with AND and the result assigned to Byte B8.
Bit 31 . . . 15 7 0 15 87 0
... x x x x x x x x x x x x x x x x x x
1 L B6 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 00110110
2 A B5 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 00101010
3 = B8 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 00100010
Operands: M, I, O, T, C
Operation:
This command functions in different ways according to its position in the program:
a) At the start of a logic chain the command functions as an LN command, i.e. the complement of
the operand is loaded into the Logic Accumulator. This is to ensure compatibility with the TNC 355
control which did not have the special LN command. In PLC programs for the TNC 360/TNC 335 a
logic chain should always be started with a load command (see L, LN, L–).
b) Within a logic chain, the contents of the Logic Accumulator and the logic state of the operand (M,
I, O, T, C) are gated with AND NOT.
The gating result is stored in the Logic Accumulator.
Example:
Input I4 and Input I5 should be gated with AND NOT and the result assigned to Output O2.
Bit 31 . . . 7 0
... x x x x x x x x x x x x x x
1 L I4 ... x x x x x x 1 x x x x x x x 1
2 AN I5 ... x x x x x x 0 x x x x x x x 1
3 = O2 ... x x x x x x 0 x x x x x x x 0
Operands: B, W, D, K
Operation:
The contents of the Word Accumulator and the contents of the operand (B, W, D, K) are gated with
AND NOT. In accordance with the different sizes of operand (B = 8 bit; W = 16 bit; D = K = 32 bit),
8, 16 or 32 bits will be influenced in the Accumulator.
Example:
The contents of Word W4 and Word W6 should be gated with AND NOT and the result assigned to
Word W8.
Bit 31 . . . 15 7 0 15 87 0
... x x x x x x x x x x x x x x x x x x
Operands: M, I, O, T, C
Operation:
This command functions in different ways according to its position in the program:
a) At the start of a logic chain the command functions as an L command, i.e. the logic state of the
operand is loaded into the Logic Accumulator. This is to ensure compatibility with the TNC 355
control which did not have the special L command. In PLC programs for the TNC 360/TNC 335 a
logic chain should always be started with a load command (see L, LN, L–).
b) Within a logic chain, the contents of the Logic Accumulator and the logic state of the operand (M,
I, O, T, C) are gated with OR. The result of the operation is stored in the Logic Accumulator.
Example:
Input I4 and Input I5 are to be gated with OR and the result assigned to Output O2.
Bit 31 . . . 7 0
... x x x x x x x x x x x x x x
1 L I4 ... x x x x x x 0 x x x x x x x 0
2 O I5 ... x x x x x x 1 x x x x x x x 1
3 = O2 ... x x x x x x 1 x x x x x x x 1
Operands: B, W, D, K
Operation:
The contents of the Word Accumulator and the contents of the operand (B, W, D, K) are gated with
OR. In accordance with the different sizes of operand (B = 8 bit; W = 16 bit; D = K = 32 bit), 8, 16 or
32 bits will be influenced in the Accumulator.
Example:
The contents of Byte B5 and Byte B6 are to be gated with OR and the result assigned to Word W8.
Bit 31 . . . 15 7 0 15 87 0
... x x x x x x x x x x x x x x x x x x
1 L B6 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 00110110
2 O B5 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 00101010
Operands: M, I, O, T, C
Operation:
This command functions in different ways according to its position in the program:
a) At the start of a logic chain this command functions as an LN command, i.e. the complement of
the operand is loaded into the Logic Accumulator. This is to ensure compatibility with the TNC 355
control which did not have the special LN command. In PLC programs for the TNC 360/TNC 335 a
logic chain should always be started with a load command (see L, LN, L–).
b) Within a logic chain, the contents of the Logic Accumulator and the logic state of the operand (M,
I, O, T, C) are gated with OR NOT. The result of the operation is stored in the Logic Accumulator.
Example:
Input I4 and Input I5 are to be gated with OR NOT and the result assigned to Output O2.
Bit 31 . . . 7 0
... x x x x x x x x x x x x x x
1 L I4 ... x x x x x x 0 x x x x x x x 0
2 ON I5 ... x x x x x x 1 x x x x x x x 0
3 = O2 ... x x x x x x 1 x x x x x x x 1
Operands: B, W, D, K
Operation:
The contents of the Word Accumulator and the contents of the operand (B, W, D, K) are gated with
OR NOT. In accordance with the different sizes of operand (B = 8 bit; W = 16 bit; D = K = 32 bit), 8,
16 or 32 bits will be influenced in the Accumulator.
Example:
The contents of Word W4 and Word W6 are to be gated with OR NOT and the result assigned to
Word W8.
Bit 31 . . . 15 7 0 15 87 0
... x x x x x x x x x x x x x x x x x x
Operands: M, I, O, T, C
Operation:
This command functions in different ways according to its position in the program:
a) At the start of a logic chain the command functions as an L command, i.e. the logic state of the
operand is loaded into the Logic Accumulator. This is to ensure compatibility with the TNC 355
control which did not have the special L command. In PLC programs for the TNC 360/TNC 335 a
logic chain should always be started with a load command (see L, LN, L–).
b) Within a logic chain the contents of the Logic Accumulator and the logic state of the operand (M, I,
O, T, C) are gated with EXCLUSIVE OR. The result of the operation is stored in the Logic
Accumulator.
Example:
Input I4 and Input I5 are to be gated with EXCLUSIVE OR and the result assigned to Output O2.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I4 ... x x x x x x 1 x x x x x x x 1
2 XO I5 ... x x x x x x 0 x x x x x x x 1
3 = O2 ... x x x x x x 0 x x x x x x x 0
Operands: B, W, D, K
Operation:
The contents of the Word Accumulator and the contents of the operand (B, W, D, K) are gated with
EXCLUSIVE OR. In accordance with the different sizes of operand (B = 8 bit; W = 16 bit;
D = K = 32 bit), 8, 16 or 32 bits will be influenced in the Accumulator.
Example:
The contents of Byte B5 and Byte B6 are to be gated with EXCLUSIVE OR and the result assigned
to Word W8.
Bit 31 . . . 15 7 0 15 87 0
... x x x x x x x x x x x x x x x x x x
1 L B6 ... 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0 00110110
2 XO B5 ... 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 00101010
Operands: M, I, O, T, C
Operation:
This command functions in different ways according to its position in the program:
a) At the start of a logic chain this command functions as a LN command, i.e. the complement of the
operand is loaded into the Logic Accumulator. This is to ensure compatibility with the TNC 355
control which did not have the special LN command. In PLC programs for the TNC 360/TNC 335 a
logic chain should always be started with a load command (see L, LN, L–).
b) Within a logic chain the contents of the Logic Accumulator and the logic state of the operand (M, I,
O, T, C) are gated with EXCLUSIVE OR NOT. The result of the operation is stored in the Logic
Accumulator.
Example:
Input I4 and Marker M500 are to be gated with EXCLUSIVE OR NOT and the result assigned to
Output O2.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L M500 ... x x x x x x 0 x x x x x x x 0
2 XON I4 ... x x x x x x 1 x x x x x x x 0
3 = O2 ... x x x x x x 1 x x x x x x x 1
Operands: B, W, D, K
Operation:
The contents of the Word Accumulator and the contents of the operand (B, W, D, K) are gated with
EXCLUSIVE OR NOT. In accordance with the different sizes of operand (B = 8 bit; W = 16 bit; D = K
= 32 bit), 8, 16 or 32 bits will be influenced in the Accumulator.
Example:
The contents of Word W4 and Word W6 are to be gated with EXCLUSIVE OR NOT and the result
assigned to Word W8.
Bit 31 . . . 15 7 0 15 87 0
... x x x x x x x x x x x x x x x x x x
Operands: B, W, D, K
Operation:
With arithmetic functions the operand is firstly expanded to the size of the Accumulator (32 bits).
Then the contents of the operand are added to the Word Accumulator. The result of the operation is
stored in the Word Accumulator and may be processed further.
Example:
A constant and a stored value in Word W6 are to be added. The result is then stored in Doubleword
D8.
In the interests of clarity the contents of the Accumulator and operand are shown in decimal
notation.
The 10 bit wide Accumulator allows the entry of the highest possible Accumulator contents
(2 147 483 647).
x x x x x x x x x x
1 L K100000 1 0 0 0 0 0
2 + W6 1 0 0 2 0 0 2 0 0
3 = D8 1 0 0 2 0 0 1 0 0 2 0 0
Operands: B, W, D, K
Operation:
With arithmetic functions the operand is firstly expanded to the size of the Accumulator (32 bits).
Then the contents of the operand are subtracted from the contents of the Word Accumulator. The
result of the operation is stored in the Word Accumulator and may be processed further.
Example:
A stored value in Word W6 is to be subtracted from a Constant. The result is then stored in
Doubleword D8.
In the interests of clarity the contents of the Accumulator and the operand are shown in decimal
notation. The 10 bit wide Accumulator allows the entry of the highest possible Accumulator
contents (2 147 483 647).
x x x x x x x x x x
1 L K100000 1 0 0 0 0 0
2 – W6 9 9 8 0 0 2 0 0
3 = D8 9 9 8 0 0 9 9 8 0 0
* Only a maximum processing time can be entered with the arithmetic operations X, / and MOD.
The processing time may be shorter, depending on the operands.
Operands: B, W, D, K
Operation:
With arithmetic functions the operand is firstly expanded to the size of the Accumulator (32 bits).
Then the contents of the operand are multiplied with the contents of the Word Accumulator. The
result of the operation is stored in the Word Accumulator and may be processed further. If the result
of multiplication causes an overflow, Marker M3168 is set, otherwise it is reset.
Example:
A Constant and a value stored in Word W6 are to be multiplied. The result is then stored in
Doubleword D8.
In the interests of clarity the contents of the Accumulator and the operand are shown in decimal
notation. The 10 bit wide Accumulator allows the entry of the highest possible Accumulator
contents (2 147 483 647).
x x x x x x x x x x
1 L K100 1 0 0
2 x W6 2 0 0 0 2 0
3 = D8 2 0 0 0 2 0 0 0
*) see Multiplication
**) An error in division and modulo (divisor = 0) results in a execution time of 3.8 µs.
Operands: B, W, D, K
Operation:
With arithmetic functions the operand is firstly expanded to the size of the Accumulator (32 bits) .
Then the contents of the Word Accumulator are divided by the contents of the operand. The result
of the operation is stored in the Word Accumulator and may be processed further. If division by 0 is
attempted, the Marker M3169 is set, otherwise it is reset.
Example:
A Constant is to be divided by the value stored in Word W6 . The result is then assigned to
Doubleword D8.
In the interests of clarity the contents of the Accumulator and the operand are shown in decimal
notation. The 10 bit wide Accumulator allows the entry of the highest possible Accumulator
contents (2 147 483 647).
x x x x x x x x x x
1 L K100 1 0 0
2 / W6 5 2 0
3 = D8 5 5
*) see Multiplication
**) see Division
Operands: B, W, D, K
Operation:
With arithmetic functions the operand is firstly expanded to the size of the Accumulator (32 bits).
Then the REMAINDER is determined from a division of the contents of the Word Accumulator by
the contents of the operand. The REMAINDER is stored in the Word Accumulator and may be
processed further. If the MOD command is not correctly executed then the Marker M3170 is set,
otherwise it is reset.
Example:
The REMAINDER of a division of the value stored in Word W6 by a constant is to be determined.
The REMAINDER is then stored in Doubleword D8.
In the interests of clarity the contents of the Accumulator and the operand are shown in decimal
notation. The 10 bit wide Accumulator allows the entry of the highest possible Accumulator
contents (2 147 483 647).
x x x x x x x x x x
1 L W6 5 0
2 MOD K15 5 5 0
3 = D8 5 5
Byte/Word/Double Constant
Execution time [µs] 1.8 to 2.4 2.0
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, a direct transfer from Word to Logic processing occurs. The contents of the
Word Accumulator and the contents of the addressed operand are compared. If the Word
Accumulator and the operand are equal, the condition is true and the Logic Accumulator is set to 1.
If they are not equal the Logic Accumulator is set to 0. The comparison takes place over the number
of bits corresponding to the operand, i.e. B = 8 bit, W = 16 bit and D = K = 32 bit.
Example:
A constant is to be compared with the contents of Doubleword D8. The result is then assigned to
Marker M500.
The Accumulator and operand contents are shown in decimal notation. The 10 bit wide Accumulator
allows the entry of the highest possible Accumulator contents (2 147 483 647).
x x x x x x x x x x
1 L K16000 1 6 0 0 0
Bit 31 . . . 7 0
2 == D8 ... x x x x x x 0 x x x x x x x 1 5 0 0 0
3 = M500 ... x x x x x x 0 x x x x x x x 0
Byte/Word/Double Constant
Execution time [µs] 1.8 to 2.4 2.0
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, a direct transfer from Word to Logic processing occurs. The contents of the
Word Accumulator are compared with the contents of the addressed operand. If the Word
Accumulator is smaller than the operand, the condition is true and the Logic Accumulator is set to 1.
If the Word Accumulator is greater than or equal to the operand, the Logic Accumulator is set to 0.
The comparison takes place over the number of bits in the operand, i.e. B = 8 bit, W = 16 bit and D
= K = 32 bit.
Example:
A constant is to be compared with the contents of Doubleword D8. The result is then assigned to
Marker M500.
The Accumulator and operand contents are shown in decimal notation. The 10 bit wide Accumulator
allows the entry of the highest possible Accumulator contents (2 147 483 647).
x x x x x x x x x x
1 L K16000 1 6 0 0 0
Bit 31 . . . 7 0
1 < D8 ... x x x x x x 0 x x x x x x x 1 5 0 0 0
2 = M500 ... x x x x x x 0 x x x x x x x 0
Byte/Word/Double Constant
Execution time [µs] 1.8 to 2.4 2.0
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, a direct transfer from Word to Logic processing occurs. The contents of the
Word Accumulator are compared with the contents of the addressed operand. If the Word
Accumulator is greater than the operand, the condition is true and the Logic Accumulator is set to 1.
If the Word Accumulator is less than or equal to the operand, the Logic Accumulator is set to 0. The
comparison takes place over the number of bits in the operand, i.e. B = 8 bit, W = 16 bit and D = K
= 32 bit.
Example:
A constant is to be compared with the contents of Doubleword D8. The result is then assigned to
Marker M500.
The Accumulator and operand contents are shown in decimal notation. The 10 bit wide Accumulator
allows the entry of the highest possible Accumulator contents (2 147 483 647).
x x x x x x x x x x
1 L K16000 1 6 0 0 0
Bit 31 . . . 7 0
1 > D8 ... x x x x x x 1 x x x x x x x 1 5 0 0 0
2 = M500 ... x x x x x x 1 x x x x x x x 1
Byte/Word/Double Constant
Execution time [µs] 1.8 to 2.4 1.8 to 2.0
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, a direct transfer from Word to Logic processing occurs. The contents of the
Word Accumulator are compared with the contents of the addressed operand. If the Word
Accumulator is less than or equal to the operand, the condition is true and the Logic Accumulator is
set to 1. If the Word Accumulator is greater than the operand, the Logic Accumulator is set to 0. The
comparison takes place over the number of bits in the operand, i.e. B = 8 bit, W = 16 bit and D = K
= 32 bit.
Example:
A constant is to be compared with the contents of Doubleword D8. The result is then assigned to
Marker M500.
The Accumulator and operand contents are shown in decimal notation. The 10 bit wide Accumulator
allows the entry of the highest possible Accumulator contents (2 147 483 647).
x x x x x x x x x x
1 L K16000 1 6 0 0 0
Bit 31 . . . 7 0
1 <= D8 ... x x x x x x 0 x x x x x x x 1 5 0 0 0
2 = M500 ... x x x x x x 0 x x x x x x x 0
Byte/Word/Double Constant
Execution time [µs] 1.8 to 2.4 1.8 to 2.0
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, a direct transfer from Word to Logic execution occurs. The content of the Word
Accumulator is compared with the content of the addressed operand. If the Word Accumulator is
greater than or equal to the operand, the condition is true and the Logic Accumulator is set to 1. If
the Word Accumulator is smaller than the operand, the Logic Accumulator is set to 0. The
comparison takes place over the number of bits corresponding to the operand i.e. B=8 bit, W=16 bit
and D=K=32 bit.
Example:
A constant is to be compared with the content of Doubleword D8. The result is then assigned to
marker M500.
Accumulator and operand contents are entered here in decimal notation. The ten-position
Accumulator thus permits the maximum possible Accumulator content (2 147 483 647).
x x x x x x x x x x
1 L K16000 1 6 0 0 0
Bit 31 . . . 7 0
1 >= D8 ... x x x x x x 1 x x x x x x x 1 5 0 0 0
2 = M500 ... x x x x x x 1 x x x x x x x 1
Byte/Word/Double Constant
Execution time [µs] 1.8 to 2.4 1.8 to 2.0
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, a direct transfer from Word to Logic execution occurs. The content of the Word
Accumulator is compared with the content of the addressed operand. If the Word Accumulator and
the operand are not equal, the condition is true and the Logic Accumulator is set to 1. If the Word
Accumulator is equal to the operand, the Logic Accumulator is set to 0. The comparison takes place
over the number of bits corresponding to the operand i.e. B=8 bit,W=16 bit and D=K=32 bit.
Example:
A constant is to be compared with the contents of Doubleword D8. The result is then assigned to
marker M500.
Accumulator and operand contents are entered here in decimal notation. The ten position
Accumulator thus permits the maximum possible Accumulator content (2 147 483 647).
x x x x x x x x x x
1 L K16000 1 6 0 0 0
Bit 31 . . . 7 0
1 <> D8 ... x x x x x x 1 x x x x x x x 1 5 0 0 0
2 = M500 ... x x x x x x 1 x x x x x x x 1
Logic Byte/Word/Double
Execution time [µs] 1.6 2.6
Number of bytes 6 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] 2.0 3.2
Number of bytes 6 6
Operands: none
3.6.3 OR [ ] (O[ ]) O[ ]
Abbreviation for PLC Editor: O[ ] (OR [ ])
Logic Byte/Word/Double
Execution time [µs] 1.6 2.6
Number of bytes 6 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] 2.0 3.2
Number of bytes 6 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] 2.0 3.2
Number of bytes 6 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] 2.4 3.8
Number of bytes 8 8
Operands: none
The "close parentheses" instruction initiates the gating of the buffered value from the Program Stack
with the Logic Accumulator and/or the Word Accumulator, depending on which Accumulator was
addressed prior to the "parentheses open" instruction. The result is then available in the
corresponding Accumulator. The maximum nesting level is 16 parentheses.
M500 ο
OR
M501 ο
AND ο O12
I0 ο
OR
I1 ο
bit 31 7 0
... x x x x x x x x x x x x x x
1 L M500 ... x x x x x x 0 x x x x x x x 0
2 O M501 ... x x x x x x 1 x x x x x x x 1
3 A [ ... x x x x x x 1 x x x x x x x
4 L I0 ... x x x x x x 0 x x x x x x x 0
5 O I1 ... x x x x x x 1 x x x x x x x 1
6 ] ... x x x x x x 1 x x x x x x x
7 = O12 ... x x x x x x 1 x x x x x x x 1
Program-stack:
xxxxxxxx 1 xxxxxxx
bit 15 7 0
Line 1: Marker state M500 is loaded into the Logic Accumulator.
Line 2: The Logic Accumulator is gated with Marker M501.
Line 3: Open parentheses: the Accumulator contents are buffered on the Program Stack.
Line 4: Input state I0 is loaded into the Logic Accumulator.
Line 5: The Logic Accumulator is gated with Input I1.
Line 6: Close parentheses: Accumulator content is gated with the content of the Program Stack,
according to the command (A[, O[, NO[ ...).
Line 7: The result of the complete logical process is assigned to Output O12.
Note:
The functional sequence is in principle the same for word execution, with the exception that the
whole Accumulator is written onto the Stack.
Logic Byte/Word/Double
Execution time [µs] ----- 2.6
Number of bytes ----- 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] ----- 3.2
Number of bytes ----- 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] *) ----- 11.0
Number of bytes ----- 12
Operands: none
Logic Byte/Word/Double
Execution time [µs] *) **) ----- 20.2
Number of bytes ----- 16
In the event of an error (Divisor = 0) in the Division and MODULO functions, the execution time will
be in the range 0.9 to 1.3 µs.
Operands: none
*) See Multiplication
**) See Division
Logic Byte/Word/Double
Execution time [µs] *) **) ----- 20.6
Number of bytes ----- 14
*) See Multiplication
**) See Division
In the event of an error (Divisor = 0) in the Division and MODULO functions, the execution time will
be in the range 0.9 to 1.3 µs.
Operands: none
The specification of Accumulator and operand contents is given in decimal notation. The ten-place
Accumulator thus permits the maximum possible Accumulator content of (2 147 483 647).
x x x x x x x x x x
1 L D12 1 5 0 0 0 1 5 0 0 0
2 + K1000 1 6 0 0 0
3 / D36 1 6 0 1 0 0
4 = D100 1 6 0 1 0 0
x x x x x x x x x x
1 L D12 1 5 0 0 0 1 5 0 0 0
2 + [ 1 5 0 0 0
3 L K1000 1 0 0 0
4 / D36 1 0 1 0 0
5 ] 1 5 0 1 0
6 = D100 1 5 0 1 0 1 5 0 1 0
Program-stack:
1 5 0 0 0
Line 1: The content of Doubleword D12 is loaded into the Word Accumulator.
Line 2: Open parentheses: buffer the Accumulator content in the Program Stack.
Line 3: A constant is loaded into the Word Accumulator.
Line 4: The content of the Word Accumulator is divided by the content of Doubleword D12.
Line 5: Close parentheses: Accumulator content is gated, corresponding to the command (+[, -[, x[
...) with the content of the Program Stack.
Line 6: The result of the complete logical process is assigned to Doubleword D100.
Logic Byte/Word/Double
Execution time [µs] ---- 3.0 to 3.2
Number of bytes ---- 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] ---- 3.0 to 3.2
Number of bytes ---- 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] ---- 3.0 to 3.2
Number of bytes ---- 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] ---- 3.0 to 3.2
Number of bytes ---- 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] ---- 3.0 to 3.2
Number of bytes ---- 6
Operands: none
Logic Byte/Word/Double
Execution time [µs] ---- 3.0 to 3.2
Number of bytes ---- 6
Operands: none
The "close-parentheses" instruction initiates the gating of the buffered value from the Program Stack
with the content of the complete Word Accumulator. The result is loaded again into the
Accumulator. The maximum nesting depth is 16 parentheses.
A direct transition from Word to Logic execution takes place with comparison commands. If the
comparison condition is "true", the Logic Accumulator is set to "1". If the condition is not fulfilled, the
Logic Accumulator is set to "0".
The Accumulator contents and operand contents are shown in decimal notation. The ten-position
Accumulator thus permits the maximum possible Accumulator content of 2 147 483 647.
The Accumulator is again represented in binary notation after program line 5, as the transition to
logic execution occurs here.
x x x x x x x x x x
1 L D12 1 5 0 0 0 1 5 0 0 0
2 >= [ 1 5 0 0 0
3 L K1000 1 0 0 0
4 x D36 1 0 0 0 0 1 0
bit 31 . . . 7 0
5 ] x x x x 1 x x x x x x x
6 = O15 x x x x 1 x x x x x x x 1
Program-stack:
1 5 0 0 0
Line 1: The content of Doubleword D12 is loaded into the Word Accumulator.
Line 2: Open parentheses: buffering of the Accumulator content in the Program Stack.
Line 3: Loading of a Constant into the Word Accumulator.
Line 4: The content of the Word Accumulator is multiplied by the content of Doubleword D12.
Line 5: Close parentheses: Word Accumulator content is gated, corresponding to the
command(==[, >=[, <=[ ...) with the content of the Program Stack . The transition from
Word to Logic processing occurs in this program line. The Logic Accumulator is set or
reset, depending on the result of the comparison.
Line 6: The result of the complete logical process is assigned to output O15.
Operation:
Since the sign bit (MSB) is included with this command, it is grouped in with arithmetic commands.
For this reason and out of time considerations, this command should not be used for the isolation of bits.
A SHIFT LEFT instruction causes the contents of the Word Accumulator to be multiplied by two. For this
purpose, the bits in the Accumulator are simply shifted by one place to the left. The number of the shift
operations is determined via the operand. Thus the set bits, which are shifted beyond the Accumulator to
the left, are lost; the Accumulator is filled with nulls from the right-hand side. With operand contents
greater than 32, the operand value Modulo 32 is used, i.e. the integer remainder from the division (operand
value)/32.
Example:
The content of the Doubleword D8 is to be shifted four times to the left and then stored in D12.
The Accumulator content is shown here in binary notation, and the operand content in hexadecimal
notation.
Byte/Word/Double Constant
Execution time [µs] 2.0 + 0.2 x n 2.0 + 0.2 x n
Number of bytes 6 8
Operands: B, W, D, K
Operation:
Since the sign bit (MSB) is included with this command, it is grouped in with arithmetic commands.
For this reason and out of time considerations, this command should not be used for the isolation of bits.
A SHIFT RIGHT instruction causes the contents of the Word Accumulator to be divided by two. For this
purpose, the bits in the Accumulator are simply shifted by one place to the right. The number of the shift
operations is determined via the operand. Thus the set bits, which are shifted beyond the Accumulator to
the right, are lost; the Accumulator is filled according to the sign, from the left-hand side. With operand
contents greater than 32, the operand value Modulo 32 is used, i.e. the integer remainder from the division
(operand value)/32.
Example:
The content of the Doubleword D8 is to be shifted four times to the right and then stored in D12.
The Accumulator content is shown here in binary notation and the operand content in hexadecimal
notation.
Byte/Word/Double Constant
Execution time [µs] 2.0 to 2.4 2.0
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, each bit in the Accumulator can be acted on. The addressed bit is set to "1"
through the use of the BS command. The selection (addressing) of the corresponding bit is derived
from the content of the specified Operand or a Constant. In the bit numbering, bit 0 corresponds to
the LSB and bit 31 the MSB. For operand contents larger than 32, the operand value Modulo 32 is
used, i.e. the integer remainder from the division (operand value)/32.
Example:
Load Doubleword D8 in the Accumulator, set the bit 0 of the Accumulator to "1" and store the result
in Doubleword D12.
xx xx xx xx
1 L D8 00 00 3E 80 00 00 3E 80
2 BS K+0 00 00 3E 81
3 = D12 00 00 3E 81 00 00 3E 81
Byte/Word/Double Constant
Execution time [µs] 2.2 to 2.6 2.2
Number of bytes 6 8
Operands: B, W, D, K
Operation:
With this command, each bit in the Accumulator can be acted on. The addressed bit is set to "0"
through the use of the BC command. The selection (addressing) of the corresponding bit is derived
from the content of the specified Operand or a Constant. In the bit numbering, bit 0 corresponds to
the LSB and bit 31 the MSB. For operand contents larger than 32, the operand value Modulo 32 is
used, i.e. the integer remainder from the division (operand value)/32.
Example:
Load Doubleword D8 in the Accumulator, set bit 0 of the Accumulator to "0" and store the result in
Doubleword D12.
xx xx xx xx
1 L D8 00 00 3E 81 00 00 3E 81
2 BC K+0 00 00 3E 80
3 = D12 00 00 3E 80 00 00 3E 80
Byte/Word/Double Constant
Execution time [µs] 2.2 to 2.8 2.2 to 2.4
Number of bytes 8 0
Operands: B, W, D, K
Operation:
With this command, the status of each individual bit in the Accumulator may be interrogated. With
BT commands, a direct transition from Word to Logic execution takes place. The BIT TEST tests the
status of a bit from the Word Accumulator and then acts correspondingly on the Logic Accumulator.
If the tested bit is "1", then the Logic Accumulator is also set to "1"; if it is "0" ,it is set to "0". The
program continues in logic execution. The selection (addressing) of the corresponding bit is derived
from the content of the specified Operand or a Constant. In the bit numbering, bit 0 corresponds to
the LSB and bit 31 the MSB. For operand contents larger than 32, the operand value Modulo 32 is
used, i.e. the integer remainder from the division (operand value)/32.
Example:
Load Doubleword D8 in the Accumulator, and assign the logic state of bit 0 to an Output.
Word Accumulator and operand contents are shown here in hexadecimal notation, the Logic
Accumulator in binary representation.
xx xx xx xx
1 L D8 00 00 3E 81 00 00 3E 81
2 BT K+0 00 00 3E 81
3 = O12 x x x x x x 1 x x x x x x x 1
Operands: M, I, O, T, C
Operation:
With the PS command, data can be buffered. Thus the addressed operand is loaded onto the Data
Stack. Since the Data Stack is organized as 16 bit, a minimum width of one Word must be used in
writing to it. During this the operand value is copied into bit 7 of the current address in the Data
Stack. The free bits of the reserved memory are undefined or unused. In the event of a Stack
overflow, an error message will be issued.
Bit 15 7 0
x x x x x x x x L x x x x x x x
Operands: B, W, D, K
Operation:
With the PS command, data can be buffered. Thus the addressed memory area (B, W, D, K) is
copied into the current address of the Data Stack. With Word execution, two Words are reserved as
standard on the Data Stack per PS command. The operand is extended in the Stack with sign
justification corresponding to the MSB. In the event of a Stack overflow, an error message will be
issued.
Bit 31 15 7 0
Byte X X X X X X X X X X X X X X X X X X X X X X X X B B B B B B B B
Word X X X X X X X X X X X X X X X X W WW WW WW W W W W WW WW W
Constant K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K K
Operands: M, I, O, T, C
Operation:
The PL command complements the PS command. Data which are saved with PUSH can be taken
from the Data Stack again with PULL. With logic execution, bit 7 is copied from the current address
of the Data Stack into the addressed operand with a PL command. If the Stack is empty, an error
message will be issued.
Operands: B, W, D
Operation:
The PL command complements the PS command. Data which are saved with PUSH can be taken
from the Data Stack again with PULL. With Word execution, two Words are copied from the current
address of the Data Stack into the addressed memory area with a PL command. If the Stack is
empty, an error message will be issued.
3.11.3 Load logic accumulator onto the data stack (PSL) PSL
Abbreviation for PLC Editor: PSL (PUSH LOGICACCU)
Operands: none
Operation:
The Logic Accumulator can be buffered with the PSL command. For this purpose, the Logic
Accumulator is loaded onto the Data Stack. Since the Data Stack is organized as 16 bits, it must be
written to with a minimum width of one Word. During this the content of the Logic Accumulator is
copied into the current address of the Data Stack. The free bits of the reserved memory are
undefined or unused. In the event of a Stack overflow, an error message will be issued.
Bit 15 7 0
x x x x x x x x L x x x x x x x
Operands: none
Operation:
The content of the Word Accumulator can be buffered with the PSW command. For this purpose,
the Word Accumulator is copied into the Data Stack. The content of the Word Accumulator (32 bit)
reserves two Words on the Data Stack. In the event of a stack overflow, an error message will be
issued.
3.11.5 Acquire logic accumulator from the data stack (PLL) PLL
Abbreviation for PLC Editor: PLL (PULL LOGICACCU)
Operands: none
Operation:
The PLL command complements the PSL command. With a PLL instruction, bit 7 from the current
address of the Data Stack is copied into the Logic Accumulator. If the stack is empty, an error
message will be issued.
Operands: none
Operation:
The PLW command complements the PSW command. With a PLW instruction, two Words are
copied from the Data Stack into the Word Accumulator. If the stack is empty, an error message will
be issued.
50 PSW 1 A 4 4 3 E 1 8
52 CM 15
54 PLW 1 A 4 4 3 E 1 8
55 .
.
.
Data stack:
1 A 4 4
3 E 1 8
Line 50: Save the Word Accumulator onto the Data Stack.
Line 52: Subprogram 15 is called up.
Line 54: The original Accumulator contents are transferred back from the Data Stack and
is available for further program run.
Note:
The sequence for stack operations is the same for all commands. Only the data width varies.
Operation:
A JP command instructs the processor to continue the program at the specified jump address
(Label). This command interrupts a logic sequence.
Operation:
A JPT command is a conditional jump command. If the Logic Accumulator is "1", the program is
continued from the specified jump address (Label). If the Logic Accumulator is "0" the jump is not
processed. This command interrupts a logic sequence.
Operation:
A JPF command is a conditional jump command. If the Logic Accumulator is "0", the program is
continued from the specified jump address (Label). If the Logic Accumulator is "1", the jump is not
processed. This command interrupts a logic sequence.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I5 ... x x x x x x 1 x x x x x x x 1
2 JPT 10 ... x x x x x x 1 x x x x x x x
3 L I3
4 O M500
5 = O20
6 LBL 10
7 L M100 ... x x x x x x 0 x x x x x x x 0
•
•
•
Number of bytes 22
Special Library Call:
Execution time [µs] 6.2 ----
Number of bytes 24
Operands: jump address (LBL)
Operation:
A Call Module instructs the processor to leave the main program and process the Module
designated by the jump address (LBL). Modules are independent subprograms and are terminated
by the command EM. They can also be called at multiple points in the main program. This command
interrupts a logic sequence.
Bit 31 . . . 7 0
... x x x x x x X x x x x x x x
1 L I5 ... x x x x x x 0 x x x x x x x 0
2 CMF 10 ... x x x x x x 0 x x x x x x x
3 L M100 ... x x x x x x 1 x x x x x x x 1
•
•
•
499 EM
500 LBL 10
501 L I3 ... x x x x x x 0 x x x x x x x 0
504 EM
Operands: none
Operation:
Every program and/or every subprogram (Module) is terminated with an EM command. An EM
command in a Module initiates the return jump to the Call Module (CM, CMT, CMF). The program is
continued with the instruction following the Call Module. The command EM is handled as program
end criterion; thus subsequent program instructions can be reached using a jump address.
Operands: 0 to 511
Operation:
The jump label defines a program position as an entry point for the CM and JP commands. Jump
labels may be allocated addresses in the range 0 to 511.
Byte Word
Execution time [µs] 12.0 12.0
Number of bytes 46 44
4 Bytes must be added to the length for each entry in the table (CM).
Operands: B, W
Operation:
With the CASE command, a specific subprogram may be selected from a list of Call Modules (CM).
These CM commands immediately follow the CASE command and are internally numbered in an
ascending sequence from 0 to a maximum of 127. The content of the operands (B, W) addresses
the required Module.
Byte Word
Execution time [µs] 0 0
Number of bytes 0 0
Operands: none
Operation:
The ENDC command is used in conjunction with the CASE command. It must immediately follow
the list of CM commands.
Line 1: Command + operand; The internal address of the required Module must be loaded into the
operand
Line 2: Call Module for operand contents 0
Line 3: Call Module for operand contents 1
Line 4: Call Module for operand contents 2
Line 5: Call Module for operand contents 3
Line 6: Call Module for operand contents 4
Line 7: Call Module for operand contents 5
Line 8: Call Module for operand contents 6
Line 9: End of the CASE statement
Care must be taken that the blocks do not overlap, and that there is adequate space for the copied
block after the target address.
Module call:
Care must be taken that the blocks do not overlap, and that there is adequate space for the copied
block after the target address.
Module call:
Module call:
PS K/B/W/D Address of a Byte, where the contents address another Byte, the contents of
which are to be copied to the target address.
CM9010
PL B Target address - Byte
PS K/B/W/D Address of a Word, where the contents address another Word, the contents of
which are to be copied to the target address.
CM9011
PL W Target address - Word
The addresses which are given must lie within the valid range (0 to 1023). For Word addressing the
address must be divisible by two, for Doubleword addressing by four.
If the Byte, Word or Doubleword is not read correctly, marker M3171 will be set.
B10 35 ..
.
35 (80) PS B10
CM9010
B35 80
PL
.. B100
.
B100 80
Module call:
PS K/B/W/D Address of a Byte whose contents address another Byte into which the value of a
second Byte is entered.
PS K/B/W/D Address of the Byte where the value to be transferred is stored.
CM 9020
PS K/B/W/D Address of a Word, where the contents address another Word, where a value is to
be entered from a second Word.
PS K/B/W/D Address of the Word, where the value to be transferred is stored.
CM 9021
The addresses which are given must lie within the valid range (0 to 1023). For Word addressing, the
address must be divisible by two, and for Doubleword addressing by four.
If the Byte, Word or Doubleword is not transferred correctly marker M3171 will be set.
B10 35 ..
.
120 PS B10
PS B100
B35 120 35
CM9020
..
.
B100 120
The value of the machine parameter is transferred to the PLC as an integer. The decimal point is
shifted by the number of possible places after the decimal point. An index must always be defined.
For machine parameters without index, enter the value zero.
Module call:
Module call:
Module call:
When the PLC status information has been transferred, Marker M3171 is reset.
Module call:
Regardless of whether individual axes are disabled by MP10, the values for all axes will always be
read in. The coordinate value for an axis is undefined until the reference point for this axis has been
passed over.
The PLC assigns and enables the data interfaces with modules 9100 and 9101. The current status
of the data interface is interrogated by module 9102.
The transmitting and receiving buffers for the PLC are both 128 characters long. Each STRING
terminates in an END character in the transmitting or receiving buffer and therefore a STRING can
contain a maximum of 127 characters. Modules 9105 and 9106 can be used to transfer a block of
binary values (bytes) from the word memory.
- The assignment of an interface to the PLC is canceled whenever the PLC program is transferred.
- Configuration for 19 200 baud is not possible. The baud rate is set in MP 9040. The data format is
7 data bits, one even parity bit.
Module call:
CM 9100
If the module is incorrectly processed the interface is not assigned to the PLC and marker M3171 is
set.
Potential errors:
- The interface is already assigned by the input/output program of the user interface.
- The call parameters of the module are outside the permitted range.
- The required baud rate is not available because of the way the other serial interface is
configured. (19 200 baud).
Module call:
Potential errors:
The "Interface ready" information is not updated until the interface is assigned to either the PLC or
the NC. If the interface is not assigned, the module reports the status that was valid prior to the last
interface enable.
Module call:
PL B/W/D The status of the interface is bit-encoded and filed into the addressed storage area
from the STACK.
All higher-order bits in the STACK are deleted, combinations are possible.
Marker M3171 is set if the call parameters of the module are outside the permitted range.
The appropriate interface must be assigned to the PLC with module 9100 before module 9105 is
called.
Module call:
If the module is incorrectly processed the block of binary data is not transferred and marker M3171
is set.
Potential errors:
The appropriate interface must be assigned to the PLC with module 9100 before module 9106 is
called.
Module call:
If the module is incorrectly processed the block of binary data is not read into the word memory and
marker M3171 is set.
Potential errors:
- The call parameters of the module are outside the permitted range.
- The interface is not assigned to the PLC.
- The receiving buffer contains no data.
- The number of characters in the receiving buffer is uneven or greater than 126.
- The binary block cannot be stored at the specified address because it is too long (start address +
length > 1024).
- The data in the receiving buffer contain characters that cannot be interpreted as hexadecimal
values. Only the characters 0 to 9, A to F and control characters are permitted.
A positioning movement is started by entering a target position (in the reference system), a feed
rate, and a flag register. The axis is positioned in complete dependence on other processes in the
control. However, it's path is not interpolated with other axes.
Constraints:
− The entered axis must have been activated through MP10 and declared as auxiliary axis through
MP60.
− The values for rapid traverse, analog voltage for rapid traverse, acceleration etc. must be
correctly set in the machine parameters.
− For axes with automatic display value reduction (modulo value in MP810.x) the axis is always
moved in the direction of the shorter path to the target position, except when the target position
is entered as an incremental value.
− There is no monitoring to prevent violation of the limit switch limits!
− The axis must be stationary. Any movement must first be canceled with module 9121.
− If the axis was in reference run mode, this condition is canceled. The positioning movement is
always added to the current counter value.
− If the modules 9120, 9121 and 9122 are called repeatedly for the same axis during a PLC scan,
the last command is executed.
− If in this axis the "positioning error" status is set, it is erased.
Possible errors:
− The transferred axis does not exist.
− The transferred axis was not declared through MP10 and MP60 to be an auxiliary axis.
− The axis is already being positioned.
Call:
A positioning movement that has been started with Module 9120 or Module 9123 can be canceled
at any point with Module 9121.
Constraints:
− The entered axis must have been activated through MP10 and declared as auxiliary axis through
MP60.
− If the modules 9120, 9121 and 9122 are called repeatedly for the same axis during a PLC scan,
the last command is executed.
Possible errors:
− The transferred axis does not exist.
− The transferred axis was not declared through MP10 and MP60 to be an auxiliary axis.
− The entered axis is already stationary.
Call:
Constraints:
− Status changed resulting from commands sent by the PLC to control the auxiliary axes (Modules
9120, 9121, 9123) are not recognized until the next PLC scan.
− After switch-on, Bit 1 (axis over reference point) is erased.
− It is possible to position the axis even without first crossing over the reference mark.
Call:
This module starts a positioning movement in a given direction that continues until a reference point
has been traversed or the positioning movement has been canceled with the module 9121. Because
of the possible problems finding a target position during referencing (direction reversal, etc.) it is
necessary to stop when the reference point has been found.
Constraints:
− The entered axis must have been activated through MP10 and declared as auxiliary axis through
MP60.
− The values for rapid traverse, analog voltage for rapid traverse, acceleration etc. must be
correctly set in the machine parameters.
− There is no monitoring to prevent violation of the limit switch limits!
− The axis must be stationary. Any movement must first be canceled with module 9121.
− Feed rate override is not accounted for.
− The condition "reference mark not yet traversed" is set for the axis.
− An already existing reference point in this axis is erased, but not the position value of the axis.
This is not re-initialized until the reference point has be traversed.
− If the modules 9120, 9121 and 9122 are called repeatedly for the same axis during a PLC scan,
the last command is executed.
− If in this axis the "positioning error" status is set, it is erased.
− The positioning movement is immediately canceled when the reference point is reached. Due to
the braking path of the axis, however, it stops somewhat behind the reference point in the
direction of traverse.
Call:
PS B/W/D/K<Axis> (0.to.3 for X/Y/Z/4)
PS B/W/D/K<Feed rate> (mm/min)
PS B/W/D/K<Flag register> Bit 0 = 1: negative traverse direction
= 0: positive traverse direction
CM9123
PL B/W/D <Error code>
0: Positioning was started
1: The transferred axis does not exist
2: The axis is not declared as an auxiliary axis
3: The axis was already positioned
An override value can be entered to influence the traversing speed of a PLC axis.
Constraints:
− The entered axis must have been activated through MP10 and declared as auxiliary axis through
MP60.
− The override value can lie between 0% and 100.00% (resolution 0.01%) and must be transferred
as an integer (0 ... 10 000).
− When movement starts, the last transferred override value is considered.
− After a reset or after an interruption of the PLC program the override value in each PLC axis is
set to 100.00%.
− It is also possible to call the module while a PLC axis is moving.
− The module can be called in the same PLC scan in addition to a module from the group
(9120/9121/9123). It does not become effective, however, until the previously called module is
finished.
Possible errors:
- The transferred axis does not exist.
- The transferred axis was not declared through MP10 and MP60 to be an auxiliary axis.
- The transferred override value is incorrect.
Call:
PS B/W/D/K <Command code>
PS B/W/D/K <Address the parameter block in the B/W/D range>
CM 9150
PL B/W/D <Error code>
However there are many functions that can be programmed much more simply with PLC words
with the TNC 360. PLC marker M2719 must be set to activate the strobes for word processing.
M2719 = 1 M2719 = 0
Meaning Marker Data Marker Data
Start PLC Pos. X 2704 D528 2452 M2560 to M2564
Start PLC Pos. Y 2705 D532 2453 M2565 to M2569
Start PLC Pos. Z 2706 D536 2454 M2570 to M2574
Start PLC Pos. IV 2707 D540 2455 M2575 to M2579
Read out strobe for 2713 D528 2809 M2560 to M2576
values in Q
parameter (Q100
to Q107)
Read out strobe – – 2599 M2560 to M2567
tool number M2112 to M2119
Read in strobe tool – – 2598 M2560 to M2567
number M2572 to M2579
Strobe datum 2716 D528 to D540 2819 MP4210.32 to
correction MP4210.46
Spindle orientation 2712 D592 2527 M2585 to M2589
HEIDENHAIN recommend programming the PLC functions over the word range only. This makes
the PLC program easy to read and a lot shorter.
When these PLC programs are downloaded to the TNC 360 the following command codes are
automatically modified:
U → A
UN → AN
E → I
A → O
Z → C
5.3 Incompatibility
It has not been possible to maintain compatibility in all areas of the PLC programs. This is because
the TNC 355 differs considerably from the TNC 360 both in memory organization and ergonomics.
These macro programs are no longer available in the TNC 360/TNC 335. The following PLC
subroutines can be used in place of the macro programs.
1 Introduction 8-3
1.1 Principles of data transfer 8-4
1.1.1 Serial/parallel 8-4
1.1.2 Asynchronous data format 8-5
1.1.3 Checking data 8-7
1.1.4 Data transfer rate 8-8
1.2 Handshaking 8-9
1.2.1 Hardware handshaking 8-9
1.2.2 Software handshaking 8-9
A data interface makes is possible for the CPU and the peripherals to communicate.
Communication requires facilities for transferring data to the peripherals and of course, physical
connection via a transmission line. Peripheral device control and communication, via the interface, is
generally the responsibility of the computer system. The computer system therefore has to meet
certain requirements.
The interfaces, which primarily consist of the physical links between the computer system and the
peripherals, need appropriate software in order to control the transfer of information between the
individual units. The relationship between hardware and software, which fully defines an interface, is
illustrated by the following diagram:
,QWHUIDFH
The "hardware" in the diagram covers all the physical components, such as circuit construction, pin
layout, electrical characteristics, etc. The "software" includes, for example, the drivers for the output
modules and is associated with both the operating software of the computer system and the
peripherals.
Due to the wide variety of computers, controllers and peripherals, standard interfaces have been
introduced, which, in an ideal situation, enable extremely varied devices to be connected to each
other.
Such standards include, for example, the RS-232-C/V.24 interface, which is described in detail later.
1.1.1 Serial/parallel
Data can be transmitted in either serial or parallel format.
Basically, data is coded in the computer system, e.g. as bytes (8 bits) and supplied to the interface in
parallel.
In the case of serial data transmission, the parallel information from the computer system has to be
converted into a serial data-flow by using an USART (Universal Synchronous/Asynchronous
Receiver/Transmitter).
The receiver accepts the serial data-flow and converts it back again into parallel information.
Sender Empfänger
Transmitter Receiver
Speicher Schnittstellen-Puffer Schnittstellen-Puffer Speicher
Memory Interface buffer Interface buffer Memory
0 MSB 0 0 MSB 0
1 1 1 1
1 1 1 1
0 0 0 0
1 1 1 1
0 0 0 0
1 1 1 1
1 LSB 1 1 LSB 1
0 1 1 0 1 0 1 1
Übertragungsstrecke
Transmission path
A parallel interface, on the other hand, does not need a USART: just a line driver. Typically, the
connection between the computer system and a peripheral consists of a 36-way ribbon cable. Its
maximum length is generally about 3 meters.
0 MSB 0 0 0 MSB 0
1 1 1 1 1
1 1 1 1 1
0 0 0 0 0
1 1 1 1 1
0 0 0 0 0
1 1 1 1 1
1 LSB 1 1 1 LSB 1
Übertragungsstrecke
Transmission path
One obvious advantage of serial data transmission becomes apparent when long distances have to
be covered. With parallel transmission, the cost of the cable increases with every additional bit
which has to be transmitted. In addition, the effect of interference on adjacent wires from sharp
signal edges and electrical coupling is far greater over long lines than it is with serial transmission
which is relatively slower and uses fewer wires.
The comparatively slow speed of serial data transmission is, at the same time, its greatest
drawback. Since the individual bits are sent along the line one after the other and each transfer takes
a specified time, it takes far longer to send a binary word to the receiver than it would if conveyed by
parallel transmission. As it happens, most peripheral devices work fairly slowly and cannot in fact
cope with data transmitted at high speed. Serial data transmission is generally adequate for devices
such as external memories or mechanical printers, especially as such devices have a large internal
buffer for incoming characters.
One of the most common codes is the ASCII code (American Standard Code for Information
Interchange) which codes all characters with seven bits.
In all, it is possible to code 27 = 128 characters. According to the ASCII code, the control character
"Line Feed" or <LF> is coded with the following combination of bits:
0 0 0 1 0 1 0 = 10 dec = 0A hex
MSB LSB
i.e. when the letter "z" is transmitted via a serial interface, the appropriate bits are sent one after the
other. The ASCII code is shown in full in the Appendix.
Proper data transmission requires the device concerned to interpret incoming data correctly and, in
particular, to determine the start of a transmission. For this purpose, there is a synchronization
process which ensures that the receiver detects the first bit of a character correctly. With an
asynchronous data format, a start bit is sent before each data word and the word is then ended by
one or two stop bits. One feature of this data format is that, starting from a quiescent state,
transmission of a data word can begin at any time.
A quiescent state exists before switch-on and is reverted to after each transmission. Before a data
bit can be transmitted this has to be communicated to the receiver. Otherwise, if the first bit of the
data word has the same value as the quiescent state, the receiver will not notice any difference
from the quiescent state.
For the duration of a single bit, the transmitter emits a logic value which clearly differs from the
quiescent state and which gives the receiver an opportunity to prepare its polling logic to read in the
data bit. After the start bit has been sent, the data word is transmitted, bit by bit, starting with the
LSB (Least Significant Bit). After the MSB (Most Significant Bit) of the data word, a so-called "parity
bit" is inserted (see Section 1.1.3 "Checking data").
The parity bit is followed by one or two stop bits. These final stop bits ensure that the receiver has
enough time to recognize the transmitter again before the start of the next character.
Synchronization is repeated before each character.
The synchronization is repeated before every word and is valid for one character frame.
Character frame
Data bits
The parity bit can take three different forms; the same form of parity must be set at both interfaces.
– No parity check
Error detection is dispensed with.
– Even parity
The transmitter counts bits with a value of 1. If the number is odd, the parity bit is set to 1,
otherwise it is cleared to 0. The sum of the set data bits and the parity bit is therefore always even.
Upon receiving a word, the receiver counts all of the set bits, including the parity bit. If this count
yields an odd number, there is a transmission error and the data word must be repeated, or an error
message will be displayed.
– Odd parity
In this case, the parity bit is so chosen by the transmitter that the total number of all the set bits is
odd. In this case, an error will be detected if the receiver observes an even number of set bits in its
evaluation.
Example:
Parity bit
1 Even parity
Letter: "z" 1111010
0 Odd parity
[ Bits]
1 baud = 1
The time taken to transmit one bit (tB) can be calculated from the baud rate:
"1"
"0"
t
tB
1
tB =
bits
Baud rate[ ]
s
For example, a baud rate of 19,200 baud will have a bit duration of tB = 52.083 µs.
The number of characters transmitted per second can be calculated from the baud rate and the
transmission format:
bits
Baud rate[ ]
s
Characters per second =
Number of bits per character
Example:
With a transmission format of seven data bits, one start bit, two stop bits and a data transfer rate of
exactly 300 baud:
300 Baud
= 30 characters per second
10 bits
will be transmitted.
Either hardware or software handshaking can be chosen for communication between two units.
For example, when a computer character is to be transmitted, the CTS signal line (see Section 2.2
"RS-232-C/V.24 interface") is checked to see whether it is active (ON). If it is, the character is
transmitted. Otherwise the computer will delay transmission until the CTS line is switched to active.
Hardware handshaking requires, as a minimum, two data lines - TxD and RxD, the RTS control line
and the CTS signal line and a ground connection.
Apart from the data lines (TxD, RxD), and ground, no other lines are needed for software
handshaking.
2.1 General
The TNC 360 has a data interface, the RS-232-C/V.24. The HEIDENHAIN FE 401 floppy disk unit, ME
101 magnetic tape unit and external devices with appropriate data interfaces (computers, printers,
readers, punches) can be connected via the RS-232-C/V.24 interface.
The data format and control characters concerned are freely configurable within the framework of
this protocol.
The RS-232-C interface has been adopted with slight modifications and has been introduced into
Europe as the V.24 interface. The relevant German standard is DIN 66020.
2.2.1 Hardware
The physical connection between two RS-232-C/V.24 interfaces is an asymmetrical line, i.e. the
common ground connection between transmitter and receiver is used as a return wire.
Physical connections:
Sender Empfänger
Transmitter Receiver
TxD RxD
RxD TxD
Übertragungsstrecke
Transmission path
Data lines:
The data signals are defined as being logic "1" (MARK) over the range -3V to -15V and as logic "0"
(SPACE) over the range +3V to +15V.
For all of the signals, the voltage range from -3V to +3V is not defined as a logic level and can
therefore not be evaluated.
Data lines:
DCD (Data Carrier Detect): Received signal level. The DCD signal indicates
to the transmitter that the information received
at the receiver lies within the defined level.
DTR (Data Terminal Ready): This signal shows that the TNC is ready for service
(e.g. receiving buffer full => DTR = Low).
DSR (Data Set Ready): Peripheral ready for service.
Chassis GND
Peripheral TNC
V.24-Adapter-Block
LE
RS-232-C Adapter block
• • •ws/br •
Chassis GND 1 1 • 1 1 WH/BN •
ge
•ws/br
WH/BN 1 1 GND Chassis
TXD 2 2 2 2 GN 2 2 RXD
gn YL
RXD 3 3 3 3 3 3 TXD
rs GY
RTS 4 4 4 4 4 4 CTS
gr PK
CTS 5 5 5 5 5 5 RTS
br BL
DSR 6 6 6 6 6 6 DTR
rt RD
Signal GND 7 7 7 7 7 7 GND Signal
8 8 8 8 8 8
9 9 9 9 9 9
10 10 10 10 10 10
11 11 11 11 11 11
12 12 12 12 12 12
13 13 13 13 13 13
14 14 14 14 14 14
15 15 15 15 15 15
16 16 16 16 16 16
17 17 17 17 17 17
18 18 18 18 18 18
19 19 19 19 19 19
bl BN
DTR 20 20 20 20 20 20 DSR
Note: The LE and adapter block are connected with crossed lines.
Pin Allocation
1 Do not use
2 RxD
3 TxD
4 DTR
5 GND
6 DSR
7 RTS
8 CTS
9 Do not use
File Identification
HEIDENHAIN-dialog NC program H
ISO NC program D
Machine parameters M
Correction table S
PLC program P
After the appropriate key numbers for the PLC, the machine parameters and the correction table
have been entered, these files can be written-to or read-from via the data interfaces.
Current values of Q parameters, PLC error messages and dialogs can also be outputted via the two
interfaces (NC program: FN 15: PRINT).
The magnetic tape unit is only suitable as an external data carrier to a limited extent, because only
one file can be stored per cassette side. However, this file can contain several programs.
Using the floppy disk unit, up to 256 programs (approximately 25,000 program blocks) can be
stored. This represents a storage capacity of approximately 790 kilobytes.
When transmitting and receiving a file the appropriate code file is outputted and read in again
complete with a Block Check Character (BCC).
If the file is stored in an external computer using HEIDENHAIN's TNC.EXE data transfer software, a
new file extension is generated. This extension consists of the code and the letters NC.
Example:
If a ISO program is stored, it is given the file extension *.DNC.
The setting selected at the external devices must of course match the TNC. On printers, this is done
by setting the DIP-switches or adjusting the transmission parameters.
After the program has started, executed blocks are erased and further blocks are continuously called
from the external memory.
If the program blocks are read into the TNC faster than they can be executed, the entire NC memory
is initially fully loaded. If it is full, transfer is suspended until a storage space of one NC block is
vacated by execution. Only then is transfer resumed, until once again the memory is filled.
For DNC operation the data transfer protocol must be set with Block Check Character BCC (data
checking).
The simplest form of data exchange is the transfer of files (e.g. NC programs) from one TNC to
another. To do this, the same transmission format (ME mode) must be set at both control units and
transfer started. It must be ensured that the receiving control unit is the first to start.
For the application "Positioning module", i.e. further NC axes are required, the positioning values
have to be transmitted from the master logic unit to the slave logic unit. On this basis, data can be
transferred to another TNC via the data interface, using PLC modules at the PLC level (see Section 5
"Data transfer by PLC").
– If a file which is read in is already stored in the TNC, is displays the message
"ERASE=ENT / OVERREAD=NOENT".
In this case the TNC aborts transmission with the appropriate handshake and does not continue
transfer until after acknowledgment.
In the event of an attempt to erase write-protected files, the error message "PROTECTED PGM" is
displayed and the dialog "OVERREAD=ENT/END=NOENT". In this case, either the next file can be
read in or the transfer can be aborted.
– If a file has been read out and the data transfer menu has been terminated with the END key,
the TNC outputs characters <ETX> and <EOT> (or ASCII characters according to setting in
MP5010 in operating modes EXT).
– If a transmission is terminated with the END-key, the error message "PROGRAM INCOMPLETE" is
issued.
– Software handshake - Stopping transfer by sending character <DC3> (XOFF), continuing transfer
by sending character <DC1> (XON).
– Hardware handshake - By putting appropriate voltage level on the RTS and CTS control and signal
lines of the RS-232-C/V.24 interface.
<NUL><NUL><NUL><NUL><NUL><NUL><NUL>.. 50 times
0 BEGIN PGM 1 MM<CR><LF> 1st program block
1 TOOL DEF 1 L+0 R+3<CR><LF> 2nd program block
.
.
.
26 END PGM 1 MM <CR><LF> Program end
<ETX><EOT> Close data transfer menu
.
.
.
12 Z+Z FMAX <CR> <LF>
Receiving buffer full
<DC3>
<DC1>
In the freely configurable operating modes (EXT), the following control characters - <SOH>,
<ETB>, <STX>, <ACK>, <NAK>, <ETX>, <EOT> - can be defined as arbitrary ASCII characters
(see Section "Freely configurable interfaces").
<SOH> (Start of Header): This character indicates the start of the header.
The header contains 'H' - the code for the program (see Section "Saving/reading files"), 'Name' - the
program name and 'M' - the transmission mode(E=input/A=output).
This header ends with character <ETB>, ending a data transfer block.
In addition to the parity check of the individual characters (see Section "Checking data"), a parity
check is carried out on a complete transmitted block. The BCC always supplements the individual
bits of the transmitted characters of a data transfer block to give even parity.
In this example, the HEIDENHAIN dialog (code 'H') has been used to write program '15' which is
read in via the data interface ('E'). A parity bit is also formed for the BCC (with even parity, the parity
bit of the BCC in this example is given a value '1').
The character <DC1> is sent after the BCC. This character (XON) is needed for a few devices,
explicitly to demand a reply from them in order to start transfer again.
At the end of each block, a check is conducted to see whether the block has been correctly
transferred. To do this, the receiver forms a BCC from the received block and compares it with the
received BCC. If the received and calculated BCCs are identical, the receiver sends character
<ACK> (= positive ACKnowledgment), i.e. the data block has been transferred without error.
If, however, this header is acknowledged with <ACK>, the first data block can be transmitted:
<STX>0 BEGIN PGM 1 MM <ETB> BCC <DC1>.
The start of a data block is always indicated by control character <STX>. The other control
characters in this block are identical to the control characters of the header.
If the block is acknowledged with <ACK>, the next program block is sent. In the event of a <NAK>,
the same block must be repeated, and so on...
If the last program block has been sent successfully (acknowledged with <ACK>), transmission
ends with characters <ETX> (End of Text) and <EOT> (End of Transmission).
A pallet file with the name "8455" is to be sent to a peripheral unit (e.g. FE 401).
<ACK>
.
.
. <STX> "1st line" <ETB> BCC <DC1>
<ACK> .
.
.
.
.
.
<STX> "10th line" <ETB> BCC <DC1>
<NAK>
<ACK>
<ACK> .
.
.
.
. .
. .
. <STX> "last line" <ETB> BCC <DC1>
<ACK>
<ETX> <EOT>
It is also possible, however, to conduct the software handshake with control characters <DC1> and
<DC3>. If hardware handshake (EXT) has been selected, it is identical to standard data transfer and
to data transfer with a BCC (see Section "Freely configurable interfaces").
In addition to the three freely configurable operating modes EXT, there are two fixed modes (ME
and FE). The FE mode must be set if the HEIDENHAIN floppy disk unit or an external computer
using the TNC.EXE transmission software is connected. In this mode, the transmission protocol with
Block Check Character is rigidly defined.
The ME operating mode matches the HEIDENHAIN ME 101/ME 102 magnetic tape unit and must
be selected if this is to be connected.
The character <EOT> is never sent because this character cannot be processed by the magnetic
tape unit.
The data format and the type of handshake are set in the MP 5020.
Data bits
Bit 0 can be set to determine whether transmission is to be with 7 or 8 data bits. Transmission with
7 bits is normally used, but 8 bits are needed, especially for printer interfacing.
BCC
If calculation of the BCC produces a number less than $20 (i.e. a control character) then a "Space"
character ($20) is sent in addition immediately before <ETB>. The BCC will consequently always be
greater than $20 and cannot therefore be recognized as a control character.
TNC EXT
+ +
RTS CTS
– –
Receiving
+ buffer full +
CTS RTS
– –
Data Data Data
+ +
TxD RxD
– –
Start
+ +
RxD TxD
– –
TNC EXT
Receiving
+ buffer full +
RTS CTS
– –
+ +
CTS RTS
– –
+ +
TxD RxD
– –
+ +
RxD TxD
– –
Start
The DTR and DSR signals from the TNC indicate the operational status of the TNC and peripheral
(these cannot be set via the machine parameters).
Software handshaking
Bit 3 determines whether the TNC stops transfer from an external device with control character
<DC3>. Transfer is resumed with character <DC1>.
If transfer is stopped with character <DC3>, up to 12 characters can still be stored. The remaining
incoming characters are lost. Software handshake is normally recommended when interfaces are
connected to an external device.
Peripheriegerät V.24-Adapter-Block LE
Peripheral unit RS-232-C Adapter block
• • • • •ws/br •
GND 1 1 • • 1 1 • 1 1 WH/BN • •ws/br
WH/BN 1 1 GND Chassis
ge GN
TXD 2 2 2 2 2 2 2 2 RXD
gn Yl
RXD 3 3 3 3 3 3 3 3 TXD
rs GY
RTS 4 4 4 4 4 4 4 4 CTS
gr PK
CTS 5 5 5 5 5 5 5 5 RTS
br BL
DSR 6 6 6 6 6 6 6 6 DTR
rt RD
GND 7 7 7 7 7 7 7 7 GND Signal ground
8 8 • 8 8 8 8 8 8
9 9 9 9 9 9 9 9
10 10 10 10 10 10 10 10
11 11 11 11 11 11 11 11
12 12 12 12 12 12 12 12
13 13 13 13 13 13 13 13
14 14 14 14 14 14 14 14
15 15 15 15 15 15 15 15
16 16 16 16 16 16 16 16
17 17 17 17 17 17 17 17
18 18 18 18 18 18 18 18
19 19 19 19 19 19 19 19
bl BN
DTR 20 20 20 20 20 20 20 20 DSR
If the TNC is transmitting data, it reacts both to hardware and software handshakes, regardless of
the setting in the MP5020.
If the TNC is receiving data, and no transmission stop is set in the MP5020, the TNC stops the
peripheral unit with the software handshake.
If transmission stop by both RTS and by DC3 is active, the TNC stops transfer with the hardware
handshake.
Character parity
Bits 4 and 5 determine the type of parity check (see Section "Checking data").
Stop bits
Bits 6 and 7 determine the number of stop bits sent at the end of a character.
Input value Decimal code (1st control character) + 256 * Decimal code (2nd control character)
Example: The following ASCII characters are to be transmitted for start and end of text:
End of text: ? = 63 dec
Start of text: ! = 33 dec
Input:
MP5010.0 = 63 + 256 * 33 = 8511
When selecting ASCII characters, it must be ensured that the control characters are not arbitrarily
mixed and that no figures or letters which occur in the transferred text are used.
For the file type, when transferring with Block Check Characters (see Section 2.3.1 "Saving/reading
files"), an ASCII character must be entered for the file which is being output or input. With an input
value of zero, the TNC automatically enters the correct type of file in the file header.
MP5010.1 1st ASCII character for data file during data input
2nd ASCII character for input identification (E)
Input range: 0 to 32 382
MP5010.2 1st ASCII character for file type during data output
2nd ASCII character for output identification (A)
Input range: 0 to 32 382
– <CR><LF> or <LF> must be programmed at the start of the program and after each program
block
– After the end-of-program block <CR> <LF> and, in addition, the end-of-text control character must
be programmed.
– Blank characters between the individual words can be omitted in NC programs (HEIDENHAIN
dialog).
– When reading in DIN blocks, '*' is not needed at the end of the block
– Comments are separated from the NC block by a semicolon ';'
– Comments are stored only in PLC programs
– Comments located in front of the program are not stored
– Block numbers do not need to be programmed - they are generated by the TNC (only for dialog
programming)
Consider the example of interfacing EXT with a printer using a serial interface (Example: NEC
P7PLUS).
The following setting is selected at the printer itself (see the Operating Manual of the printer
concerned):
– Serial interface
– Data bits
– Even character parity
– XON/XOFF protocol (software handshake)
– 9600 baud
In the TNC, the EXT operating mode must still be assigned to the RS-232 interface and the baud rate
set to 9600 (see the TNC 360 User's Manual).
If, however, ME mode is set instead of EXT, attention must be paid to the following:
All the programs in a file which end with the end-of-text character <ETX> are stored in the magnetic
tape unit ME. The ME transmits this file with all the programs to the control unit. The TNC then
selects the appropriate program and stores it.
A further important difference between EXT mode in the standard protocol and ME mode is that the
<EOT> character is never sent in ME mode because the magnetic tape unit is incapable of
processing this character.
In this protocol, if an error is to be signaled to the TNC, the following sequence of instructions must
be sent:
Listed below are the transmission protocols for the various alternatives for data output and input.
If the external directory is requested, the TNC sends control character <DC1>.
If the request is immediately interrupted with the END key, the TNC sends characters <ETX><EOT>
and no directory is read in.
If the request is not interrupted, the peripheral unit sends all of the external programs in order. Their
names are then shown in the TNC.
<ETX>
<EOT>
<DC3>
<DC1>
.
.
.
Last line of file <CR> <LF>
When the entire file has been transferred, the TNC sends character <EOT>.
<EOT>
In this transfer method, the TNC can stop transmission with <DC3> and continue it with <DC1>.
If the file name in the first line of the file and the name indicated in the TNC are not identical, the
TNC reads each block in and searches for the file name concerned.
If the END PGM-block has been read in, and the selected name is not known, the TNC remains
static without an error message, and transfer must be terminated with the END key.
<DC1>
<NUL> <NUL>
1st line PGM100 <CR> <LF>
. .
. .
. .
Last line PGM 100 <CR> <LF> <ETX>
<EOT>
If, in this case, the last PGM-block ends without the <ETX> character, transfer is terminated
without an error message but the data is not stored. This means that a program on the data
medium with incorrect program name will be overlooked.
<NUL>
Last line of file 1 <CR .
.
1st line of file 1 <CR> <LF .
<DC1>
<NUL>
1st line of file 2 <CR .
.
.
Last line of file 2 <CR
<DC1>
<NUL>
1st line of last file <CR
.
.
Last line of last file <CR> <L .
<EOT>
If several programs are gathered together in a file which ends with <ETX> then these programs are
read in without being requested by <DC1>.
Data read-in does not stop until a program has ended with <ETX>.
<NUL>
1st line of file 1 <CR
<DC3> Polling:
<DC1> Read in
Yes / No
.
.
. <DC1>
<NUL>
.
. .
.
.
.
Last line of last file <CR> <L
<EOT>
4.1 General
HEIDENHAIN TNCs, as well as allowing data transfer with the standard data transmission protocol,
also allow data transfer with a Block Check Character (BCC).
- FE mode
- EXT mode (choice)
In the following, the transmission protocols are listed for the various file input and output
possibilities. FE mode is set.
If an error occurs at a peripheral device, the following block must be sent to the TNC.
<SOH>"Error text"<ETB>BCC
<ACK> <EOT>
The received error message is displayed in the TNC, but can be acknowledged and erased with the
CE key.
<ACK>
<STX> Name 1 <ETB> BCC <DC1>
<ACK>
<SOH> <N> <E> <ETB> BCC <DC
<ACK>
<STX> Name 2 <ETB> BCC <DC1>
.
. .
. .
.
<ACK>
<SOH> <N> <E> <ETB> BCC <DC
<ETX>
<EOT>
<ACK>
<ETX> <EOT>
<ACK>
<STX> 1st line of file <ETB> BCC <DC1>
<ACK>
.
.
. .
.
.
<ACK>
<ETX>
<EOT>
<ACK>
<STX> 1st line PGM1 <ETB> BCC <DC1>
. <ACK>
.
.
.
.
<STX> Last line PGM1 <ETB> BCC <DC1> .
<ACK>
<SOH> <H> <E> <ETB> BCC <DC1>
<ACK>
.
. .
. .
.
<STX> Last line of last file <ETB>
BCC <DC1>
<ACK>
<SOH> <H> <E> <ETB> BCC <DC1>
<ETX>
<EOT>
If the control is set to ISO programming, the central tool file (if activated via machine parameters)
will also be read in.
If a positive acknowledgment is given, then the program is read in. Otherwise a header is
immediately sent again.
<ACK>
<STX> 1st line PGM1 <ETB> BCC <DC1>
<ACK>
<ACK>
<ACK> Yes
.
<STX> 4th line PGM1 <ETB> BCC <DC1> .
. .
.
.
<STX> 3rd line PGM2 <ETB> BCC <DC1>
"Read in program Yes/No"
<ACK>
<STX> 1st line PGM3 <ETB> BCC <DC1>
.
. <ACK>
.
.
<STX> Last line of last PGM <ETB> .
BCC <DC1> .
<ACK>
<SOH> <H> <E> <ETB> BCC <DC1>
<ACK> <ETX>
<EOT>
The number of blocks transmitted before the TNC stops to await acknowledgment will depend on
the transfer rate set. At a low data transfer rate, the TNC will stop after the first block.
The appropriate control characters and the data format for EXT are set in the machine parameters,
which are described in detail in Section "Freely configurable interfaces". In addition, the baud rate for
transfer can be selected via MP5040.
WRONG MODE
TRANSFERRED DATA INCORRECT
WRONG PROGRAM DATA
ME: END OF TAPE
DATA CARRIER FULL
DATA CARRIER EMPTY
DATA CARRIER WRITE-PROTECTED
The error message TRANSFERRED DATA INCORRECT N is displayed if, in the case of data transfer
with Block Check Character (BCC), a Not acknowledged (control character <NAK>) has been
received three times.
The remaining error codes (A to H) in this error message indicate that an error has been detected in
the received module. The error can have the following causes, with no assignment to the code
letters:
Error code K or L is only displayed for transfer with standard data transmission protocol:
K: When an error was transmitted to TNC, character <1> not sent after the <ESC> character.
L: The wrong error number was received after the error sequence <ESC><1>. (Error number
range: 0 to 7).
If a magnetic tape unit is connected, the following error codes could be sent to the TNC and an
appropriate error message outputted:
A detailed description of these peripherals can be found in the appropriate operating manual.
PROGRAM INCOMPLETE
NC program does not contain an end block.
PROTECTED FILE
File which is protected with read-only or hidden attribute is likely to be overwritten.
A precise description of this software is given in the User's Manual of the transmission software.
1 Introduction 9-2
1.1 Creating OEM cycles 9-3
1.2 Dialogues for OEM cycles 9-6
1.3 Output in binary code 9-6
By using these cycles in a main program created in the HEIDENHAIN dialogue or in accordance with
ISO, repetitive machining tasks or machine-specific functions can be executed with a single call. The
execution of OEM cycles can be influenced by parameter transfer (see also TNC User's Manual).
OEM cycles can be divided into "DEF-active" and "CALL-active" OEM cycles. The DEF-active cycles
are effective immediately upon definition, without CYCL CALL, M89 or M99. The CALL-active cycles
must be called with a CYCL CALL, M89 or M99.
Up to 32 different OEM cycles can be produced, tested and stored in the NC program memory.
In order not to tie up the NC program memory (RAM) with the OEM cycles and their dialogues, it is
possible to store this data in the PLC EPROM.
– Tool call.
– M functions apart from M02, M30, M06, without program-run stop.
– Nesting OEM cycles:
Other OEM cycles or standard cycles can be called in the OEM cycles (nesting depth four levels).
– Calling OEM cycles from a main programs that is transmitted "blockwise" and executed
simultaneously. The OEM cycles must be stored in the control unit memory (EPROM or RAM).
– Calling HEIDENHAIN dialogue or ISO programs in OEM cycles. The called programs are not
displayed.
After creating a program with the above number and pressing LBL SET and then ENT, the control
asks whether you wish to program a DEF-active or CALL-active cycle.
DEF-active cycle
If the OEM cycles are to be active in the NC program immediately after the definition, a "DEF-active"
OEM-cycle is programmed with the ENT key, e.g. cycle for coordinate transformation.
CALL-active cycle
If the OEM cycles are to be activated later in the NC program via CYCL-CALL, M98 or M99, a CALL-
active OEM-cycle is programmed with the NO ENT key, e.g. for a machining cycle.
Up to 15 dialogue numbers can then be input. The first dialogue number is always assigned to the
designation of the OEM cycles. The remaining numbers are assigned to the Q parameters in
ascending order.
If fewer than 15 dialogues are to be programmed, the dialogue block can end with END. If more
than 15 parameters are to be entered (maximum 32), the DLG DEF block or the DLG CAL block
must be entered repeatedly in the OEM cycle. Only five entries are evaluated in the third DLG block
The parameter assignment can be shifted via MP7250 so that DEF-active and CALL-active cycles do
not address the same parameters Q1 to Q14.
Example cycle:
0 BEGIN PGM 99999968 MM
1 DLG-DEF 0/2/8/99
.
.
.
15 END PGM 99999968 MM
Using machine parameter MP7240, it is possible to inhibit program input for [Program number] =
[OEM cycles number].
If MP7240 has a value 0, no program with the program number of an OEM-cycle which is held in the
EPROM can be input or read into the NC program memory.
If MP7240 has a value 1, the program-number range of the OEM cycles can also be used when the
OEM cycles are held in the PLC EPROM. If a OEM cycles is generated in the NC program memory
and if at the same time there is a OEM cycles with the same number in the PLC EPROM, then the
OEM cycles in the NC program memory will be executed at a cycle call.
The input values of the OEM cycles are assigned in ascending order of magnitude to the Q
parameters Q1 to Q14. The input values for the cycle are assigned to Q parameters Q[1 + MP7250]
to Q[14 + MP7250].
MP7251 determines whether the values of the Q parameters which are changed in the OEM cycles
by calculation or assignment are globally transferred to the calling program (e.g. in the case of
"nesting" of OEM cycles). With machine parameter MP7251, the range of Q parameters from Q[100
- MP7251] to Q99 is defined as "global".
STOP +2 +15 +2 +5
END PGM 100 MM
OEM cycles stored in the PLC EPROM can be inhibited in the PLC program via flags M2240 to
M2271. Inhibited cycles cannot be defined in NC programs.
If programs with definitions of inhibited or non-existent OEM cycles are transferred to the control
unit, an error message "PGM 999999.. UNAVAILABLE" is generated during program call. The
program cannot be run.
The following dialogue texts for the designation of the OEM-cycle and the input parameters are files
in the standard PLC-EPROM.
0 USER CYCL
1 CYCL PARAMETER 01
2 CYCL PARAMETER 02
. .
. .
. .
99 CYCL PARAMETER 99
Instead of these standard dialogues up to 100 customized dialogues can be filed in the PLC-EPROM.
Y Input parameters:
Q1 = Number of holes
Q2 = Radius of bolt hole circle
Q3 = X coordinate of center of bolt hole circle
Q4 = Y coordinate of center of bolt hole circle
Q2 Q5 = Safety clearance for Z axis
(negative input)
0° Q6 = Hole depth in Z axis (negative input)
Q7 = Drilling feed
Q4
Q3 X
Dialogue DIALOGUE
No.
0 BOLT HOLE CIRCLE
1 NUMBER OF HOLES?
2 RADIUS?
3 X COORDINATE CC?
4 Y COORDINATE CC?
5 SAFETY CLEARANCE?
6 TOTAL HOLE DEPTH?
7 DRILLING FEED RATE?
The dialogue for cycle definition is initiated with the CYCL DEF key. The desired cycle is selected
either by skimming through the pages using the vertical arrow keys or by GOTO and input of the
cycle number (e.g. 68). The cycle is entered with the ENT key.
The individual parameters are input via the numeric keyboard and entered with ENT.
In the case of a "DEF-active" OEM-cycle, the cycle is effective immediately after definition. Once
defined, a "CALL-active" OEM-cycle can be called and hence activated either via "CYCL CALL" or
M99.
Example:
The individual parameters are input via the numeric keyboard and entered with ENT.
In the case of a "DEF-active" OEM-cycle, the cycle is effective immediately after definition. Once
defined, a "CALL-active" OEM-cycle can be called and hence activated either via G79 or M99.
Example:
% 1000 G71*
N10 G30 G17 X+0 Y+0 Z–20* Definition of blank
N20 G31 G90 X+100 Y+100 Z+0* For test/program-run graphics
N30 G99 T1 L+0 R+2* Tool definition
N40 T1 G17 S1000* Tool call
N50 G00 G40 G90 Z+2 M3* Safety clearance
N60 D68 P1+8 P2+40 P3+60 Call of cycle 68 "Bolt hole circle"
P4+50 P5–2 P6–20 P7+100*
N70 G79* Cycle active
N99999 % 1000 G71*
1.1 Introduction
A hardware version of the LE 360 – the LE 234.003 – can be used in conjunction with the
TNC 407/TNC 415 as a positioning module.
In this way the TNC 407/TNC 415 can be expanded by up to 4 auxiliary axes. PLC inputs and outputs
of the LE 234.003 can also be used.
The positioning module can be used for controlling tool changers and pallet feed as well as rotary
axes and swivel heads.
The NC software of the TNC 360 can also be run on the LE 234.003, i.e. all the functions of the TNC
360 are also possible with the positioning module.
- the connector X25 contains the RS-232-/V.24 and the RS-422/V.11 interfaces
- The measuring system input X4 (sine-wave) has been dropped
- The measuring system input X5 (square-wave) has been added
Control-loop board
X1 = Measuring system 1 (∼)
X1
X11 X2 = Measuring system 2 (∼)
X21 X24 X3 = Measuring system 3 (∼)
X5 = Measuring system 5 ( )
X2 X6 = Measuring system S ( )
24V
X12 X8 = Nominal value output 1,2,3,4,S
X25
X9 = Visual display unit (only for
X3 commissioning)
X31
X22
X8 B = Signal ground
X26
Connecting cable
LE 234.003 LE 407/415
Id.-Nr. 265 479 ..
max. 50 m
Pin layout
Appropriate circuitry must ensure that the positioning module does not function if an error occurs
during the NC check, i.e. that the voltage for the acknowledgment is mutually switched off. The
circuit illustrated below can fulfill this function. The check is started at the same time that the control
voltage is switched on.
LE 407/415
Control
voltage + –
k1
on
24 V
k3 PLC
K1
LE 234.003
+ –
k1
Control 24 V
voltage PLC
on K3
The software is connected through the PLC of the master control (TNC 407 or TNC 415). The
modules 9100, 9101, 9102, 9105 and 9106 were developed for this purpose. They make it possible
to activate the RS-422/V.11 data interface and to transmit and receive binary data.
The PLC program for the positioning module can be written either with the LE 234.003 itself (which
must be connected to the BE 212 visual display unit and the TE 355 A/B keyboard), or on a PC with
the PLC programming software from HEIDENHAIN.
Please contact your HEIDENHAIN representative if you have any questions regarding the PLC
programming software.
A
Acceleration........................................................................................................................ 4-55
Acceleration, determination................................................................................................ 4-229
Acceleration, optimizing ..................................................................................................... 4-238
Acknowledgment of S-code ............................................................................................... 4-92
Active axes ......................................................................................................................... 4-6
Actual - nominal value transfer ........................................................................................... 4-78
Actual position capture ....................................................................................................... 4-121
ADDITION (+) ................................................................................................................... 7-57
ADDITION [ ] (+[ ]) ............................................................................................................ 7-74
Address allocation .............................................................................................................. 7-14
Addressing the word memory............................................................................................ 7-14
Ambient temperature ......................................................................................................... 3-8
Analog inputs...................................................................................................................... 4-176
Analog voltage .................................................................................................................... 4-56
AND (A)............................................................................................................................. 7-44
AND [ ] (A[ ])...................................................................................................................... 7-70
AND NOT (AN).................................................................................................................. 7-46
AND NOT [ ] (AN[ ])........................................................................................................... 7-70
Angle encoders................................................................................................................... 3-19
Angular measurement ........................................................................................................ 4-7
APE..................................................................................................................................... 3-30
Arithmetic Commands........................................................................................................ 7-57
Assembly hints ................................................................................................................... 3-8
ASSIGN (=) ....................................................................................................................... 7-34
ASSIGN BYTE (B=) ........................................................................................................... 7-36
ASSIGN DOUBLEWORD (D=) ......................................................................................... 7-36
ASSIGN WORD (W=) ....................................................................................................... 7-36
Assignment of the analogue outputs ................................................................................. 4-14
Assignment of the measuring system inputs .................................................................... 4-13
Automatic cyclical offset adjustment ................................................................................. 4-64
Axes in motion.................................................................................................................... 4-77
Axes in position .................................................................................................................. 4-76
Axis designation ................................................................................................................. 4-12
Axis-direction keys, memory function for........................................................................... 4-149
Axis-enable ......................................................................................................................... 4-75
Axis-error compensation .................................................................................................... 4-22
B
Backlash compensation...................................................................................................... 4-22
Baud ................................................................................................................................... 8-8
Baud rate ............................................................................................................................ 8-8
BCC .................................................................................................................................... 8-18
BIT RESET (BC) ............................................................................................................... 7-86
Bit Commands.................................................................................................................... 7-85
BIT SET (BS) ..................................................................................................................... 7-85
BIT TEST (BT) ................................................................................................................... 7-87
Block Check Character ....................................................................................................... 8-18
Block-number step size for ISO programs ......................................................................... 4-133
Buffer battery ..................................................................................................................... 3-16
D
Data bits ............................................................................................................................. 8-22
Data interface ..................................................................................................................... 3-32
Data transfer....................................................................................................................... 8-4
Data transfer by PLC .......................................................................................................... 8-42
Data transfer by the PLC .................................................................................................... 7-109
Data transfer PLC ............................................................................................................... 7-15
Data transfer rate ............................................................................................................... 8-8
Data transfer with Block Check Character (BCC) ............................................................... 8-17
Data transmission protocol................................................................................................. 8-29
Data transmission protocols............................................................................................... 8-15
Datum................................................................................................................................. 4-110
Datum correction................................................................................................................ 4-194
DBB Double Ball Bar system.............................................................................................. 4-23
E
Edge evaluation of the PLC inputs ..................................................................................... 7-21
Electrical noise immunity.................................................................................................... 3-8
EMERGENCY STOP ........................................................................................................... 4-109
EMERGENCY STOP DEFECTIVE ....................................................................................... 4-109
EMERGENCY STOP routine ............................................................................................... 4-107
EMERGENCY STOP routine, testing.................................................................................. 4-231
Encoder cables ................................................................................................................... 3-21
Encoder inputs.................................................................................................................... 3-20
Encoder monitoring ............................................................................................................ 4-9
Encoders............................................................................................................................. 3-19; 4-6
End indexed Call Module (ENDC) ..................................................................................... 7-100
End of Module, Program End (EM)................................................................................... 7-98
EPROM creation................................................................................................................. 7-21
EPROM operation............................................................................................................... 7-21
EPROM sockets ................................................................................................................. 2-9
EPROM test ....................................................................................................................... 4-136
EQUAL TO (==) ................................................................................................................ 7-63
EQUAL TO [ ] (==[ ]) ......................................................................................................... 7-78
Error messages .................................................................................................................. 4-122
EXCLUSIVE OR (XO) ........................................................................................................ 7-52
EXCLUSIVE OR [ ] (XO[ ]) ................................................................................................. 7-71
EXCLUSIVE OR NOT (XON) ............................................................................................. 7-54
EXCLUSIVE OR NOT [ ] (XON[ ]) ...................................................................................... 7-71
EXT operating mode ........................................................................................................... 8-28
External EMERGENCY STOP ............................................................................................. 4-107
External programming ........................................................................................................ 8-28
F
Feed for PLC positioning .................................................................................................... 4-33
Feed potentiometer............................................................................................................ 4-116
Feed rate display ................................................................................................................ 4-116
Feed rate enable................................................................................................................. 4-75
Feed rate for leaving the reference end-position ............................................................... 4-49
G
Gear change ....................................................................................................................... 4-86
Gear change, Acknowledgment of ..................................................................................... 4-87
Gear change, jog voltage for .............................................................................................. 4-87
Gear code ........................................................................................................................... 4-86
Gear range .......................................................................................................................... 4-82
Gear range, S-analogue voltage for .................................................................................... 4-83
Gear ranges, spindle speed for .......................................................................................... 4-83
Gear-code change signal .................................................................................................... 4-87
Graphic simulation .............................................................................................................. 4-113
Graphics display ................................................................................................................. 4-113
GREATER THAN (>) ......................................................................................................... 7-65
GREATER THAN [ ] (>[ ]) .................................................................................................. 7-78
GREATER THAN OR EQUAL TO (>=)............................................................................... 7-67
GREATER THAN OR EQUAL TOL[ ] (>=[ ])...................................................................... 7-79
Gross positioning error A.................................................................................................... 4-71
Gross positioning error B.................................................................................................... 4-72
Gross positioning error C.................................................................................................... 4-72
Gross positioning error D.................................................................................................... 4-73
Gross positioning error E .................................................................................................... 4-64
Gross positioning error A.................................................................................................... 4-70
H
Handshaking ....................................................................................................................... 8-9
Handwheel adapter HRA 110 ............................................................................................. 3-37; 4-172
Handwheel HR 130 ............................................................................................................ 3-34; 4-169
Handwheel HR 330 ............................................................................................................ 3-33; 4-169
Handwheel HR 332 ............................................................................................................ 3-35; 4-169
Handwheel input ................................................................................................................ 3-33
Handwheel keys ................................................................................................................. 4-169
Handwheel, count direction for .......................................................................................... 4-167
Handwheel, minimum subdivision factor for...................................................................... 4-167
Handwheel ......................................................................................................................... 4-166
Hardware components ....................................................................................................... 3-4
Hardware handshaking....................................................................................................... 8-9
Hardware version ............................................................................................................... 2-7
Heat generation .................................................................................................................. 3-8
Hirth coupling ..................................................................................................................... 4-183
Humidity ............................................................................................................................. 3-9
I
Incremental jog positioning ................................................................................................ 4-178
Indexed Call Module (CASE)............................................................................................. 7-100
Inhibited key ....................................................................................................................... 4-141
Integral factor ..................................................................................................................... 4-65
Integral factor, optimizing ................................................................................................... 4-242
J
Jump Commands ............................................................................................................... 7-94
Jump if Logic Accumulator = 0 (JPF) ................................................................................ 7-94
Jump if Logic Accumulator = 1 (JPT) ................................................................................. 7-94
Jump Label (LBL).............................................................................................................. 7-98
K
Key code............................................................................................................................. 4-141
Key simulation .................................................................................................................... 4-141
Kink point............................................................................................................................ 4-59
kv factor.............................................................................................................................. 4-55; 4-63
L
Lag monitoring.................................................................................................................... 4-70
Lead-screw pitch error........................................................................................................ 4-25
LESS THAN (<) ................................................................................................................... 7-64
LESS THAN [ ] (<[ ]) .......................................................................................................... 7-78
LESS THAN OR EQUAL TO (<=) ..................................................................................... 7-66
LESS THAN OR EQUAL TO [ ] (<=[ ]) .............................................................................. 7-78
Linear axis-error compensation .......................................................................................... 4-24
Linear encoders .................................................................................................................. 3-19
Linear measurement .......................................................................................................... 4-6
LOAD (L)........................................................................................................................... 7-27
LOAD BYTE (LB)............................................................................................................... 7-32
Load command................................................................................................................... 7-27
LOAD DOUBLEWORD....................................................................................................... 7-32
LOAD NOT (LN)................................................................................................................ 7-29
Load Stack (PS)................................................................................................................. 7-89
Load Stack (PSL)............................................................................................................... 7-90
Load Stack (PSW) ............................................................................................................. 7-91
LOAD TWO'S COMPLEMENT (L–) .................................................................................. 7-31
LOAD WORD (LW)........................................................................................................... 7-32
Logic Gates......................................................................................................................... 7-44
Logic unit ............................................................................................................................ 3-4
Lubrication pulse ................................................................................................................ 4-19
M
M function, acknowledgment of ........................................................................................ 4-138
M functions ........................................................................................................................ 4-118; 4-137
Machine axes ..................................................................................................................... 4-6
Machine control panel ........................................................................................................ 3-53; 4-149
Machine datum................................................................................................................... 4-50; 4-110
Machine parameters .......................................................................................................... 5-3; 5-4
Manual feed........................................................................................................................ 4-57
Meander ............................................................................................................................. 4-158
Measuring system monitoring .......................................................................................... 4-9
Measuring systems ............................................................................................................ 3-19; 4-6
Mechanical defects ............................................................................................................ 4-22
N
NC power supply ................................................................................................................ 3-14
Nominal value output.......................................................................................................... 3-23
Nominal value potential ...................................................................................................... 3-23
Nonlinear axis error compensation..................................................................................... 4-25
Normal direction ................................................................................................................. 4-156
NOT EQUAL TO [ ] (<>[ ])................................................................................................. 7-79
O
OEM cycles ........................................................................................................................ 9-3
OEM cycles, calling ............................................................................................................ 9-8
Offset adjustment .............................................................................................................. 4-64; 4-243
Offset adjustment by code number ................................................................................... 4-64
Offset adjustment with integral factor ............................................................................... 4-65
Open control loop ............................................................................................................... 4-78
Operand directory............................................................................................................... 7-14
P
Parentheses........................................................................................................................ 7-70; 7-74
Path dependent lubrication................................................................................................. 4-19
PLC – Main menu ............................................................................................................... 7-6
PLC auxiliary axes............................................................................................................... 4-36
PLC axes............................................................................................................................. 4-36
PLC Cycle time ................................................................................................................... 7-128
PLC error messages ........................................................................................................... 4-122; 7-24
PLC Functions .................................................................................................................... 7-5
PLC I/O unit ........................................................................................................................ 3-45
PLC I/O unit PL 410 ............................................................................................................ 3-49
PLC input, fast .................................................................................................................... 4-69
PLC Input/Output board...................................................................................................... 3-11
PLC Input/Output unit......................................................................................................... 3-5
PLC inputs .......................................................................................................................... 3-40
PLC Modules ...................................................................................................................... 7-103
PLC operation, select ......................................................................................................... 7-5
PLC outputs........................................................................................................................ 3-40
PLC positioning................................................................................................................... 4-33
PLC positioning module...................................................................................................... 3-2
PLC power supply .............................................................................................................. 3-15
PLC Program conversion .................................................................................................... 7-122
PLC program creation......................................................................................................... 7-12
PLC program editing........................................................................................................... 7-6
PLC program Transferring .................................................................................................. 7-10
PLC program, erase............................................................................................................ 7-8
PLC program, transfer from EPROM ................................................................................. 7-8
PLC program, translate....................................................................................................... 7-8
PLC TABLE function ........................................................................................................... 7-10
PLC text window ................................................................................................................ 4-122
PLC TRACE function........................................................................................................... 7-9
PLC utilization, processing time, memory .......................................................................... 7-8
Pocket coding ..................................................................................................................... 4-199
Pocket coding, fixed ........................................................................................................... 4-199
Pocket coding, variable....................................................................................................... 4-199
Pocket milling ..................................................................................................................... 4-129
Point-to-point and straight-cut control ................................................................................ 4-246
Polarity of the nominal value potential ............................................................................... 4-8
Polarity of the S-analogue voltage ...................................................................................... 4-81
Position approach, optimizing............................................................................................. 4-240
Position control loop ........................................................................................................... 4-52
Position display................................................................................................................... 4-114
Position display step........................................................................................................... 4-114
Position loop gain ............................................................................................................... 4-55
Position monitoring............................................................................................................. 4-70; 4-71
Q
Q parameters, overwriting ................................................................................................. 4-136
R
Radial acceleration.............................................................................................................. 4-67
RAM operation ................................................................................................................... 7-21
RAM test ............................................................................................................................ 4-136
Ramp slope for S-analogue voltage.................................................................................... 4-82
Rapid traverse..................................................................................................................... 4-55
Reference end-position ...................................................................................................... 4-39; 4-50
Reference marks ................................................................................................................ 4-37
reference marks, passing over ........................................................................................... 4-39
Reference point .................................................................................................................. 4-110
RELAY EXT. DC VOLTAGE MISSING................................................................................. 4-109
REMAINDER (MOD) ........................................................................................................ 7-61
REMAINDER [ ] (MOD[ ]) ................................................................................................. 7-75
RESET (R) ......................................................................................................................... 7-40
RESET NOT (RN) .............................................................................................................. 7-42
Residual voltage ................................................................................................................. 4-71
Rigid tapping....................................................................................................................... 4-104
Rigid tapping, Acceleration ramp for .................................................................................. 4-105
Rotary axes......................................................................................................................... 4-115
Rotary axis, display mode for ............................................................................................. 4-115
Rotational axis .................................................................................................................... 4-12
RS-232-C/V.24 .................................................................................................................... 3-32
Run duration timers ............................................................................................................ 4-118
Run duration, display of ...................................................................................................... 4-118
Run-in behavior................................................................................................................... 4-62
S
S code................................................................................................................................. 4-92
Sag...................................................................................................................................... 4-25
Scale datum point............................................................................................................... 4-110
Scaling factor ...................................................................................................................... 4-131
Scanning range ................................................................................................................... 4-158
S-code table........................................................................................................................ 4-93
Secondary linear axis .......................................................................................................... 4-13
Sequence for traversing reference marks .......................................................................... 4-49
Servo accuracy ................................................................................................................... 4-57
T
Tapping ............................................................................................................................... 4-100
U
Unconditional jump (JP).................................................................................................... 7-94
UNEQUAL (<>)................................................................................................................. 7-68
User parameters................................................................................................................. 4-133; 5-2
User parameters, dialogs for ............................................................................................. 4-134
V
VDU display ........................................................................................................................ 4-14
Visual display unit ............................................................................................................... 3-5; 3-26
VM 101A ............................................................................................................................. 4-25
voltage step ........................................................................................................................ 4-58
W
Weight ................................................................................................................................ 2-5
Wrong spindle speed.......................................................................................................... 4-88